lamp架構-訪問控制-禁止php解析、屏蔽curl命令訪問
阿新 • • 發佈:2018-03-07
屏蔽curl訪問 訪問控制 禁止php解析 網頁防止上傳木馬 lamp架構-訪問控制-禁止php解析
有的網站論壇開啟了上傳圖片功能,導致黑客木馬捆綁圖片上傳到服務器,通過訪問php來提升服務器後臺權限,
這裏我們就需要將上傳圖片的目錄禁止訪問php文件,來達到防止黑客木馬上傳上來通過訪問web來運行木馬的作用;
編輯虛擬配置文件
vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
增加代碼
<Directory /data/wwwroot/szl.com/upload> php_admin_flag engine off <FilesMatch (.*)\.php(.*)> Order allow,deny Deny from all </FilesMatch> </Directory>
配置生效
/usr/local/apache2.4/bin/apachectl -t
/usr/local/apache2.4/bin/apachectl graceful
測試:
訪問szl.com/upload/123.php,禁止訪問403
curl -x127.0.0.1:80 szl.com/upload/123.php
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>403 Forbidden</title> </head><body> <h1>Forbidden</h1> <p>You don‘t have permission to access /upload/123.php on this server.<br /> </p> </body></html>
訪問控制-user_agent
防止多肉雞洪水攻擊,也就是超出服務器正常訪問的訪問,屏蔽掉一curl的訪問;
user_agent:使用curl訪問或使用瀏覽器訪問,會產生日誌文件,名字就是curl或瀏覽器名稱;
編輯虛擬配置文件
vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
增加配置
<IfModule mod_rewrite.c> //應用rewrite模塊 RewriteEngine on //啟用規則 RewriteCond %{HTTP_USER_AGENT} .*curl.* [NC,OR] //定義規則1,NC不區分大小寫、or或、*curl.*訪問中有curl的禁止 RewriteCond %{HTTP_USER_AGENT} .*baidu.com.* [NC] //定義規則2,不區分大小寫,訪問agent為baidu.com的 RewriteRule .* - [F] </IfModule>
檢查http.conf文件是否加載rewrite模塊
/usr/local/apache2.4/bin/apachectl -M |grep rewrite
生效配置
/usr/local/apache2.4/bin/apachectl -t
/usr/local/apache2.4/bin/apachectl graceful
測試
使用curl訪問szl.com/admin.php,拒絕訪問,403
curl -x127.0.0.1:80 szl.com/admin.php
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don‘t have permission to access /admin.php
on this server.<br />
</p>
</body></html>
定義其他agent訪問,成功200
curl -A "szl szl" -x127.0.0.1:80 szl.com/admin.php -I
HTTP/1.1 200 OK
Date: Wed, 07 Mar 2018 10:24:27 GMT
Server: Apache/2.4.29 (Unix) PHP/5.6.30
X-Powered-By: PHP/5.6.30
Content-Type: text/html; charset=UTF-8
lamp架構-訪問控制-禁止php解析、屏蔽curl命令訪問