webhacking.kr 16번

들어가면 예쁘게 생긴 화면이 나온다.

우선 소스를 먼저 보겠다.

친절하게 주석으로 //do it!이라고 써있다,

cd의 값이 124가 된다면 뭔가 풀린다는 힌트를 얻을 수 있다.

 

차근차근 살펴보면 큰 *과 작은 *을 출력해주는 코드가 있다.

 

kk함수를 먼저 살펴보면 rndc에 랜덤한 어떤 값을 넣어주고 있고,

다음 그 값이 다음줄에서 색상코드로 사용되고 있다. 

onmouseover 속성이 사용되어서 이 *위에 마우스를 가져다대면 사라진다.

 

사실 이건 중요한 내용은 아니다.

 

mv함수로 가보면 cd값에 따라 무언가가 일어나고 있는데 

코드의 4줄을 보면 onkeypress라는 속성이 보인다.

즉 이 문제는 키보드를 이용해서 풀어야 한다는 것.

 

if 문의 100, 97 요런 값들은 아스키코드다

각각 d, a , s, w이므로 눌러보면 큰 *이 이동하는 모습을 확인할 수 있다.

 

그렇다면 124는 무엇일까? 

바로 | 이다.

키보드로 |를 누르면 간단하게 풀린다.

 

'문제풀이 > 보안 writeup' 카테고리의 다른 글

webhacking.kr 35번  (0) 2021.03.18
webhacking.kr 33번  (0) 2021.03.16
webhacking.kr 12번  (0) 2021.01.21
webhacking.kr 14번  (0) 2021.01.20
webhacking.kr 24번  (0) 2021.01.20
myoskin