一.防御策略
- 命令注入漏洞
a) 例 str1 = $_POST[‘cmd’],在str1 前连接 字符”#”注释字符,str1 = “#”. $_POST[‘cmd’]
b)
- 上传文件漏洞
a) 注释上传写入代码.
b)
- 文件包含漏洞
a) 修改php.ini文件
allow_url_fopen on
allow_url_include on
修改为
allow_url_fopen off
allow_url_include off
b)
- 远程代码执行漏洞
a) 注释危险函数:system() exec_shell() eval() assert() create_function() preg_replace() file_put_contents()
b)
- 缓冲区溢出漏洞
a) 目前参考”7.Linux权限漏洞”,进行防御.
b)
- 系统后门漏洞
a) 直接删除后门程序
b) “Ps –ef|grep bash”命令查看是否有bash后门程序
c) “ss -ltnp”命令查看,是否有后门程序监听端口
d) 从上两个步骤找到该程序pid,用”kill pid”命令结束后门bash程序
e) 在web网站目录下,查看文件内容找到webshell或一句话木马,进行删除文件或注释代码
f)
- Linux权限漏洞
a) “PS –ef|grep httpd”命令查看 Apache服务是否是root执行该服务,若是修改/etc/httpd/httpd.conf 文件找到”user” “group”字段后加上apache apache,重启httpd服务。使Apache服务是apache用户执行该服务.
b) 修改/bin/cat /bin/echo等关键命令二进制文件,改成其名称,让其攻击者无法利用bash读取flag文件内容.
c) 修改/root/flagxxxxx.txt文件的权限,
i. chmod 000 /root/flagxxxxx.txt
ii. chown apache:apache /root/flagxxxxx.txt
d)
1.防XSS
作为body文本输出,作为html标签的属性输出:
比如:${username},
此时的转义规则如下:
< 转成 <
> 转成 >
& 转成 &
" 转成 "
' 转成 '
javascript事件
除了上面的那些转义之外,还要附加上下面的转义:
\ 转成 \\
/ 转成 \/
; 转成 ;(全角;)
e) URL属性
如果