[그림 01] level14 시작화면


level14에 들어가면 다짜고짜 아무거나 입력해서 check하라고 합니다.

우리는 사뿐히 admin을 입력하고 check를 시도한 후 wrong!!이라는 퇴짜를 맞아봅니다.

먼저 페이지 소스를 확인해야겠습니다.


[그림 02] 페이지 소스의 script


페이지에서 function ch()라는 함수가 스크립트로 정의가 되어 있는 것을 볼 수 있습니다.

document.URL 즉, 지금 입력된 URL을 ul에 저장한다는 의미이고,

ul.indexOf(".kr")은 .kr이 있는 위치를 숫자로 저장한다는 의미입니다.

그리고 이 위치(숫자)에 30을 곱한 값을 check에 넣게 되면 비밀번호를 뱉어낸다는 것을 알 수 있습니다.

alert에서도 (ul의 위치 * 30)*(ul의 위치 * 30)를 Password로 주는 것을 알 수 있습니다.

해보지 않고서도 이러한 공식을 얻을 수 있습니다.


(document.URL.indexOf(".kr") * 30)^2 == password

[그림 03] 콘솔을 이용한 풀이


콘솔을 이용하여 풀이를 진행하면 [그림 03]과 같이 진행할 수 있습니다.

510을 check에 넣고 submit하면 [그림 04]와 같은 값을 얻을 수 있습니다.


[그림 04] Password


이제 이 값을 Auth에서 인증하면 풀리게 됩니다.


'WARGAMES > webhacking.kr - old' 카테고리의 다른 글

Webhacking.kr_No.18(100) - old  (0) 2016.06.28
Webhacking.kr_No.17(100) - old  (0) 2016.06.28
Webhacking.kr_No.16(100) - old  (0) 2016.06.28
Webhacking.kr_No.15(50) - old  (0) 2016.06.28
Webhacking.kr_No.12(250) - old  (0) 2016.06.28
Webhacking.kr_No.10(250) - old  (0) 2016.06.28
Webhacking.kr_No.06(100) - old  (0) 2016.06.28
Webhacking.kr_No.05(300) - old  (0) 2016.06.26

+ Recent posts