컴맹에서 컴공 그리고 화이트 해커가 되는 그날까지

hackthissite/basic/8번 풀이 본문

해킹/Web hacking

hackthissite/basic/8번 풀이

공부하는 뚱이 2022. 11. 24. 18:51
반응형

basic 8번 문제

문재 내용을 요약하자면 Sam이  달력 프로그램을 망쳤으나 이번에는 Sam은 암호화되지 않은 암호 파일을 /var/www/hackthissite.org/html/missions/basic/8/에 저장했습니다. 그런데 Sam의 어린 딸 Stephanie는 방금 PHP 프로그래밍을 배웠습니다. 최근 파일 저장에 대해 배웠고 자신의 능력을 보여주기 위해 스크립트를 작성했습니다.

 

아마 딸이 만든 저 Enter your name:에 취약점을 찾아야 할 것 같습니다.

Enter your name에 뚱이라고 입력하고 submit을 누르자

파일이 저장되었습니다. 파일을 보려면 여기 를 클릭 하십시오 . 라는 문구가 나오고

here 클릭 시

내 이름의 글자 수를 알려준다.

 

 그녀가 PHP를 배웠고 SCRIPT를 작성 했다고 하니 php와 script가 관련된 취약점인 SSI(Server-Side Include)

공격을 사용해 보아야겠다.

https://owasp.org/www-community/attacks/Server-Side_Includes_(SSI)_Injection

 

Server-Side Includes (SSI) Injection | OWASP Foundation

Server-Side Includes (SSI) Injection on the main website for The OWASP Foundation. OWASP is a nonprofit foundation that works to improve the security of software.

owasp.org

SSI의 정보는 다음 사이트를 참조하고

위에 사이트에 나와있는 공격

<!--#exec cmd="ls" --> : 디랙토리 파일 나열 이공격을 통해서 패스워드가 저장되어있는 파일의 위치를 알아야 한다.

<!--#exec cmd="ls" -->을 넣고 다시 submit을 눌러보았다.

그런데 이상하다... 뭔가 이상한. shtml 파일들이 나열되어 있다....

뭔가 이상해 문제가 무엇인지 알아보다 결국 발견한 것이 있다.

 

바로 /missions/basic/8/tmp

8까지 있어야 하는데 tmp까지 내려와서 디랙토리 파일을 나열하여 tmp내의 파일들을 나열했던 것이다.

이 문제를 해결하기 위해서는 <!--#exec cmd="ls ../"--> 이렇게 ../를 추가하여 상위 디랙토리로 올라가야 한다.

 

다시 <!--#exec cmd="ls ../"-->를 입력한 결과...

au12ha39vc.php 라는 누가봐도 패스워드를 숨겼을 것 같은 파일이 나오게 된다.

이제 여기에 들어가면 패스워드가 나올 것이다.

 

패스워드가 나와버렸다!

PHP와 SSI의 개념에 대해 알 수 있던 좋은 문제였다...

반응형

'해킹 > Web hacking' 카테고리의 다른 글

XSS-game level 2, 3  (0) 2023.01.31
XSS 공격에 대하여!  (0) 2023.01.30
hackthissite/basic/7번 문제 풀이  (0) 2022.11.24
hackthissite/basic/6번 풀이  (0) 2022.11.24
webhacking.kr 14번 문제 풀이  (0) 2022.11.22