CVE-2013-10075Apache::Session是Perl语言中广泛使用的会话管理库。在1.94及之前版本中,发现了一个严重的逻辑漏洞。当应用使用Apache::Session::Store::File或Apache::Session::Store::DB_File作为存储后端时,若请求一个已失效或被删除的会话ID,系统不会拒绝访问,而是错误地重新创建该会话。这导致本应被清除的敏感数据被意外复活,攻击者可利用此行为维持非法访问权限。
该漏洞源于Apache::Session的File和DB_File存储后端在处理不存在会话时的逻辑缺陷。正常的安全逻辑要求,当会话被删除后,针对该ID的后续请求应被视为无效。然而,受影响版本的`tie`机制在检测到会话文件不存在时,会自动生成一个新的会话文件并将该ID分配给新会话,而不是报错。攻击者只需获取一个曾经有效的会话ID(即使已注销),向服务器发送请求,即可触发该机制使会话“复活”。由于CVSS评分显示无需认证且影响机密性和完整性,攻击者可借此绕过身份验证,接管用户账户或访问已删除的敏感数据。