Tyojong
[webhacking.kr] old-24 본문
반응형
기능 분석
내 ip와 agent 정보가 뜨면서 Wrong IP! 라는 문자열이 출력된다.
view-source 버튼을 누르면 소스코드를 볼 수 있다.
코드 분석
if($ip=="127.0.0.1"){
solve(24);
exit();
}
코크들 보면 사용자의 ip가 127.0.0.1이면 문제가 해결된다.
extract($_COOKIE);
$ip = $REMOTE_ADDR;
코드를 보면 php에서 extract함수는 배열을 변수로 바꿔주는 함수이다. 즉 extract($_COOKIE)를 하게되면 cookie의 key값을 변수 이름으로 cookie의 value값을 변수의 값으로 설정하게 된다.
해당 코드에서는 ip를 REMOTE_ADDR이라는 변수에서 가져오기 때문에 REMOTE_ADDR이라는 이름으로 키값을 만들면 ip를 조작할 수 있다.
$ip = str_replace("..",".",$ip);
$ip = str_replace("12","",$ip);
$ip = str_replace("7.","",$ip);
$ip = str_replace("0.","",$ip);
코드를 보면 str_replace함수는 값을 바꿔주는 함수이다. 해당 코드에서 ..은 .으로 12, 7., 0. 은 공백으로 치환한다.
익스플로잇
쿠키값에 따라 client ip가 변경되는 것을 알 수 있다.
필터링을 우회하기 위해 112277....00...00....1를 입력하면 문제가 해결된다.
728x90
'web > webhacking.kr' 카테고리의 다른 글
[webhacking.kr] old-54 (0) | 2025.07.21 |
---|---|
[webhacking.kr] old-15 (0) | 2025.07.21 |