본문 바로가기

Webhacking/Webhacking.kr

[Webhacking.kr] old-01번 문제 풀이

728x90
반응형

Level1의 경우 따로 문제가 무엇인지, 어떻게 풀어야하는지 문제 화면만 통해서는 알 수가 없다.
일단 view-source를 눌러보자.

그러면 이렇게 level1에 대한 php와 html코드가 나타난다.
php 는 서버사이드 언어이므로 실제 웹이라면 저렇게 소스코드가 나타나지 않는다.
즉 나타난 php 코드는 문제를 어떻게 풀어야하는지를 알려주기 위해, php 코드를 일부러 공개해 둔 것이다.

코드를 보면 가장 중요한건 바로 $_COOKIE 이다.
아래쪽에 있는 if문들을 보면 $_COOKIE['user_lv']>5 조건에 성립하면 1번 문제가 solve 되지만,
$_COOKIE['user_lv']>=6 조건에 성립하면 $_COOKIE['user_lv']이 1로 초기화 된다.

즉 user_lv 쿠키값이 5보다 크지만 6보다는 작아야 이 문제가 해결됨을 알 수 있다.
user_lv 쿠키값을 5.5로 변경하면 되겠다!

예전같았다면, 개발자도구를 이용하여 document.cookie="user_lv=5.5" 이런식으로 콘솔에서 javascript를 통해 설정해도 문제가 풀렸겠지만, 요즘엔 개발자도구를 이용한 직접 쿠키 수정은 잘 되지 않는다...(왜 그런지는 따로 알아봐야겠다...)

그래서 차선책으로 Edit This Cookie라는 Chrome 확장 프로그램을 이용하여 위 스크린샷 처럼 user_lv 쿠키값을 5.5로 설정한뒤, 새로고침을 한다.

해결됨을 확인할 수 있다.

728x90
반응형