카테고리 없음

backdoor.sdslabs.co file reader write up

2017. 10. 19. 15:16

일단 문제에서 제공한 링크에 <a></a> 태그로 어떤 링크가 또 링크되어있다. 일단 한 번 접속해보자. 

http://hack.bckdr.in/FLREAD/app/viewer/


여기에 접속해보면 Directory Listening 취약점이 발생한다. 


viewer.php는 파일의 내용을 볼 수 있는 PHP 어플리케이션이다. 그래서 sample1.txt 등을 볼 수 있는데, 그럼 플래그는 어디에 있을까?


처음에 내가 접근한 방식은 PHP Filter로 viewer.php의 소스를 보는 방식이었다. 얼마지나지 않아서 이 방법이 아님을 깨닫고 다른 방법을 찾아보았다. 


Parent Directory에 가면 flag.php가 있다. viewer.php로 ../flag.php 를 읽어오면 된다. 

하지만, 여기서 페이크가 있다. ../flag.php 를 입력하면 ./flag.php로 치환된다는 것이다ㅋㅋㅋㅋㅋ


str_replace("..", ".", $file) -> 이런 식의 함수가 존재하는 것 같다. 


그래서 .../flag.php 를 입력하면 된다. 

.. 가 . 로 치환되면서 ../flag.php로 입력된다.