본문 바로가기
드림핵

드림핵 file-download-1 문제 풀이

by jwcs 2023. 2. 11.
728x90

https://dreamhack.io/wargame/challenges/37/

 

file-download-1

File Download 취약점이 존재하는 웹 서비스입니다. flag.py를 다운로드 받으면 플래그를 획득할 수 있습니다. Reference Introduction of Webhacking

dreamhack.io

파일 다운로드 취약점을 찾는 문제이다.

 

초기 화면이다. 업로드 페이지로 가보자

/upload

업로드 페이지다. 게시글 만드는 것과 같은 모습이다. 이제 코드를 들여다보자.

빨간색 박스를 보면 uploads라는 폴더를 만드는 것이 보인다.

 

노란색 박스와 파란색 박스를 보면 직접 경로를 이용해 파일을 만들고 여는 모습을 볼 수 있다. 이를 이용하여 공략을 하면 될거같다.

 

초록색 박스를 보면 파일을 만들 때 제목을 이용한 공략은 불가능하게 필터링을 해놓은 것 같다. 

 

 

잘 모르겠을 땐 일단 부딪혀보자. 간단한 파일 하나를 만들었다.

 

여기서 url을 주목해주자. 뭔가 떠오르는 것이 없는가?

앞서 보았던 코드이다. 하늘색 박스에 주목해주자.

filename 변수의 매개변수로 name을 받는다. 그렇다면 url에 있는 name을 이용한다면 공략할 수 있을 것으로 판단된다.

name=../flag.py로 성공한 모습이다.

728x90
반응형

'드림핵' 카테고리의 다른 글

[드림핵] devtools-sources 풀이  (0) 2023.03.09
드림핵 Carve Party 문제 풀이  (0) 2023.02.20
드림핵 web-ssrf 문제 풀이  (0) 2023.02.17
드림핵 image-storage 풀이  (0) 2023.02.09
[드림핵] command-injection-1 문제풀이  (0) 2023.02.06