挖洞经验 | 通过密码重置功能构造HTTP Leak实现任意账户劫持
字数 572 2025-08-18 11:38:28

HTTP Leak攻击与密码重置功能漏洞利用分析

漏洞概述

本文分析了一种通过密码重置功能中的HTML注入漏洞构造HTTP Leak攻击,最终实现任意账户劫持的技术方法。该漏洞存在于目标应用服务的密码重置功能中,攻击者可以利用HTML注入漏洞获取账户的密码重置Token,从而实现对其他账户的完全控制。

漏洞发现过程

1. 密码重置功能分析

在测试目标应用服务(app.com)的密码重置功能时,发现服务端会向用户邮箱发送HTML格式的密码重置邮件。邮件内容基于模板生成,关键请求如下:

<!DOCTYPE html>
<html>
<head></head>
<body style="font-family: Arial; font-size: 12px;">
<div>
    <p>You have requested a password reset, please follow the link below to reset your password.</p>
    <p>Please ignore this email if you did not request a password change.</p>
    <p><a href="{{ RESET-LINK }}">Follow this link to reset your password.</a></p>
</div>
</body>
</html>

2. HTML注入漏洞确认

测试发现emailBody参数未经过滤,允许攻击者注入自定义HTML内容。通过插入<a>标签测试确认了注入可能性:

click<a>here</a>

收到的邮件中成功显示了注入的HTML内容,证明存在HTML注入漏洞。

HTTP Leak攻击原理

1. HTTP Leak简介

HTTP Leak是一种利用HTML元素和属性在请求外部资源时泄露敏感信息的技术。由德国安全公司Cure53提出的HttpLeaks项目系统研究了这类问题。

2. 相关技术背景

  • 可绕过CSP(内容安全策略)防护
  • 可用于检测邮件是否被打开阅读
  • 可破坏声称提供"匿名"访问的Web代理工具

攻击构造方法

1. 攻击Payload设计

利用HTML注入漏洞构造以下Payload:

HTTP Leak攻击与密码重置功能漏洞利用分析 漏洞概述 本文分析了一种通过密码重置功能中的HTML注入漏洞构造HTTP Leak攻击,最终实现任意账户劫持的技术方法。该漏洞存在于目标应用服务的密码重置功能中,攻击者可以利用HTML注入漏洞获取账户的密码重置Token,从而实现对其他账户的完全控制。 漏洞发现过程 1. 密码重置功能分析 在测试目标应用服务(app.com)的密码重置功能时,发现服务端会向用户邮箱发送HTML格式的密码重置邮件。邮件内容基于模板生成,关键请求如下: 2. HTML注入漏洞确认 测试发现 emailBody 参数未经过滤,允许攻击者注入自定义HTML内容。通过插入 <a> 标签测试确认了注入可能性: 收到的邮件中成功显示了注入的HTML内容,证明存在HTML注入漏洞。 HTTP Leak攻击原理 1. HTTP Leak简介 HTTP Leak是一种利用HTML元素和属性在请求外部资源时泄露敏感信息的技术。由德国安全公司Cure53提出的HttpLeaks项目系统研究了这类问题。 2. 相关技术背景 可绕过CSP(内容安全策略)防护 可用于检测邮件是否被打开阅读 可破坏声称提供"匿名"访问的Web代理工具 攻击构造方法 1. 攻击Payload设计 利用HTML注入漏洞构造以下Payload: