【渗透测试】借助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() 
相关推荐
securitor11 分钟前
【java】IP来源提取国家地址
java·前端·python
Bruce_Liuxiaowei14 分钟前
AI时代的网络安全:传统技术的落寞与新机遇
人工智能·安全·web安全
yqcoder1 小时前
NPM 包管理问题汇总
前端·npm·node.js
Fly不安全1 小时前
Web安全:缓存欺骗攻击;基于缓存、CDN的新型Web漏洞
nginx·web安全·缓存·web·cdn·缓存欺骗攻击
程序菜鸟营1 小时前
nvm安装详细教程(安装nvm、node、npm、cnpm、yarn及环境变量配置)
前端·npm·node.js
bsr19831 小时前
前端路由的hash模式和history模式
前端·history·hash·路由模式
杨过姑父2 小时前
ES6 简单练习笔记--变量申明
前端·笔记·es6
Sunny_lxm2 小时前
<keep-alive> <component ></component> </keep-alive>缓存的组件实现组件,实现组件切换时每次都执行指定方法
前端·缓存·component·active
Andya_net2 小时前
网络安全 | 0day漏洞介绍
网络·安全·web安全
马船长2 小时前
青少年CTF练习平台 贪吃蛇
网络安全