Webhacking.kr 16번
·
Webhacking.kr
16번 문제 소스를 보면 "cd" 변수 값을 기준으로 5 가지 기능이 실행된다. cd 값을 잘 보면 특정 정수 범위인것을 알 수 있는데 바로 문자의 ASCII 값이다. ( 각각 'd', 'a', 'w', 's' 문자를 의미 ) 즉, 키보드에서 'w'를 누르면 위로 50 만큼 이동한다. 따라서 클리어 조건은 정수 124가 의미하는 문자 입력하는 것이다. 콘솔에서 String.fromCharCode를 이용해서 124가 의미하는 문자 '|'를 알아낸다. '|' 문자를 클릭하면 위 사진의 URL로 페이지가 이동된다.
Webhacking.kr 15번
·
Webhacking.kr
15번 문제를 클릭하면 "Access_Denied" 창이 나타난다. "webhacking.kr" 문제 목록에서 소스를 보면 15번 문제는 "challenge/javascript/js2.html" 로 이동된다. 크롬 URL창에 "view-source:URL" 를 입력하면 해당 URL의 소스가 보여진다. 15번 소스를 보면 경고창이 나타나고, "history.go(-1)"가 실행되면서 이전 페이지로 돌아가게 된다.
Webhacking.kr 14번
·
Webhacking.kr
indexOf(x) 함수는 인자 값으로 들어온 x의 위치를 반환한다. 위 사진에서는 URL 내에서 ".kr" 위치를 반환하는데 주의할 점은 document.URL 값이다. 일반적으로 URL에는 http://webhacking.kr/challenge/javascript/js1.html" 로 나타난다. 그러나 실제 값은 앞쪽에 프로토콜이 명시된 "http://webhacking.kr/challenge/javascript/js1.html" 이다. 따라서 ".kr"의 위치 값은 17 이 된다. (제일 왼쪽 'h'의 값은 0) ul = 17 * 30 ul = 510