并非浏览器安全漏洞:PDF 中的 JavaScript

主要观点:常见的安全漏洞报告形式为“能在 PDF 文件中放入 JavaScript 且其运行”,PDF 中支持 JavaScript 是设计使然且浏览器开发者预期如此,不同经验的安全研究者对该问题的关注点不同,如针对浏览器和托管或传输不可信 PDF 文件的站点及应用,PDF 中 JavaScript 的运行环境受限,访问受限如无 Cookie 和存储访问权限等,工程师应注意 PDF 中 JavaScript 处理需尊重应用/用户设置,如 Chrome 和 Edge 会根据用户设置限制,Firefox 有不同设置方式,Chromium 目前忽略 PDF 响应的 Content-Security-Policy 头导致用户困惑。

关键信息:

  • 常见安全漏洞报告形式及示例 PDF 文件。
  • PDF 中 JavaScript 支持的设计初衷。
  • 不同经验研究者的关注点差异。
  • PDF 中 JavaScript 运行环境受限的具体方面。
  • 关于 PDF 中 JavaScript 处理的设置及不同浏览器的情况,如 Chrome 和 Edge 依据用户设置限制,Firefox 有单独偏好设置,Chromium 忽略 PDF 的 Content-Security-Policy 头。

重要细节:

  • this PDF file在 Chrome 中可显示alert(1)消息。
  • 较不熟练的安全研究者对浏览器报此问题及解决方式。
  • 较熟练的安全研究者对托管或传输 PDF 文件的站点及应用报此问题及相关安全威胁。
  • Chrome 中关于 PDF 中 JavaScript 限制的描述及示例。
  • Firefox 中全局javascript.enabled切换对 PDF 视图中脚本的影响及单独的pdfjs.enableScripting偏好设置。
  • Chromium 忽略 PDF 的 Content-Security-Policy 头的情况及导致的问题。
阅读 8
0 条评论