java – 日志锻造强化修复

前端之家收集整理的这篇文章主要介绍了java – 日志锻造强化修复前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Fortify SCA来查找我的应用程序中的安全问题(作为大学的作业).我遇到了一些我无法摆脱的“日志伪造”问题.

基本上,我记录一些来自用户从Web界面输入的值:

logger.warn("current id not valid - " + bean.getRecordId()));

而Fortify则将此报告作为日志伪造问题,因为getRecordId()返回一个用户输入.

我已经跟随了这个article,我用空格取代了“新线”,但仍然有报道

logger.warn("current id not valid - " + Util.replaceNewLine(bean.getRecordId()));

任何人都可以提出解决这个问题的方法吗?

解决方法

我实际上是你用来解决日志注入问题的文章的作者.希望这是有帮助的.

Vitaly对于Fortify是正确的. Fortify需要建立一个“自定义规则”.

它可能是一个数据流清理规则.一个基本的例子可以在这里找到:http://www.cigital.com/newsletter/2009-11-tips.php.如果你拥有Fortify,你的产品文档中应该有一个自定义规则写作指南.

我不知道你会使用什么污点,但它会看起来像“-LOG_FORGING”.当数据通过您的实用程序方法时,您将基本上编写一条规则来删除日志伪造“污点”. Fortify会假设通过该数据的任何数据现在可以安全地写入日志,并且不会导致日志伪造.

猜你在找的Java相关文章