四、 低危常见问题
1. 检测到隐藏目录
这个问题是AppScan直接请求项目中存在的文件夹名称,观察项目反馈。反馈分为几种,不作说明,只要配置IIS,并且代码做管控就可以了。方法如下:
a.1首先是IIS配置:
2. 启用了Mircrsoft Asp.Net调试
设定webconfig中节点:compilation debug=”false”
3. 已解密的_ViewStatus参数
增加节点machineKey
4. 自动填写未对密码字段禁用的HTML属性
对密码栏位增加属性:autocomplete="off"
5. 发现电子邮件地址模式
删除项目所有注释中涉及到的邮件地址
五、 如何问题归类
项目中加了check SQL盲注的代码后,确实SQL盲注,SQL注入,SQL旁路注入,跨站点脚本编制都没有了,但是出现了这么多新的问题(图一),WHY????
(图一)
仔细分析每个错误,如下几个问题,报的错都是一样的,所以这些应该是一类的问题,只要解决一个地方,就可以消除这些错误。
从四个红色框中的内容,尤其是最下面的一段script脚本(项目开发中自定义脚本)可以发现代码已经检测到这个请求是有问题的,也将当前页面跳转,但是StatusCode仍然是200,这显然是错误的,所以修改StatusCode状态为400,或404即可。
修改之后测试结果如下:状态是404,问题消除。
六、 处理问题注意点
a. 首先看报告中的修订建议,如果没有明确的建议,则看请求/响应部分,目前看来,所有的问题在这里都能找到原因和答案。
b. 设定跳转时,请设定StatusCode,不管是global中的跳转还是代码里面由于某种校验失败而执行的跳转(非常重要)
c. 不要过分纠结某个问题和标题,AppScan同一个问题会造成很多的衍生问题,注意看请求/响应中的请求地址,响应状态和推理,属于同类问题的一种解决方法即可