Web 서버 내에서 flag.txt 파일을 찾아내라!
링크로 접속하면 이 페이지가 나옵니다.
회원가입 후 로그인했습니다.
게시판입니다.
바로 <?php echo “Hello, world!”; ?> 이런 코드를 업로드해 봤습니다.
확장자로 인해 업로드가 안됩니다.
파일 그대로 php만 jpg로 바꾸어 올려보겠습니다.
글 작성에 성공했습니다.
이미지 파일로 접속해 봤습니다. 정상적으로 접근이 가능합니다.
파일 확장자를 다시 변경해 주기 위해서 Burp Suite로 접속했습니다. 아까 업로드된 요청을 볼 수 있습니다.
Repeater로 보내서 확장자명을 jpg에서 다시 php로 바꾸어주고 Content-Type: image/jpeg로 되어있던걸 Content-Type: text/php 이렇게 바꾸어 주었습니다.
업로드될 수 없는 파일이 탐지되었습니다.라고 나오지만 접속해 보면 정상적으로 스크립트가 작동한다는 것을 알 수 있습니다.
그래서 웹쉘을 올려보았습니다.
올리고 ls 명령어를 쳐보면 제가 올렸던 파일들이 보입니다.
자동 인코딩 활용하기 위해 검색창을 활용했습니다.
cmd=cmd=sudo find / -type f -name “flag.txt” 이렇게 명령했더니 결과가 나왔습니다 오류인 거 같습니다
제대로 풀기 위해 다시 풀어보았습니다. cmd=find / -name “flag.txt” 이렇게 했는데 빈 화면이 나왔습니다.
그래서 pwd로 현재 작업 경로 확인했습니다
그러고 나서 cmd=find /app/webshell_2 -type f -name flag.txt 명령어 실행했습니다.
cmd=find / -type f -name “flag.txt” 이런 식으로 정확히 찾아야 찾아지는 거 같습니다.
cmd=cat /app/webshell_2/secret_file/flag.txt 이렇게 실행해 플래그를 확인할 수 있었습니다.