大家好,这是我第一次写漏洞文章,也是我发现的第一个Outlook漏洞。
在很多网络消息服务中,例如Gmail、Outlook、Yahoo等,都允许接受并渲染电子邮件中的HTML内容(Content-Type: text/html),但同时也会进行安全限制,只允许A、H1、img等标签。
而当我测试Outlook中的安全过滤机制时,发现link标签并不会被过滤。这就让我有机可乘,成功引入了外部JS代码,实现了弹框。
复现步骤
- 进入网站https://emkei.cz/,这个网站的能直接设置发送的电子邮件的内容的类型。
- 随机往邮件主题、发件人和发件地址填入字符。
- 往收件人地址填入你需要测试的电子邮件地址。
- 将Content-Type设定为text/html。
- 邮件正文填入,点击提交。
- 登入收件电子邮箱,点击查看消息,payload就会成功执行!
以下为PoC视频地址:
https://youtu.be/khsLfQwy1ik