modsecurity-crs: http://sourceforge.net/projects/mod-security/files/modsecurity-crs/0-CURRENT/

2、安裝

1)啟用 mod_unique_id 模塊
2)驗證服務器安裝了最新版本libxml2函數庫
3)停止Apache httpd

4)解壓

gzip -d modsecurity-apache_2.6.3.tag.gz
tar xvzf modsecurity-apache_2.6.3.tar
gzip -d modsecurity-core-rules_2.6.tar.gz
tar xvzf modsecurity-core-rules_2.6.tar.gz

5)配置

./configure

6)編譯并測試ModSecurity

make
make test

7)安裝

make install

修改 http.conf,啟用ModSecurity,在httpd.conf文件添加:

LoadFile /usr/lib/libxml2.so
LoadModule security2_module modules/mod_security2.so

8)重啟apache

到這里已經安裝了ModSecurity,你可以查看配置指令文檔:http://sourceforge.net/apps/mediawiki/mod-security/index.php?title=Reference_Manual

ubuntu上安裝Apache2 ModSecurity及自定義WAF規則

雖然VPS使用了云WAF功能,但還是有點小擔心,為了雙重保險,決定使用modsecurity來定制規則,以下介紹如何為apache服務器配置ModSecurity防護罩(modsecurity目前也支持Nginx,IIS) 。

本次選擇使用包管理器來安裝,因為每次使用源碼包的安裝方式,都會被詭異的庫依賴錯誤弄得發型都抓亂。

安裝環境:

OS:Ubuntu 14.04.1 LTS
Apache: Apache/2.4.7 (Ubuntu)

第一步:安裝apache

我建議安裝Apache最好用apt-get安裝,這樣就可以少很多的庫支持!!!!如果不嫌麻煩的話可以用源碼安裝

輸入apt-get install apache2

如果提示沒有這個軟件包就更新一下軟件包 apt-get install update

這步安裝好了以后apache就可以提供服務了,輸入127.0.0.1就可以訪問本地網站了

第二步:安裝modsecurity

這個也和上邊的一樣,使用

apt-get install libxml2 libxml2-dev libxml2-utils libaprutil1 libaprutil1-dev libapache2-modsecurity

安裝好了以后就可以查看你的modsecurity的版本號是多少,使用

dpkg -s libapache2-modsecurity | grep Version

第三步 配置modsecurity

service apache2 reload

該命令生效后,會在/var/log/apache2/目錄下生成modsecurity的日志文件modsec_audit.log

使用modsecurity核心規則集

將我們想起用的規則集放置在以下目錄下

cd /usr/share/modsecurity-crs/activated_rules/

選擇啟用base規則集

for f in $(ls ../base_rules/); do ln -s ../base_rules/$f; done

修改apache模塊配置,啟用規則集

注意:modsecurity 2.7版本與2.6版本的配置文件有些區別

(1)2.7版本

vim /etc/apache2/mods-available/security2.conf
修改

<IfModule security2_module>
# Default Debian dir for modsecurity\\\’s persistent data
SecDataDir /var/cache/modsecurity
# Include all the *.conf files in /etc/modsecurity.
# Keeping your local configuration in that directory
# will allow for an easy upgrade of THIS file and
# make your life easier
IncludeOptional /etc/modsecurity/*.conf
IncludeOptional /usr/share/modsecurity-crs/*.conf
IncludeOptional /usr/share/modsecurity-crs/activated_rules/*.conf
</IfModule>

(2)2.6版本

‍‍vim /etc/apache2/mods-available/mod-security.conf‍‍
修改

Include /etc/modsecurity/*.conf
Include /usr/share/modsecurity-crs/*.conf
Include /usr/share/modsecurity-crs/activated_rules/*.conf

第四步:啟用modsecurity模塊

a2enmod headersa2enmod security2 (版本2.6: a2enmod mod-security)service apache2 restart

第五步:測試真實的攻擊payload

看是否能攔截

http://www.tanjiti.com/?case=archive&act=orders&aid[typeid`=1 and ord(mid((select/**/concat(username,0x3a,password) from cmseasy_user),1,1))<49#]=1
我們發現請求包被403攔截了,

可以查看modsecurity日志文件看具體的攔截情況

tail /var/log/apache2/modsec_audit.log
message: Access denied with code 403 (phase 2). Pattern match (/\\\\\\\\*!?|\\\\\\\\*/|[';]–|–[\\\\\\\\s\\\\\\\\r\\\\\\\\n\\\\\\\\v\\\\\\\\f]|(?:–[^-]*?-)|([^\\\\\\\\-&])#.*?[\\\\\\\\s\\\\\\\\r\\\\\\\\n\\\\\\\\v\\\\\\\\f]|;?\\\\\\\\x00) at ARGS_NAMES:aid[typeid`=1 and ord(mid((select/**/concat(username,0x3a,password) from cmseasy_user),1,1))
<49#].
[file /usr/share/modsecurity-crs/activated_rules/modsecurity_crs_41_sql_injection_attacks.conf] [line 49] [id 981231] [rev 2] [msg SQL Comment Sequence Detected.] [data Matched Data: /* found within ARGS_NAMES:aid[typeid`=1 and ord(mid((select/**/concat(username,0x3a,password) from cmseasy_user),1,1))<49#]: aid[typeid`=1 and ord(mid((select/**/concat(username,0x3a,password) from cmseasy_user),1,1))<49#]] [severity CRITICAL] [ver OWASP_CRS/2.2.8] [maturity 8] [accuracy 8] [tag OWASP_CRS/WEB_ATTACK/SQL_INJECTION] [tag WASCTC/WASC-19] [tag OWASP_TOP_10/A1] [tag OWASP_AppSensor/CIE1] [tag PCI/6.5.2]

可以看到是被base規則集的modsecurity_crs_41_sql_injection_attacks.conf文件的規則981231攔截,命中了SQL注釋語句。
對于網站結構比較了解的站長們,完全可以自定義規則,特別是白名單規則來防護我們的網站。

第六步:自定義WAF規則

規則語法快速入門參考 ModSecurity SecRule cheatsheets

WAF規則實例1:上傳文件名白名單,只允許上傳圖片文件

vim /usr/share/modsecurity-crs/activated_rules/MY.conf
添加規則

SecRule FILES !\\\\\\\\.(?i:jpe?g|gif|png|bmp)$ deny,tag:\\\’WEB_ATTACK/FILEUPLOAD\\\’,msg:\\\’upload no-picture file\\\’,id:0000001,phase:2
測試,上傳php文件

(http的使用參照HTTP發包工具 -HTTPie)
http www.tanjiti.com filename@a.php
我們可以看到請求包被攔截,查看modsecurity日志

more /var/log/apache2/modsec_audit.log
可以看到命中了規則0000001

Message: Access denied with code 403 (phase 2). Match of rx \\\\\\\\.(?i:jpe?g|gif|png|bmp)$ against FILES:filename required. [file /usr/share/modsecurity-crs/activated_rules/MY.conf] [line 1] [id 0000001] [msg upload no-picture file] [tag WEB_ATTACK/FILEUPLOAD]
WAF規則實例2: 上傳文件名中包含進行阻斷

vim /usr/share/modsecurity-crs/activated_rules/MY.conf
添加規則

SecRule FILES @contains deny,tag:'WEB_ATTACK/FILEUPLOAD\\\’,msg:\\\’filename has null character\\\’,id:0000002,phase:2
測試,上傳文件名包含的文件

http www.tanjiti.com filename@a.php.jpeg
我們可以看到請求包被攔截,查看modsecurity日志

more /var/log/apache2/modsec_audit.log
可以看到命中了規則0000002

Message: Access denied with code 403 (phase 2). String match at FILES:filename. [file /usr/share/modsecurity-crs/activated_rules/MY.conf] [line 2] [id 0000002] [msg filename has null character] [tag WEB_ATTACK/FILEUPLOAD]
非常簡單吧,下一步,計劃介紹一下nginx服務器的防護。

注意!!!!!!!!!!!!!!
一旦這樣修改了以后,使用IP地址就顯示403錯誤!!!!!!為了這個錯誤,搞了一天,在網上搜各種403錯誤就是不行,為什么呢
查看errol.log 就可以發現,是modsecurity里面禁止了使用IP訪問!!!!!!使用localhost就可以正常訪問了。。。
所以,看日志是一個很重要的事兒

更多關于云服務器域名注冊,虛擬主機的問題,請訪問三五互聯官網:m.shinetop.cn

贊(0)
聲明:本網站發布的內容(圖片、視頻和文字)以原創、轉載和分享網絡內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。郵箱:3140448839@qq.com。本站原創內容未經允許不得轉載,或轉載時需注明出處:三五互聯知識庫 » Apache下ModSecurity的安裝啟用與配置

登錄

找回密碼

注冊

主站蜘蛛池模板: 麻豆国产传媒精品视频| 亚洲AV无码一二区三区在线播放| 中文字幕乱码熟妇五十中出| 国产精品天天看天天狠| 女同性恋一区二区三区视频| 麻豆麻豆麻豆麻豆麻豆麻豆| 国产精品福利自产拍在线观看| 国产综合色在线精品| 国产在线98福利播放视频| 欧洲性开放老太大| 久久亚洲精品中文字幕馆| 国产区精品福利在线观看精品| 亚洲日韩国产中文其他| 亚洲尤码不卡av麻豆| 日韩不卡无码精品一区高清视频| 大陆熟妇丰满多毛xxxx| 亚洲欧洲日产国码久在线| 国产拗精品一区二区三区| 亚洲国产福利成人一区二区| 99麻豆久久精品一区二区| 亚洲人成网站18禁止无码| 日韩成人一区二区三区在线观看| 色综合视频一区二区三区| 国产热A欧美热A在线视频| 亚洲精品免费一二三区| 亚洲国产理论片在线播放| 风韵丰满熟妇啪啪区老熟熟女| 国产中年熟女高潮大集合| 18禁免费无码无遮挡不卡网站| 人人爽人人爽人人片a免费| 天堂mv在线mv免费mv香蕉| 亚洲中文字幕无码久久2020| 亚洲精品成人福利网站| 免费VA国产高清大片在线| 性一交一乱一伦一| 成人网站av亚洲国产| 亚洲国产精品成人无码区| 国产在线精品国偷产拍| 克东县| 不卡无码人妻一区三区音频| 中文字幕日韩精品人妻|