PDF_XSS漏洞
使用迅捷PDF编辑器试用版新建空白页测试
找到属性-动作-打开页面
在编辑动作列表里添加JavaScript测试脚本
脚本内容:
app.alert('XSS123');
确定后选保存带水印版即可
测试结果
chrome浏览器
Edge浏览器
QQ浏览器
火狐浏览器未执行
火狐浏览器这里后来发现点情况:
正常跟上面那样是不会执行js代码,但如果在文档属性-JavaScript里添加弹窗代码也会执行了,并且会把两处的都执行
PS:经过测试发现,火狐浏览器对于只在文档属性里添加的JavaScript代码和两处同时添加的会执行,只在属性动作里添加的不会执行(包括后面页面添加也不会执行)
IE浏览器提示下载,没直接打开
连迅捷PDF编辑器打开也会弹窗
下面将PDF文件嵌入html文件中运行看看
html代码如下
<html> <body> <object data="test.pdf" width="100%" heigh="100%" type="Application/pdf"></object> </body> </html>
效果是同样的
如果pdf文件有多个页面的,可以在对应的页面动作里编辑属性添加JavaScript代码,这样打开浏览到该页面时也会执行
修复建议
1.作为网站管理员或开发者,可以选择强迫浏览器下载 PDF 文件,而不是提供在线浏览等,或修改 Web 服务器配置的 header 和相关属性
2.使用第三方插件解析pdf,不用chrome自带的pdf解析就行,https://github.com/adobe-type-tools/cmap-resources
参考:
MU5735 R.I.P
分类:
XSS
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)