Apache htaccess

EmptyWind·2025년 2월 8일
0

🚩 문제 설명


Description
파일 업로드 기능을 악용하여 서버의 권한을 획득하세요 !


🚀 문제 풀이


  1. 먼저 해당 페이지에 접속 시 파일을 업로드 할 수 있는 기능이 존재하는 화면이 보인다.

  2. 주어진 파일을 압축해제 한 후 000-default.conf 파일을 확인 시 AllowOverride 값이 All로 설정되어 있는 것을 볼 수 있다.

  3. 또한 src 폴더 안의 upload.php 파일의 코드를 보면, 블랙리스트 기반으로 특정 확장자만 업로드를 제한하고 있는 것을 알 수 있다.

  4. 해당 소스코드와 설정을 보면 임의의 파일 확장자를 php로 실행할 수 있도록 업로드 폴더 내 .htaccess 파일을 업로드 하면 flag 값을 얻을 수 있을 것으로 판단되어, jpg 확장자를 php처럼 실행 가능하도록 .htaccess 파일을 작성해서 업로드한다.

  5. .htaccess와 동일한 경로에 php webshell 코드가 담긴 jpg 파일을 업로드한다.

  6. 업로드한 웹쉘 파일을 통해 cmd 명령이 수행되는지 확인 후 /flag 를 입력 시 flag 값을 획득 가능하다.

[flag] : DH{9aeba1a6feed3769ae0915b62db2b4872bec98c2}


✅ 참고


.htaccess란

.htaccess 파일은 컨텐츠 제공자가 디렉토리별로 서버 설정을 다르게하고 싶지만 서버 시스템에 root 권한이 없는 경우에 사용하는 설정으로, Apache httpd.conf에서 AllowOverride 옵션에 따라 사용이 가능함

profile
Pentester

0개의 댓글