14번 문제에 들어가자마자 입력창이 하나 뜬다.
아무 값이나 넣어봤더니 'Wrong'이라는 창이 뜬다.
소스 코드를 보니 script로 되어 있는 이 부분이 중요한 것 같다.
ul이란 변수에 document.URL이 들어있다.
document는 현재 내 페이지를 뜻한다.
ul에 ul.indexOf(".kr")의 값을 넣을 것이라고 다음 문장에 적혀있다.
자바 스크립트 부분이기 때문에 찾아보니 indexOf는 문자열 안에 조건이 되는 문자열이 몇 번째 위치에 존재하는지를 확인하는 함수이다.
즉, ul = ul.indexOf(".kr")은 변수 ul에 들어있는 문자열에서 .kr이 시작되는 위치를 숫자로 표현하여 다시 ul에 저장시키고 그 숫자로 변환된 ul 값에 30을 곱하여 다시 변수 ul에 저장하는 것이다.
ul과 메세지 입력 값이 같으면 비밀번호를 알려주는 것 같다.
url은 https://webhacking.kr/challenge/js-1/이다.
".kr"의 위치는 여기에서 보면 18번째에 위치한다.
18과 30을 곱하면 540이 되고 구한 값인 540을 입력창에 넣으면 문제를 풀 수 있다.
성공이다!
'Webhaking > WebHaking CTF' 카테고리의 다른 글
[Webhaking.kr] old 9번 (0) | 2020.11.09 |
---|---|
[Webhaking.kr] old 27번 (0) | 2020.11.05 |
[Webhaking.kr] old 18번 (0) | 2020.11.05 |
[Webhaking.kr] old 17번 (0) | 2020.10.02 |
[Webhacking.kr] old 32번 (0) | 2020.10.01 |