소스보기를 통해 분석을 한번 해보겠습니다.
1.
[ <form name=pw><input type=text name=input_pwd>
<input type=button value="check" onclick=ck()></form> ]
- 사용자에게 입력값을 받아서 "check"버튼을 누르면 ck()함수를 호출하도록 되어 있습니다.
2.function ck()
[ var ul=document.URL; ]
- 접속한 도메이의 URL 정보를 가져옵니다
[ ul=ul.indexOf(".kr"); ]
- URL의 인덱스 값을 가져옵니다. 인덱스는 0부터 시작하므로 ".kr"의 위치는 18이 되겠습니다.
[ ul=ul*30; ]
- 인덱스 * 30 이므로 540이 되겠습니다.
[ if(ul==pw.input_pwd.value) { location.href="?"+ul*pw.input_pwd.value; }
else { alert("Wrong"); }
} ]
- pw.input_pwd.value에는 사용자가 입력한 값이 들어가고 ul은 최종적으로 540의 값이 들어가게 됩니다.
만약 사용자가 입력한 값이 540이 되면 540*540 = 291600이므로 "https://webhacking.kr/challenge/js-1/?291600" 이 URL로 이동하게 됩니다.
만약 다르다면 "Wrong" 메시지창이 뜹니다.
이클립스를 이용해 프린트를 찍어가면서 확인해본 결과입니다.
[내용]