返回首页
EN
H7 / SECURITY RESEARCH NOTES

通过恶意PDF执行XSS漏洞

环境说明

IPHOSTNAMENOTE
10.10.10.88win10_dqy实验主机

简述

  • 即我们向 PDF 文件插入一段 JS 代码,然后通过浏览器查看PDF的时候可以触发我们插入的 JS 代码。

复现过程

创建带 JS 代码的 PDF

  • 这里我们通过迅捷 PDF 编辑器创建一个新的PDF文件

  • 点击左下角选项 -> 打开页面缩略图

  • 然后点击属性 -> 动作 -> 打开页面 -> 新增 -> 运行 Javascript

  • 然后开始编辑 JS 代码,输入下列 JS 代码用于触发弹窗,如下图:
app.alert('xss');

  • 然后确定保存为 xss_pdf.pdf 文件,至此带 JS 代码的 PDF 文件制作完成。

创建 HTML 文档加载 PDF

  • 我们尝试通过 HTML 标签加载同目录下的 PDF,保存为 test.html 文件
<html>
<body>
<object data='xss_pdf.pdf' width="100%" heigh="100% type="application/pdf"></object>
</body>
</html>
  • 如下图:

部署并触发 XSS 漏洞

  • 将 test.html 和带 JS 代码的 xss_pdf.pdf 一起部署到 web server 上,然后通过 chrome 浏览器访问:

  • 如上图成功触发 XSS 漏洞