whois
Webhacking.kr 24번 본문
[그림 1] 24번
level24를 클릭하게 되면 그림 1과 같이 client ip와 agent 정보를 보여주게 된다. 단순히 whois 정보를 출력하게끔 설정 해둔 것 같다. 그리고 아래에 보니 'Wrong IP!'라는 문구가 보이는 것으로 보아 IP를 맞춰줘야 하는 문제인듯 하다.
[그림 2] 문제 소스
문제 소스를 보니 주석처리로 된 source : index.phps가 있다. 힌트이니 24번의 URL에 index.phps를 붙여 들어가 보기로 한다.
[그림 3] index.phps
코드 흐름을 살펴 보겠다.
① 서버와 쿠키 변수를 추출한다.
② REMOTE_ADDR 변수 값이 없으면 서버의 REMOTE_ADDR 값을 REMOTE_ADDR 변수에 넣는다.
③ REMOTE_ADDR 값을 ip 변수에 담고 HTTP_USER_AGENT는 agent 변수에 담는다.
④ ip에 12 / 7. / 0. 각각의 문자열이 있으면 공백으로 치환한다.
⑤ ip가 127.0.0.1이면 문제 해결을 한다.
[그림 4] REMOTE_ADDR 설명
REMOTE_ADDR이 뭔지 몰라서 검색하다가 Stack Overflow 커뮤니티를 통해 알게 되었다. SERVER_ADDR은 서버의 IP이고 REMOTE_ADDR은 현재 페이지를 보고 있는 사용자의 IP라는 것을.
[그림 5] 문제 풀이
EditThisCookie 구글 확장 프로그램을 사용하면 쿠키에 쉽게 추가할 수 있다. + 버튼을 누르고 그림 5와 같이 추가 시킨다. 112277..00..00..1을 넣어 주게 되면 중간에 12와 뒤에 7.이 제거되면서 127.이 남게 되고 0.을 하나씩 제거 하면 127.0.0.1이 만들어진다.
[그림 6] 성공
풀게 되면 그림 6과 같이 성공했다는 문구를 볼 수 있다!
'Wargame > Webhacking.kr' 카테고리의 다른 글
Webhacking.kr 25번 (0) | 2017.09.01 |
---|---|
Webhacking.kr 26번 (0) | 2017.07.26 |
Webhacking.kr 18번 (0) | 2017.07.11 |
Webhacking.kr 14번 (0) | 2017.07.10 |
Webhacking.kr 23번 (0) | 2017.07.06 |