본문 바로가기

개발/서버

데이터 파일경로 php 스크립트 막기

파일 업로드가 가능한 게시판의 경우 알게모르게 취약점이 존재할 수 밖에 없다.
특히 알지보드나 제로보드의 경우 php파일을 업로드하여 스팸메일서버로 사용하는 경우가 많이 발생했었다.
그럼 이제 데이터 업로드 폴더에 php실행을 금지 시키는 방법을 알아보기로 하자.
지금까지는 아파치 httpd.conf 파일에서 제어하는 방법으로 사용을 해왔다.
 <DirectoryMatch "/home/userid/public_html/bbs/data/">
    AddType application/x-httpd-php3-source .phps .php .ph .php3 .cgi .sh .pl .html .htm .shtml .vbs .ins .php4
    AddType application/x-httpd-php-source .phps .php .ph .php3 .cgi .sh .pl .html .htm .shtml .vbs .ins .php4
    <Files ~ ".*\.ph$">
      Order allow,deny
      Deny from all
    </Files>
</DirectoryMatch>

물론 아직도 이 방법으로도 충분하지만 웹호스팅 시용자는 아파치 서버 설정을 직접할 수 없으므로 다른 방법을 소개한다.
php실행을 막고 싶은 데이터 폴더에 아래와 같이 .htaccess 파일을 작성하고 업로드 한다.

<IfModule mod_php5.c>
  php_value engine off
</IfModule>
<IfModule mod_php4.c>
  php_value engine off
</IfModule>

/bbs/data/.htaccess 와 같이 업로드 했다면 /data 폴더를 포함한 하위 폴더 전체에 php 실행이 금지 된다.
   

'개발 > 서버' 카테고리의 다른 글

WebDAV  (0) 2011.12.17
[Linux] 쉘 Shell 이란? & 심볼릭 링크 변경  (0) 2011.12.17
아파치 로그분석  (0) 2011.12.17
아파치 로그관리 cronolog  (0) 2011.12.17
아파치 웹 서버의 보안 설정  (1) 2011.12.17