使用appscan安全扫描问题以及解决办法

最近在做安全扫描,把遇到的一些问题以及一些解决方法记录下,以备后用.

扫描软件: IBM Security AppScan Standard  规则: 17441

1. 已解密的登录请求 (高)

- 传递的参数名称避免使用语义明确的英文单词
> 如UserID, UserPwd, Password等
- 传递参数中包含敏感数据时使用post方式提交并进行加密传输
- 采用ajax方式提交表单时,提交的参数名称应与对应的表单控件name属性不同或者去掉name属性,通过ID属性取值.
 
2. 查询中的密码参数(高)
- 同上
 
3. 跨站请求伪造(中)
- 在请求开始时验证referer
- 使用Html.AntiForgeryToken()方法和 ValidateAntiForgeryToken特性
> 注意:在这种情况下扫描有时会出现302无法通过扫描的问题,暂时不知道如何解决,但并不影响安全性.
 
4. 跨站点脚本编制,SQL注入(高)
- 在请求开始时检查所有传参(url,form,cookie),过滤掉所有危险关键字
>注意:关键字包括js,sql,MongoDB中的特殊关键字,已经以上关键字的url编码和16进制形式

5. 使用 HTTP 动词篡改的认证旁路(中)
- 可以在请求开始时检测请求方式并进行限制也可以配置路由约束
- 尽量在控制器上添加特性加以限制
 
6. 注销后会话未失效(高)
- 清空session,取消当前会话,ASP.NET_SessionId的cookie置空
posted @ 2019-08-15 16:48  coder_zac  阅读(3823)  评论(0编辑  收藏  举报