WEB/webhacking.kr (old)

webhacking.kr 24번

hongjw 2020. 2. 3. 23:59

먼저 view-source를 확인해보았다.

extract 함수 : 함수에 배열타입의 변수를 넣고, 배열속의 키값들을 변수화

htmlspeicalchar 함수 : 문자열에서 특수 문자를 html엔티티로 변환

$REMOTE_ADDR : 사용자의 IP정보

$HTTP_USER_AGENT : 사용자의 웹접속환경 정보를 담고 있는 PHP전역변수

 

코드를 해석해보면,

$ip는 $REMOTE_ADDR의 값과 같은데, 이 중 특수문자는 html엔티티로 변환되고, ".."는 "."로, "12", "7.", "0."은 공백으로 대체된다.

이 때, $ip가 127.0.0.1이면 문제가 해결된다 !

 

$_SERVER[REMOTE_ADDR]는 IP주소 값인데, IP주소값을 바꿀 수는 없다.

코드를 보면 extract($_SERVER)보다 extract($_COOKIE)가 더 늦게 실행되므로 $_COOKIE[REMOTE_ADDR]값을 127.0.0.1로 바꿔주면 문제를 해결할 수 있다.

 

쿠키 생성

REMOTE_ADDR이라는 쿠키를 생성하고 127.0.0.1을 입력했더니, client ip에 1이 출력되었다.

12와 7.과 1.이 모두 공백으로 대체된 것이다ㅠ

 

이를 우회하기 위해 112277...00...00...1을 입력하였더니,

문제 해결 ٩꒰。•◡•。꒱۶ 

'WEB > webhacking.kr (old)' 카테고리의 다른 글

webhacking.kr 25번  (0) 2020.02.06
webhacking.kr 23번  (0) 2020.02.05
webhacking.kr 20번  (0) 2020.02.02
webhacking.kr 19번  (0) 2020.01.29
webhacking.kr 15번  (0) 2020.01.27