抛出过于宽泛的异常会导致复杂的错误处理代码,这些代码很可能包含安全漏洞。
声明抛出Exception或Throwable的方法会使调用方难以执行正确的错误处理和错误恢复。例如,Java的异常机制的设置使调用者能够轻松地预测可能出现的错误,并编写代码来处理每个特定的异常情况。
抛出过于宽泛的异常。
声明一个方法抛出泛型形式的异常会使系统失败。
将方法抛出异常的类型具体详细化。
用悟空 软件静态代码检测工具 分析上述程序代码,则可以发现代码中存在着“抛出通用异常”Secure属性” 导致的 代码缺陷,如下图:
抛出通用异常缺陷在CWE中被编号为CWE-397:Declaration of Throws for Generic Exception
本文作者:中科天齐软件安全
本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/170909.html