728x90
반응형

webhacking.kr 4

Webhacking.kr [old-14]

Webhacking.kr old-14 입니다. 문제 메인 페이지 입니다. ㅎㅇㅎㅇ를 입력하고 check를 눌러보았습니다. Wrong 출력. 소스코드부터 확인해 봅시다. 인증과정 코드를 발견했습니다. document.URL은 현재 경로(주소)를 반환하는 함수인데요. indexOf 함수는 인자로 지정한 문자열이 몇번째 위치부터 시작하는지 반환합니다. 0번째부터 시작하고요. 그리고 그 값에 30을 곱하고 있네요. 이 값은 ul에 저장됩니다. 아래쪽 조건문에서는 우리가 입력한 값과 ul의 값이 일치하면 어디론가 이동시켜주고 있고, 일치하지 않으면 Wrong을 출력합니다. 우리가 직접 ul의 값을 계산해서, 입력해 봅시다. 현재 경로입니다. ".kr" 문자열이 몇번째부터 시작하는지 세봐야겠죠? 0번째부터 셌을 경..

Webhacking.kr [old-17]

Webhacking.kr old-17 문제입니다. 문제 메인 페이지입니다. 입력 폼이 하나 있네요. 아무거나 입력해보았습니다. 틀렸다고 Wrong이 출력되었네요. 딱히 정보가 없네요. 소스코드부터 확인해 봅시다. 개발자도구로 소스코드를 확인했는데, 인증이 이루어지는 코드를 발견했습니다. unlock 변수에 어떤 값이 저장되어 있고 우리가 입력한 값이 unlock과 같을 경우, 어떤 경로로 이동되네요. 틀렸을 경우는 Wrong을 출력합니다. unlock 값을 계산해서 직접 입력해 봅시다. 계산기에는 복붙이 안되더라구요. 그래서 파이썬으로 계산했습니다. 7809297.1 이 나왔네요. 이걸 입력해 봅시다. 입력하고 check 클릭. 정답이었네요. 이렇게 old-17 문제를 해결할 수 있었습니다.

Webhacking.kr [old-01]

Webhacking.kr old-01 문제입니다. 문제 메인 페이지입니다. 특별할 건 없네요. 소스코드를 확인해 보겠습니다. 위쪽 코드는 단순히 쿠키값을 설정하는 코드이고.. 아래쪽이 중요하겠네요. 쿠키의 user_lv 값이 숫자가 아닐 경우, 값을 1로 설정합니다. user_lv 값이 4보다 크거나 같을 경우, 값을 1로 설정합니다. user_lv 값이 3보다 클 경우, 문제가 해결됩니다. 이것을 종합해보면, user_lv 값이 숫자이고, 3보다 크고 4보다 작을 경우 문제가 해결된다. 가 되겠네요. 저는 처음에 정수만 입력할 수 있다는 착각에 잠깐 헤맸었는데, 그냥 소수점을 입력해도 됩니다. 3~4 사이의 아무 숫자나 입력합시다. 저는 Burp suite 프로그램을 이용하겠습니다. 저는 3.5를 입력..

Webhacking.kr [old-06]

Webhacking.kr 사이트의 old-06 문제입니다. 문제 메인페이지 입니다. ID,PW가 기재되어 있고 특별한 건 없어 보입니다. 소스코드를 확인해 봅시다. 소스코드입니다. 위쪽부터 살펴보시면, 쿠키의 "user" 값이 존재하지 않을 경우 ID, PW를 guest, 123qwe로 설정합니다. 그리고 그 값을 base64로 20번 인코딩 한 후 숫자를 특수문자로 치환하여 각각 user, password 쿠키값으로 설정합니다. 아래쪽 소스코드는, 설정된 user, password 쿠키값을 특수문자를 숫자로 치환한 후 base64로 20번 디코딩하여 문제 메인 페이지에 출력합니다. 그리고, 만약 출력된 ID,PW값이 admin, nimda라면 문제가 해결됩니다. 즉, 우리는 admin, nimda 문자..

728x90
반응형