目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1000

100.0%

CWE-396 对通用异常声明Catch语句 类漏洞列表 2

CWE-396 对通用异常声明Catch语句 类弱点 2 条 CVE 漏洞汇总,含 AI 中文分析。

CWE-396 属于代码逻辑缺陷,指开发者捕获了过于宽泛的异常类(如通用 Exception)。攻击者可能利用此漏洞掩盖关键错误,导致程序进入不可预知的状态或绕过安全检查,从而引发拒绝服务或逻辑绕过。为避免此问题,开发者应精确捕获特定异常类型,避免使用通用异常类,确保错误处理代码清晰且具备针对性,从而提升系统的健壮性与安全性。

MITRE CWE 官方描述
CWE:CWE-396 声明捕获通用异常 (Declaration of Catch for Generic Exception) 英文:捕获过于宽泛的异常 (Catching overly broad exceptions) 会促进复杂的错误处理代码的产生,而这些代码更有可能包含安全漏洞 (security vulnerabilities)。 多个 catch 块可能会变得冗长且重复,但通过捕获像 Exception 这样的高层级类 (high-level class) 来“合并” catch 块,可能会掩盖那些需要特殊处理或在此程序阶段不应被捕获的异常。捕获过于宽泛的异常本质上违背了语言中类型化异常 (typed exceptions) 的设计目的,并且如果程序不断扩展并开始抛出新的异常类型,这种情况可能会变得特别危险。这些新的异常类型将不会得到任何关注。
常见影响 (1)
Non-Repudiation, OtherHide Activities
A generic exception can hide details about unexpected adversary activities by making it difficult to properly troubleshoot error conditions during execution.
代码示例 (1)
The following code excerpt handles three types of exceptions in an identical fashion.
try { doExchange(); } catch (IOException e) { logger.error("doExchange failed", e); } catch (InvocationTargetException e) { logger.error("doExchange failed", e); } catch (SQLException e) { logger.error("doExchange failed", e); }
Good · Java
try { doExchange(); } catch (Exception e) { logger.error("doExchange failed", e); }
Bad · Java
CVE ID标题CVSS风险等级Published
CVE-2026-40149 PraisonAI 安全漏洞 — PraisonAI 7.9 High2026-04-09
CVE-2026-27482 Ray 安全漏洞 — ray 5.9 Medium2026-02-21

CWE-396(对通用异常声明Catch语句) 是常见的弱点类别,本平台收录该类弱点关联的 2 条 CVE 漏洞。