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 |