设置安装mod_security的教程
系统:4.10 rwF#Zon4 apache:1.3.x 1@+ "#!A @)@QH^T mod_security是一个增加apache安全性的模块。支持apache1.3.x 和 apache2。 `/Bvf/l% WzMW,& 安装指南如下: FA;N3 01x 1.cd /usr/ports/www/mod_security 4T`/M|wk 2.make clean 8GN! 3.make install <DALs2RVN $x SP~wW 简要配置指南: <`S`qdD| 1.编辑你的apache配置文件(httpd.conf),找到下面两行 <l<7pO`Xs #LoadModule security_module libexec/apache/mod_security.so {&~>x>w #AddModule mod_security.c /pmq@iThm 将注释去掉,即删除“#”。 P>+|;Cp/]8 xO$2'yj/7 2.在httpd.conf末尾加入下面的这些,需要强调的是,一下内容出自www.modsecurity.org的quick example,属于快速配置,有可能会让你的web server处于无法访问状态,请一定要注意看注释。 *DZqG43| f0pXQ_ # 打开过滤引擎开关。如果是Off,那么下面这些都不起作用了。 l#]c {tJ SecFilterEngine On 4'lh3}w6Y Oas>/!Q # 把设置传递给字目录 T_d.)w@ SecFilterInheritance Off esU?T|p Do^ 7V/ # 检查url编码 m6M{WWN2 SecFilterCheckURLEncoding On >_vs3:5: Y(4%!] $;! # 检测内容长度以避免堆溢出攻击 oVV$XO/b SecFilterForceByteRange 32 126 p yws 3?Fx,f # 日志的文件和位置。一定要先建立好目录,否则apache重新启动的时候会报错。 XiNq>;@2g SecAuditLog logs/audit_log Aib#mFZ [; ?IeQ` # debug的设置 <Jk!kg5 SecFilterDebugLog logs/modsec_debug_log jRS<:Aa.B SecFilterDebugLevel 0 w/R7%o'- qxG JTS # 当匹配sh的时候,重新定向到一个特殊的页面,让攻击者知难而退 'X'I9_:Mt SecFilter sh redirect:http://www.sina.com ?> LB|Yq-2 K1^0 - # 检测POST数据,注意,请甚用这个开关,可能会导致一些post页面无法访问。详细的信息,请察看www.modsecurity.org的文档,其中有详细的post编码要求。 A+K4_s SecFilterScanPOST On #eRx)= ,x_kEI7]. # 缺省的动作 `] fm SecFilterDefaultAction "deny,log,status:406" DZX}=VS 6Jy HfJ # 从新定向用户 2~'A~TY SecFilter xxx redirect:http://www.sina.com ^O{W $ Z|#"-?| # 防止操作系统关键词攻击 <rp#5 SecFilter /etc/password JMA#W,? ~ {rhL0c3 # 防止double dot攻击 7~y* ruI) SecFilter "/././" b=n(]C%>j d>k56wdm7 ## 防止跨站脚本(CSS)攻击 Fr-S+JP/ SecFilter "<( |/n)*script" K5p%wjQ1 # Prevent XSS atacks (HTML/Javascript injection) w7NAY!i, SecFilter "<(.|/n)+>" A(3Qs` vl _VfJV?A # 防止sql注入式攻击 /ti#MtA6 SecFilter "delete[[:space:]]+from" $Oh|nq( SecFilter "insert[[:space:]]+into" c nb4]TG?M SecFilter "select.+from" +ji5%656 O x d6Wh #下面是限制了upload.php文件只能用来上传jpeg.bmp和gif的图片 $%eX9n <Location /fileupload.php> hD-uX16em) SecFilterInheritance Off U&V+A rq SecFilterSelective POST_PAYLOAD "!image/(jpeg|bmp|gif)" B`8ThelL[ </Location> Q:> RNe @E{8-1)y </IfModule> RuCx.x u)1 f{k #MfYQ.]S 下面的官方站点可以找到相关下载和详细的文档,强烈建议您在配置的时候,查阅每个指令的用途和禁忌,否则您的网站很可能会无法访问。 D&"&M c<r http://www.modsecurity.org "},f{,@] QRbq*a| 本文参考了 包子@郑州大学网络安全园 的文章,文章地址: S0#t31]33 http://www.phpx.com/index.php?itemid=241 qjBBBRs _l<83a 1 c6t|h_an [activating module `security' in /usr/local/etc/apache2/httpd.conf] '"p)!2 <IfModule mod_security.c> @"[{|p~ # 打开或者关闭过滤引擎 Vg#FpUk? SecFilterEngine On TEB`PR?L # 设置缺省的动作 6}si R%vr SecFilterDefaultAction redirect:http://www.bbnl.org/ Y'#j^%0@G+ 或者 /G8Hh= SecFilterDefaultAction "deny,log,status:404" }=&;n.8: # 把设置传递给字目录 on<ZOz09" SecFilterInheritance Off `Aq {cZi1 # 检测URL编码是否正确 tbX {x ? SecFilterCheckURLEncoding On DQH$Y:09 # ServerSignature ^y+kc-il SecServerSignature "HackWayHttpd/0.5.924 (Unix/SSL)" gY+dL;Nu$5 # 检测内容长度以避免堆溢出攻击 KtaLM E5 SecFilterForceByteRange 32 126 R2Re{m&u # 日志文件的位置和名字 GI%iu/#$U SecAuditEngine RelevantOnly | >}b 63 SecAuditLog /var/log/audit.log Q>ugH8 # debug设置 o`Hc/4">_J # SecFilterDebugLog /var/log/modsec_debug.log zdmJqAh4 # SecFilterDebugLevel 0 +U vO@ # 检测POST数据 bpp$GX SecFilterScanPOST On = 4]-U?g # 当匹配sh的时候,重新定向到一个特殊的页面,让攻击者知难而退 kE0$3bG SecFilter sh redirect:http://www.pc51.net/ LhF2%mhs # Only check the body of the POST request ^-&q(NU #过滤一些敏感的东西,我们使用*是为了攻击者使用/etc/./passwd来绕开检测 ?47/tp/t SecFilter /etc/*passwd W&QMxT%5, SecFilter /bin/*sh `WQuIx' . # 防止double dot攻击,也就是类似http://www.test.com/openfile.php?path=/../../..,虽然这个漏洞看似弱智,但是很多网站都有的,比如CERNET某大学某图片站 s nit nm SecFilter "/././" ?/(/Nrz/ # 防止跨站脚本(XSS)攻击 jK;!l!jB SecFilter "<[[:space:]]*script" G!gGo;$7I SecFilter "<(.|/n)+>" 6=//r$5 # 防止SQL插入(SQL Injection)攻击 "bPavsk SecFilter "delete[[:space:]]+from" DHrU=z SecFilter "insert[[:space:]]+into" uljV99n SecFilter "select.+from" ZYrk # 只允许GET|POST|HEAD J.wpXen5 SecFilterSelective REQUEST_METHOD "!(GET|POST|HEAD)" j_9'V {Pf # Nmap Version Scan y9.Jl> SecFilterSelective THE_REQUEST "^(HELP|default|/||TNMP|DmdT|/$" h<[^:xh>M # 下面是限制了upload.php文件只能用来上传jpeg.bmp和gif的图片 <A7?IY-c= # <Location /upload.php> ~N}*H3h! # SecFilterInheritance Off Y!,JdVd^ # SecFilterSelective POST_PAYLOAD "!image/(jpeg|bmp|gif)" tFhd! # </Location> D?b}$ <Location /phpMyAdmin> 1<5 3 Y6 SecFilterEngine Off fNQZR </Location> I;%.L78{k </IfModule>本文来自www.pc51.NetTrackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1473814