Webhacking 25번 문제입니다.
사이트에 접속해보면 php파일을 file=hello로 출력해주고 있습니다.
혹시나 싶어 file=flag를 입력해보면
FLAG is in the code 라고 출력해주고 있습니다.
php파일을 불러오는 경우 기억나는 문제가 있었는데 G04T XXE 2번 문제입니다.
https://skysquirrel.tistory.com/82
G04T war xxe 2 문제 — Squirrel Hack
skysquirrel.tistory.com
PHP를 그대로 출력하지 못할때 base64로 암호화시켜 출력하는 방식입니다.
(더 자세히 설명하고 싶지만 작성자의 역량부족입니다)
위 코드에서 php://filter/convert.base64-encode/resource=index.php에서
우리가 출력해야 할것은 flag.php 이므로 이부분을 바꾸고 전달해봤는데
아무것도 출력되지가 않습니다.
곰곰히 생각해보면서 첫 페이지로 돌아가서 다시 생각해보니 hello.php를 출력할때 hello만 입력한 것을
다시 보았고 flag.php에서 .php를 지우고 제출해보니
base64로 암호화된 암호문이 출력되었습니다.
출력된 암호문을 복호화 시켜보면
PHP 소스코드가 출력되면서 FLAG를 찾았습니다.
찾은 FLAG를 제출해주면 문제가 해결되었습니다.
'Wargame(Web) > Webhacking.kr Writeup' 카테고리의 다른 글
Webhacking Writeup 28번 문제 (1) | 2022.10.13 |
---|---|
Webhacking Writeup 35번 문제 (0) | 2022.09.26 |
Webhacking Writeup baby 문제 (0) | 2022.09.26 |
Webhacking Writeup 22번 문제 (1) | 2022.09.26 |
Webhacking Writeup 8번 문제 (0) | 2022.09.26 |