关于Fortify 代码安全扫描常见问题

#Often MisusedFile Upload

问题说明:

jsptype=file的输入框需要进行文件安全性校验

解决方案:

jsp页面中没有很好的检验方式,所以检验在后台校验,采用文件后缀名+文件头信息来判断文件类型。文件头信息验证可参考:http://blog.csdn.net/honwellhsueh/article/details/12913591


#Unreleased  ResourceSockets

问题说明:

没有正确释放资源

解决方案:

涉及到Connection 相关操作,使用完毕后要正确释放资源。


#Mass AssigmentInsecure Binder Configuration

问题说明:

不安全的参数绑定配置,是指我们的controller中xxxMethod(User user) 未明确指定接口所需属性,而是把整个对象所有属性暴露出去。

解决方案:

接口中入参对象未明确指定接口所需属性,而是把整个对象所有属性暴露出去。接口入参如果是某个具体对象需要使用@RequestBody标签,不需要的属性可用@JsonIgnore注解,前端接口调用时需使用标准json格式传递参数。方案参考:https://stackoverflow.com/questions/46840174/what-is-the-solution-for-mass-assignment-insecure-binder-configuration-vulnerab



#Insecure Randomness

问题说明:

不安全的随机数,一般出现在js中使用到Math.random()

解决方案:

如果基于插件封装的js不利于修改,要么更换插件,要么看下有没有更高版本的进行,实在不行只能找相关安全测试工程师是否可以不修改。-0 0


#Log Forging

问题说明:

伪造日志,指我们在用httpclient 或者restTemplate调用第三方接口时,习惯性的把response的信息直接就log.info(response.getXXX) ,可能会发生返回信息中会存在字符串“twenty-one%0a%0aINFO:+User+logged+out%3dbadguy”,则日志中
就会记录以下条目:
INFO:Failed to parse val=twenty-one
INFO:User logged out=badguy

解决方案:

对于接口回调函数返回信息需要记录到日志中时,先进行信息的解码,发生错误时自定义错误提示信息.具体参考:http://blog.csdn.net/acmman/article/details/62446022








  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值