DoR@Hee의 끄적끄적
webhacking.kr 24번 본문
문제 첫 화면 사용자의 아이피 및 클라이어느 정보가 출력된다.
소스보기를 해보니 소스파일을 보여준다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | <html> <head> <title>Challenge 24</title> </head> <body> <? extract($_SERVER); extract($_COOKIE); if(!$REMOTE_ADDR) $REMOTE_ADDR=$_SERVER[REMOTE_ADDR]; //$_SERVER['REMOTE_ADDR'] 사용자의 ip를 의미하며, $REMOTE_ADDR에 담고있다 $ip=$REMOTE_ADDR; $agent=$HTTP_USER_AGENT; //$HTTP_USER_AGENT는 클라이언트의 정보를 의미한다. if($_COOKIE[REMOTE_ADDR]) { $ip=str_replace("12","",$ip); $ip=str_replace("7.","",$ip); $ip=str_replace("0.","",$ip); } - $_SERVER[REMOTE_ADDR] > $REMOTE_ADDR > $ip - 12 | 7. | 0.| 필터링 echo("<table border=1><tr><td>client ip</td><td>$ip</td></tr><tr><td>agent</td><td>$agent</td></tr></table>"); if($ip=="127.0.0.1") { @solve(); } else { echo("<p><hr><center>Wrong IP!</center><hr>"); } ?> <!-- source : index.phps --> </body> </html> Colored by Color Scripter | cs |
해당 소스코드 이며, 클라이언트의 정보, ip를 $REMOTE_ADDR에 넣은 후 다시 그 값을 ip에 넣는다.
그 후
쿠키 $_COOKIE[REMOTE_ADDR] 에 있는 값에 12, 7. 0. 이 존재 할 경우 str_replace를 이용 필터링 한 후 다시 $ip에 대입하며,
ip값에 127.0.0.1 이라는 값이 있을 경우 문제 해결이 되는 문제이다.
결론은 쿠키값을 넣으면 풀린다.
성공
'WarGame > WebHacking.kr' 카테고리의 다른 글
webhacking.kr 26번 (0) | 2019.02.19 |
---|---|
webhacking.kr 25번 (0) | 2019.02.19 |
webhacking.kr 23번 (0) | 2019.02.15 |
webhacking.kr 22번 (0) | 2019.02.15 |
webhacking.kr 21번 (0) | 2019.02.15 |
Comments