我们正在使用反射API来解析方法调用
Object fData = method.invoke(srchFilterDTO, (Object[]) null);
srchFilterDTO
对象来自UI休息调用,作为method.invoke()
的输入。
所以Fortify抱怨不安全的反射,因为未经验证的数据(srchFilterDTO
对象)被传递给method.invoke()
调用。我不确定如何验证,因为它的对象不是字符串。
基本上我正在寻找一些建议来进行验证。请分享您的想法。
答案 0 :(得分:0)
优选地,需要更多细节。但是,您说的是Object的实例是由UI REST调用确定的。您是指实例,还是实例化的对象类型?
它可能取决于程序的预期目的,但对象的类型是否需要完全动态?也许白名单方法可用于确定对象的类型并拒绝任何其他对象。或者,这可以是应用程序的预期设计,也可以是设计缺陷。
如果没有程序的进一步上下文,很难说,所以进一步的解释,例如srchFilterDTO
来自哪里以及如何实例化将是有用的。