Wargame, CTF/webhacking.kr

Webhacking.kr 25번

부산형 2020. 1. 24. 16:01

메인화면

리눅스 터미널같은 모습

ls -al 명령어의 결과 같음

파일은

flag.php

hello.php

index.php가 있음 

get파라미터로 받는 file의 기본값은 hello

hello.php가 아니라 hello가 있는걸 보니

뒤에 .php가 알아서 붙어있는것 같음

 

flag

flag는 코드안에 있다고 하는데 뭔 소린지 모르겠다

찾아보니  php wrapper라는게 있다고 함

그리고 이문제에서는 filter로 base64가 적용되어있다고함

 

https://www.php.net/manual/en/wrappers.php.php

 

PHP: php:// - Manual

This parameter takes one or more filternames separated by the pipe character |.

www.php.net

base64로 인코딩되어있기 때문에

?file=php://filter/convert.base64-encode/resource=flag

이런식으로 값을 줘야한다

 

저기서 나온 값을 base64디코딩하면

 

flag

php코드를 뽑을 수 있음