문제화면

 

숨겨진 오른쪽 화면. Goal 지점이 보인다.
마우스를 갖다댈 떄의 모습.

마우스를 갖다대면 O라고 적혀있던 문자가 yOu로 바뀐다.

그리고 이를 클릭하면 오른쪽으로 전진한다!

 

클릭해서 Goal 지점으로 들어가게 하니까 문제가 풀리긴 했지만 소스코드를 분석하여 문제를 풀어보겠다.

 

페이지 소스코드

 

<a id=hackme style="position:relative;left:0;top:0" onclick="this.style.left=parseInt(this.style.left,10)+1+'px';if(this.style.left=='1600px')this.href='?go='+this.style.left" onmouseover=this.innerHTML='yOu' onmouseout=this.innerHTML='O'>O</a><br>
<font style="position:relative;left:1600;top:0" color=gold>|<br>|<br>|<br>|<br>Goal</font>

hackme.style.left가 클릭할 때마다 1px 씩 증가하며,

그 값이 1600px가 되면 문제를 풀 수 있는 링크가 생성되는 것 같다.

 

URL에 ?go='1600px'를 덧붙여 이동한 결과

그 결과, no hack이라는 문자열이 뜬다.

작은 따옴표 없이 ?go=1600px라고만 해도 같은 결과가 나오며 ?go=1600 이라고만 해도 같은 결과가 나온다.

 

콘솔창

hackme.style.left가 1600이 되는 순간에 문제가 해결되므로 

콘솔창을 통해서 hackme.style.left=1599로 설정해주면 O가 Goal 지점 부근에 가있는 것을 볼 수 있다.

이를 한번 더 클릭하면!

해결

 

+ Recent posts