CVE-2025-22381CVE-2025-22381是Aggie 2.6.1版本中存在的一个高危主机头(Host Header)注入漏洞,CVSS评分为8.2分。该漏洞位于Aggie的忘记密码(forgot password)功能模块中,攻击者可以通过构造恶意的HTTP Host头请求,劫持密码重置流程中的链接生成逻辑,从而实现对任意用户账户的密码重置攻击。Aggie是一款开源的社交媒体聚合与威胁情报分析工具,由TID-Lab团队开发和维护,广泛应用于安全研究人员进行社交媒体数据采集与分析场景。该漏洞的CVSS向量为CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:L,表明该漏洞通过网络即可远程利用,无需任何认证权限和用户交互即可触发,对系统机密性造成高影响,同时对可用性存在轻微影响。该漏洞已于2025年10月16日正式披露,其根本原因在于应用在生成密码重置邮件或链接时,未对HTTP请求头中的Host字段进行严格校验,攻击者可以通过伪造Host头将密码重置链接指向恶意服务器,进而窃取用户的密码重置令牌或直接接管用户账户。由于密码重置功能是大多数Web应用的核心安全功能之一,此类漏洞一旦被利用,可能导致大规模账户接管事件,对用户数据安全和系统声誉造成严重影响。
Aggie 2.6.1的忘记密码功能在处理用户密码重置请求时,未对传入的HTTP Host头进行充分的验证和过滤。具体技术原理如下:当用户提交忘记密码请求时,服务器端会根据请求中的Host头信息构建密码重置链接,并将该链接通过邮件发送给目标用户。正常的密码重置链接格式应为:https://[合法域名]/reset-password?token=[随机令牌]。然而,由于代码中直接使用了request.host或类似的HTTP头信息来拼接URL,攻击者可以通过修改HTTP请求中的Host头字段,将密码重置链接中的域名部分替换为攻击者控制的服务器地址。攻击者利用方式如下:首先,攻击者向目标应用的忘记密码接口发送POST请求,并在请求头中伪造Host字段为攻击者控制的域名;接着,服务器在处理该请求时,使用被伪造的Host头生成密码重置链接并发送给目标用户的注册邮箱;目标用户收到邮件后点击重置链接,密码重置令牌将被发送到攻击者的服务器;攻击者获取该令牌后,即可在合法网站上使用该令牌重置目标用户的密码,从而完全接管受害者账户。整个攻击过程无需任何认证凭据,无需与目标用户进行交互,且可以通过自动化工具批量执行,对系统安全构成严重威胁。