헤킹방어 - 이건 꼭 적용하세요.


2025-04-09 08:28
2,576
1
2
본문
헤킹방어 - 이건 꼭 적용하세요.
그누보드5는 구조적인 설계 때문에
data 디렉토리에 대하여 쓰기 권한을 열어줘야 합니다.
헤커가 어찌 어찌하여
data 디렉토리 안에 php 파일을 업로드 했더라도
실행을 못하게 하는 방법입니다.
nginx 기준
` location ~ ^/tmp/.*\.(php|php5|pht)$ {`
` deny all;`
` }`
` location ~* ^/data/.*\.(php|php5|pht)$ {`
` deny all;`
` }`
` location ~ \.php$ {`
`이하생략`
적용후 data 디렉토리에 phpinfo.php 파일 하나 만들어서
위 환경설정 적용전과 적용후를 비교해 보시면 도움이 될거 같습니다.
댓글목록1
빵도둑님의 댓글
apache
복사
편집
# .htaccess 파일을 /data 디렉토리 안에 직접 생성하거나, 메인 .htaccess에서 /data 경로에 대해 적용할 수 있습니다.
<FilesMatch "\.(php|php5|pht)$">
Order allow,deny
Deny from all
</FilesMatch>
또는 조금 더 광범위하게:
apache
복사
편집
# /data 디렉토리 전체에 대해 PHP 실행 금지
<Directory "/full/path/to/data">
<FilesMatch "\.(php|php5|pht)$">
Require all denied
</FilesMatch>
</Directory>
만약 .htaccess 파일을 /data 디렉토리 안에 둘 수 있다면, 아래와 같이 간단하게도 가능합니다:
apache
복사
편집
# /data/.htaccess
php_flag engine off
<FilesMatch "\.(php|php5|pht)$">
Order allow,deny
Deny from all
</FilesMatch>
✅ 추가 보안 팁:
data 디렉토리는 파일 업로드 전용이므로, PHP 실행이 가능하면 매우 위험합니다.
가능하다면 서버 설정 수준(Apache 설정 또는 nginx 설정)에서 PHP 비활성화가 가장 안전합니다.
.htaccess는 AllowOverride 설정이 되어 있어야 적용됩니다. (보통 그누보드에서는 기본적으로 가능하게 되어 있습니다)
적용 후 data/phpinfo.php 파일을 만들어 두고 브라우저에서 실행 테스트해 보시면 됩니다.
정상적으로 막혔다면 403 Forbidden 혹은 다운로드 시도 등으로 나타납니다.
GPT님에게 문의한 결과를 공유드려요~ 혹시 틀린부분이 있다면 답변 부탁드립니다.
축하합니다. 첫댓글 포인트 43포인트를 획득하였습니다.