<webhacking.kr 24번 문제 풀이>
1) extract($_SERVER); // SERVER 추출
2) extract($_COOKIE); // COOKIE 추출
$REMOTE_ADDR을 $ip 변수에 넣는데 $REMOTE_ADDR이 무엇일까?
"환경변수"이다.
php에서는 프로그래머가 사용하기 쉽도록 여러가지 필요한 변수들을 미리 정의해 놓는다.
앞서 우리가 SERVER의 REMOTE_ADDR을 추출했고, 그 뒤에 COOKIE도 추출했는데 만약 쿠키에도 REMOTE_ADDR이 존재한다면, 그 값이 변할 것이다. 따라서 우리는 쿠키를 조작하여 이 문제를 풀 수 있다.
(SERVER와 COOKIE의 내부 속성들)
- REMOTE_ADDR : 현재 페이지를 보고 있는 시스템의 IP 주소.
- REMOTE_PORT : 사용자의 시스템이 웹 서버와 통신하고 있는 포트번호.
- QUERY_STRING : 해당 페이지를 접근할 때 사용된 query string.
- REQUEST_URL : 이 페이지를 접근하기 위해 사용된 URL.
- REQUEST_METHOD : 페이지가 요구될 때 사용된 method.
등등이 존재함.
3) if($REMOTE_ADDR){ ... } 에서
. . -> . 으로 치환
12 -> 공백으로 치환
7. -> 공백으로 치환
0. -> 공백으로 치환
쭉 보다보면 결국엔
4) if($ip == "127.0.0.1") ~ 코드를 통해 ip주소가 127.0.0.1이면 해당 문제가 풀림.
치환 되는 것들도 고려하면, 어떤 값을 쿠키에 넣어야할까?
112277....00....00....1
최종적 풀이는 두가지가 나올 수 있다.
하나는 f12 콘솔창에 javascript 넣기/ 다른 한가지는 크롬 플러그인을 설치하여 쿠키를 직접 변경.
방법 1 : 콘솔 창에 javascript:socument.cookie="REMOTE_ADDR=112277....00....00....1;"; 입력 방법 2 : 크롬플러그인에서 쿠키 변경 |
문제가 풀렸다~!
'워게임 > Webhakcing.kr' 카테고리의 다른 글
webhacking.kr 42번 문제 풀이 (0) | 2020.07.17 |
---|---|
webhacking.kr 17번 문제 풀이 (0) | 2020.07.15 |
webhacking.kr 39번 문제 풀이 (0) | 2020.07.15 |
webhacking.kr 54번 문제 풀이 (0) | 2019.12.24 |
댓글