great minds think alike
[Dreamhack/드림핵] image-storage 본문
https://dreamhack.io/wargame/challenges/38
image-storage
php로 작성된 파일 저장 서비스입니다. 파일 업로드 취약점을 이용해 플래그를 획득하세요. 플래그는 /flag.txt에 있습니다. Reference Server-side Basic
dreamhack.io
"php로 작성된 파일 저장 서비스입니다. 파일 업로드 취약점을 이용해 플래그를 획득하세요. 플래그는 /flag.txt에 있습니다."
이전에 파일 업로드 취약점을 이용한 문제를 풀었는데 도움이 되었으면 좋겠다고 생각하고 시작했다.
가장 처음의 화면이다. 이 화면은 Home 카테고리에 해당하는 화면.
List를 눌러보면 빈 화면이 뜨는데 아직 올린 파일이 없어서 아무것도 안 뜨나보다.
Upload 카테고리의 화면.
파일을 로컬에서 선택해서 업로드할 수 있도록 구성되어있다.
이 파일을 올려봤다. 파일의 이름은 ".password.jpg" 이다.
저장된 위치를 알려주는 화면이 나온다.
List에 내가 올린 파일이 등록되었다.
들어가서 url을 확인해보면 아까 알려줬던 그 위치에 파일이 저장된 것을 볼 수 있다.
http://host3.dreamhack.games:23171/.flag.txt 를 주소창에 입력했으나 이런 에러 메세지를 확인할 수 있었다.
다음과 같은 내용의 php 파일을 업로드하고
업로드한 위치에 들어가서 확인했더니
<> 글자가 그대로 소스코드에 반영이 되어
웹셸을 시도할 수 있다는 것을 알게 되었다.
(예전에 문제를 풀다가 <> 문자가 반영이 안 됨을 확인하고 웹셸이 아닌 다른 방법으로 문제를 풀어야 한다는 것을 달았던 경험이 있어서 <>을 넣어서 확인해보았다.)
그래서 위와 같은 php 파일을 업로드 하여 .flag.txt 파일의 내용을 출력해보려고 했다.
위의 파일을 업로드하고 위치로 가보았는데
흰 화면만 떴다.
전에도 웹셸을 이용하려고 php 파일을 업로드한 적이 있었는데, 그 때도 이렇게 흰 화면만 뜬 적이 있었다.
그 때 흰 화면만 떴던 이유는 php 파일의 코드가 실행되어서 코드가 보이지 않고 흰 화면만 보였었다.
그럼 실행된 상태니까 url 뒤에 ?cmd=cat http://host3.dreamhack.games:23171/.flag.txt 를 입력해주면 flag.txt의 내용이 출력될 줄 알았다.

그런데 여기서부터 문제가 발생했다.
아마 ?cmd=cat http://host3.dreamhack.games:23171/.flag.txt 를 입력했는데 에러 화면이 떴던 것 같다.
에러화면에서 알려주길 이 문제의 서버가 아파치 서버라고 하길래
호기심이 생겨서...
.htaccess 파일을 업로드해서 php 코드 실행을 중지하도록 할 수 있는지도 궁금해져서
.htaccess 파일에 "php_try3 engine off" 라는 텍스트를 입력하여서 적용이 되는지 확인해보고 싶었다. (그러니까 try3.php를 실행 중지시켜서, 빈 화면이 보이는 것이 아니라 php 코드가 그대로 보일지 궁금했다.)
그래서 .htaccess 파일을 업로드 한 뒤 try3 파일에 들어갔더니
internal server error가 발생했다고 한다.
그리고 내가 올렸던 다른 모든 파일에 들어가려고 하면 이 에러가 발생했다.
.htaccess 파일 때문일텐데
이 문제에는 업로드한 파일을 삭제하는 기능도 없었기 때문에...
더 이상 문제를 풀 수가 없었다. 저 에러때문에 업로드한 파일에 접근할 수가 없었다.
망했다는 생각이 들어서 여기서부터 구글링을 통해 문제를 풀었다.
참고한 블로그이다.
https://blog.naver.com/security-705/223068632713
image-storage
#드림핵 #워게임 #CTF #IT #보안 문제>> php로 작성된 파일 저장 서비스입니다. 파일 업로드 취...
blog.naver.com
위의 코드가 적힌 php 파일을 업로드하고, 그 php 파일이 저장된 곳으로 이동하면
이러한 flag 값이 뜬다고 한다.
flag.txt 에 적힌 값을 정답란에 입력하면 된다...!

하하하 ;;
'SWLUG > 웹 해킹' 카테고리의 다른 글
[LoS.Rubiya.kr] gremlin (0) | 2023.10.06 |
---|---|
[Dreamhack/드림핵] simple_sqli (0) | 2023.10.06 |
[Root me] Install files (0) | 2023.09.30 |
[Root me] File upload - Double extensions (0) | 2023.09.30 |
[Webhacking.kr] old-28 (0) | 2023.09.28 |