6. 启用了不安全的 HTTP 方法
解决办法:修改web工程中或者服务器web.xml,增加安全配置信息,禁用不必要HTTP方法
<!--解决安全性问题:启用不安全HTTP方法 --> <security-constraint> <web-resource-collection> <url-pattern>/*</url-pattern> <http-method>PUT</http-method> <http-method>DELETE</http-method> <http-method>HEAD</http-method> <http-method>OPTIONS</http-method> <http-method>TRACE</http-method> </web-resource-collection> <auth-constraint></auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> </login-config> |
7. 会话 cookie 中缺少HttpOnly属性
解决办法:在过滤器中增加对请求响应信息头的设定
//解决用户的cookie可能被盗用的问题,减少跨站脚本攻击
resp.setHeader("Set-Cookie", "name="+newSimpleDateFormat("yyyy-MM-ddHH:mm:ss").format(new Date())+"; Secure; HttpOnly");
8. 发现 Web 应用程序源代码泄露模式
解决办法:针对代码注释中出现的部分源代码进行清除;
9. 自动填写未对密码字段禁用的 HTML 属性
解决办法:在密码输入框中增加autocomplete="off" 属性
10. 发现内部 IP 泄露模式
解决办法:针对代码中出现的IP地址进行清除;
11. 检测到应用程序测试脚本
解决办法:针对代码中出现的测试脚本文件进行清除;脚本文件主要包括以test.php、test.asp、test.cgi、test.html 等;并对一些包含相关的敏感字符文件名称进行修改;敏感字符包括:test、old等;
12. Unix 文件参数变更
解决办法:通过建立过滤器方法,增加对所有用户输入信息中是否包含“..”(两个点)字符串进行清理过滤。具体实现可参考结合1.SQL注入文件写入的解决方法;
13. Windows 文件参数变更
解决办法:通过建立过滤器方法,增加对所有用户输入信息中是否包含“..”(两个点)字符串进行清理过滤。具体实现可参考结合1.SQL注入文件写入的解决方法;
14. 链接注入(便于跨站请求伪造)
解决办法:通过建立过滤器方法,增加对请求响应信息来源进行判断过滤及对所有用户输入信息进行清理过滤。通过清理过滤用户输入所包含的危险字符,便可能防 止恶意的用户导致应用程序执行计划外的任务,例如:启动任意 SQL 查询、嵌入将在客户端执行的Javascript代码、运行各种操作系统命令等。具体实现可参考结合1.SQL注入文件写入 与3.跨站点请求伪造 的解决方法;
15. 通过框架钓鱼
解决办法:通过建立过滤器方法,增加对请求响应信息来源进行判断过滤及对所有用户输入信息进行清理过滤。通过清理过滤用户输入所包含的危险字符,便可能防 止恶意的用户导致应用程序执行计划外的任务,例如:启动任意 SQL 查询、嵌入将在客户端执行的Javascript代码、运行各种操作系统命令等。具体实现可参考结合1.SQL注入文件写入 与3.跨站点请求伪造 的解决方法;
16. 不充分帐户封锁
解决办法:对用户登录错误次数进行限制,并在一定的时间内不请允许再登录;
17. 检测到文件替代版本
解决办法:针对产品中所有开头为“Copy of”、“_”、“.”、“~”和“Old”的文件进行清理;
18. 发现电子邮件地址模式
解决办法:针对代码中出现的电子邮件地址进行清除;
19. HTML 注释敏感信息泄露
解决办法:针对代码注释中出现的敏感信息进行清除;敏感信息包括:注释的源代码、电子邮件、IP地址等;