ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Dreamhack - file-download-1
    wargame/Dreamhack 2024. 3. 25. 22:38

    [Beginner - file-download-1 - web]

     

     

     

    문제 설명에 File Download 취약점이 존재하는 웹 서비스라고 되어 있다.

    플래그값은 flag.py에 들어있다.

     

     

     

     

    일단 문제파일 다운받고 app.py 코드 먼저 열어본다.

     

     

    업로드 페이지에서 '..'을 넣으면 bad characters,, 라고 나오게 필터링을 해놓은 것을 볼 수 있다.

    반면, /read 페이지에서는 filename을 특별히 검사하지 않고 있다.

     

     

     

     

     

    문제 환경에 처음 접속하면 위와 같은 화면이다.

     

     

     

     

     

    일단 업로드 하러 왔는데 어차피 Filename에 '..' 쓰면 필터링 걸려서 아무 내용이나 쓰고 업로드한다.

     

     

     

     

     

    메인 페이지에 방금 업로드했던 게 올라와 있다.

     

     

     

     

     

    들어가보면 썼던 거 그대로 나오는데, 아까 Filename을 test로 해서 read?name=test로 되어있다.

    /read 페이지는 ".."를 필터링하고 있지 않으므로, 이 페이지에서 get parameter의 filename을 "../flag.py"로 수정하면 된다.

    즉, read?name=../flag.py로 바꾸면 파일 내용을 읽을 수 있다.

     

     

     

     

     

     

     

     

    플래그를 획득했다!

     

    'wargame > Dreamhack' 카테고리의 다른 글

    Dreamhack - sleepingshark  (0) 2024.05.01
    Dreamhack - web-ssrf  (2) 2024.03.26
    Dreamhack - image-storage  (0) 2024.03.18
    Dreamhack - broken-png  (0) 2024.03.18
    Dreamhack - Mango  (0) 2024.02.27
Designed by Tistory.