【渗透测试】借助PDF进行XSS漏洞攻击

简介

在平时工作渗透测试一个系统时,常常会遇到文件上传功能点,其中大部分会有白名单或者黑名单机制,很难一句话木马上传成功,而PDF则是被忽略的一个点,可以让测试报告更丰富一些。

含有XSS的PDF制作步骤

1. 编辑器生成含有XSS的PDF

下载PDF编辑器
迅捷PDF编辑器 - 多功能的PDF编辑软件

新建一个文档
点击编辑器左下角的文件属性选择Javascript->添加->输入恶意XSS代码

app.alert('xss');

利用 JavaScript 进行攻击时只能使用 Adobe 所支持的功能

保存后,使用浏览器打开
弹框成功

2.Python生成含有XSS的PDF

若不想PDF带水印,还可以使用Python编写poc制作含有XSS的PDF

安装第三方库:

pip install PyPDF2 -i https://pypi.tuna.tsinghua.edu.cn/simple

python 复制代码
from PyPDF2 import PdfReader,PdfWriter

new_PDF = PdfWriter()
# 写入JavaScript代码
new_PDF.add_js("app.alert('xss');")
f = open("没有危害的PDF.pdf","wb")
new_PDF.write(f)
f.close() 
相关推荐
索西引擎2 分钟前
【React】Immer.js 在现代 Redux 生态中的角色:不可变性保障的工程化实现与开发体验优化
前端·javascript·react.js
Am-Chestnuts10 分钟前
AI长回答批量导出PDF与长图:多轮内容整理和免费Markdown备份
人工智能·pdf·aigc
大卫陈14 分钟前
微信小程序虚拟支付实战:从「支付能力被限制」到沙箱调通的全过程
前端·后端
武子康14 分钟前
vLLM 0.25.1:服务没有报错,为什么仍会生成垃圾 Token(5 级正确性门禁 + 自动回滚条件)
前端·人工智能·后端
jyp2012110718 分钟前
Vue3 Diff 算法
前端·vue.js
胡萝卜术22 分钟前
抽象的三级跳:从原生 DOM 到 React 组件树,我们到底在解决什么问题?
前端·javascript·面试
黄敬峰25 分钟前
从零理解React:事件、组件与响应式——一个WebGPU Demo的前端笔记
前端·面试
treesforest36 分钟前
你以为只是一串数字?你的IP地址,正在悄悄暴露这些信息
网络·网络协议·tcp/ip·网络安全·ip归属地查询·ip风控
weedsfly39 分钟前
从类继承到自定义 Hook:模板方法模式的前端演进
前端·javascript·面试
Quz40 分钟前
QML 线性布局:Row/RowLayout 与 Column/ColumnLayout
前端·qt