
Exploiting Edge's read:// urlhandler
此漏洞已报告给微软,并获得了致谢。该漏洞已于 2017 年 3 月 14 日以编号 CVE-2017-0065 和 MS17-007 修复,如果应用了相关补丁,则无法复现。源码仅供教育目的。
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2017-0065
https://docs.microsoft.com/en-us/security-updates/securitybulletins/2017/ms17-007
https://nvd.nist.gov/vuln/detail/CVE-2017-0065
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-0065
此漏洞需要受害者在已知文件位置的文件系统上有一个伪造文件 (exploit.html)。受害者无需运行该文件,只需拥有它即可。随后,通过访问恶意网站 (malicious_server.php) 即可调用该文件。利用此漏洞,本地文件可以在用户不知情的情况下上传到所访问的恶意网站。
1. 编辑 exploit.html,将表单 action 设置为你测试 Web 服务器的地址。
2. 在启用 PHP 的 Web 服务器上提供 malicious_server.php,以便你可以通过 http://yourwebserver.com/malicious_server.php 访问它。
3. 将 exploit.html 放入以下文件夹:c:\windows\system32\drivers\etc\ (read: 协议对文件位置似乎很挑剔)
4. 使用 Edge 浏览器导航到 http://yourwebserver.com/malicious_server.php。
1. 导航到 malicious_server.php 应触发浏览器重定向到:read:,c:\windows\system32\drivers\etc\exploit.html
2. 然后 exploit.html 应提示用户在空白页面上任意位置点击。
3. 点击后,exploit.html 将创建一个窗口,其 URL 为:read:,c:\windows\system32\drivers\etc\hosts
4. 如果窗口创建成功,打开的窗口(hosts 文件)的内容将被复制到一个隐藏的表单中,窗口关闭,表单提交回你 Web 服务器上的 malicious_server.php
5. malicious_server.php 将显示提交文件的内容