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

目标: 1000 元 · 已筹: 1359 元

100%

CWE-488 对错误会话暴露数据元素 类漏洞列表 34

CWE-488 对错误会话暴露数据元素 类弱点 34 条 CVE 漏洞汇总,含 AI 中文分析。

CWE-488 属于会话状态管理漏洞,指产品未能有效隔离不同会话的状态边界,导致数据错误地泄露或混用。攻击者常利用单例对象(如 Servlet)或共享对象池中的成员变量,使敏感数据从一个会话“渗漏”至另一个会话,从而窃取信息或实施越权操作。开发者应避免在单例或共享对象中存储会话相关数据,确保每个请求拥有独立的状态上下文,并严格实施会话隔离机制。

MITRE CWE 官方描述
CWE:CWE-488 数据元素暴露给错误的会话(Wrong Session) 英文:产品未能充分执行不同会话状态之间的边界限制,导致数据被提供给错误的会话或由错误的会话使用。 数据可以通过单例对象(如 Servlets)的成员变量或共享池中的对象从一个会话“渗漏”到另一个会话。在 Servlets 的情况下,开发人员有时不理解,除非 Servlet 实现了 SingleThreadModel 接口,否则 Servlet 是一个单例;即只有一个 Servlet 实例,该单一实例会被重复使用以处理由不同线程同时处理的多个请求。常见的结果是,开发人员以这样一种方式使用 Servlet 成员字段,即一个用户可能会无意中看到另一个用户的数据。换句话说,在 Servlet 成员字段中存储用户数据会引入数据访问竞争条件(Race Condition)。
常见影响 (1)
Confidentiality Read Application Data
缓解措施 (3)
Architecture and Design Protect the application's sessions from information leakage. Make sure that a session's data is not used or visible by other sessions.
Testing Use a static analysis tool to scan the code for information leakage vulnerabilities (e.g. Singleton Member Field).
Architecture and Design In a multithreading environment, storing user data in Servlet member fields introduces a data access race condition. Do not use member fields to store information in the Servlet.
代码示例 (1)
The following Servlet stores the value of a request parameter in a member field and then later echoes the parameter value to the response output stream.
public class GuestBook extends HttpServlet { String name; protected void doPost (HttpServletRequest req, HttpServletResponse res) { name = req.getParameter("name"); ... out.println(name + ", thanks for visiting!"); } }
Bad · Java
CVE ID 标题 CVSS 风险等级 Published
CVE-2024-6162 Red Hat Undertow 资源管理错误漏洞 7.5 High 2024-06-20
CVE-2024-1223 PaperCut NG 安全漏洞 — PaperCut NG, PaperCut MF 4.8 Medium 2024-03-14
CVE-2024-27935 Deno 安全漏洞 — deno 7.2 High 2024-03-06
CVE-2023-6519 Mia Technology MIA-MED 安全漏洞 — MİA-MED 7.5 High 2024-02-08

CWE-488(对错误会话暴露数据元素) 是常见的弱点类别,本平台收录该类弱点关联的 34 条 CVE 漏洞。