文章总结: 本文详细介绍了消息模板注入漏洞的测试流程与主要危害。该漏洞通常出现在找回密码等需要向用户发送通知的功能中,攻击者可通过修改请求包中的可控参数(如cid),注入恶意链接或参数,诱导用户点击后跳转到钓鱼网站,从而窃取账号密码等敏感信息。
综合评分: 85
文章分类: 渗透测试,web安全,漏洞分析,红队,内网渗透
消息模板注入漏洞
原创
游山玩水 游山玩水
山水SRC
2026年6月27日 09:09 河南
在小说阅读器读本章
去阅读
免责声明
本公众号分享的所有渗透测试技术文章仅面向合法授权的安全测试、学习交流与研究用途。读者必须确保自身行为符合《网络安全法》等相关法律法规,严禁将其用于任何未授权攻击等非法活动。因不当使用或传播相关内容所引发的任何法律责任与风险,由行为人自行承担,本公众号(或本人)概不负责
测试流程
测试前提
- 功能入口:存在一个可以向用户绑定邮箱或手机发送通知的功能点(常见于“找回密码”、“安全提醒”、“订单确认”、“邀请好友”等)。
- 可控参数:发送请求包中存在可控参数(如
url、callback、return_url或特定的追踪参数如cid),且该参数的值会被后端直接拼接到发送给用户的 URL 链接中。 - 无过滤/编码:服务端未对该参数进行合法性校验(如域名白名单),也未对特殊字符(如
?、&、#)进行 URL 编码处理。
测试流程
步骤一:抓取正常请求
- 触发一个会发送邮件或短信的操作(例如:点击“找回密码”)。
- 使用 Burp Suite 拦截该请求。
- 观察请求包(Request)结构。假设正常的请求包如下:
```
POST /api/send_notice HTTP/1.1 Host: www.xxx.com Content-Type: application/json
{ “userid”: “12345”, “type”: “resetpwd”, “url”: “https://www.xxx.com/reset”, “cid”: “ABC123XYZ” }
```
步骤二:分析接收内容
- 查看收到的邮件或短信。
- 内容通常包含一个链接,格式为:
https://www.xxx.com/reset?cid=ABC123XYZ- 或者:
https://www.xxx.com?redirect=...&cid=ABC123XYZ
步骤三:构造恶意 Payload(修改参数)
回到 Burp Suite 的拦截请求,修改 cid参数的值,插入特殊字符以截断原逻辑或添加新的参数。
-
Payload 1:添加恶意跳转参数(Open Redirect)
-
原始值:
"cid": "ABC123XYZ" -
修改后:
"cid": "ABC123XYZ&redirect=https://evil.com" -
结果链接:
https://www.xxx.com/reset?cid=ABC123XYZ&redirect=https://evil.com -
解析:如果用户点击,虽然看起来前缀是官方域名,但实际上参数
redirect会指引用户跳转到攻击者网站。 -
Payload 2:修改为钓鱼内容
步骤四:验证结果
- 放行修改后的请求。
- 检查邮箱或手机短信。
- 确认收到的链接中,
cid参数已经被成功修改,且包含了攻击者注入的内容。 - 点击链接,确认是否能跳转到恶意站点(如
evil.com)。
危害
钓鱼攻击(主要危害)
攻击者可以利用此漏洞发送看似完全合法的官方邮件/短信。用户看到的是www.xxx.com域名下的链接,极易信任并点击,从而被诱导至伪造的登录页,导致账号密码泄露。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:山水SRC 游山玩水 游山玩水《消息模板注入漏洞》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论