从SSRF到RCE:PDFReacter漏洞利用全解析
什么是PDFReacter?
PDFReacter是一款将HTML内容解析转换为PDF文件的格式化处理器。
漏洞发现过程
在测试某个应用程序时,发现该应用使用了PDFReacter解析器。由于应用提供表单数据插入功能,我首先尝试使用XSS进行模糊测试,简单使用了<img>
标签作为载荷。
当导出包含载荷的表单为PDF时,发现最终生成的PDF文件竟然执行了HTML标签/XSS载荷。这表明应用程序和PDFReacter均未对HTML标签进行转义处理。
SSRF漏洞确认
在确认解析器不转义载荷后,我尝试使用iframe测试是否能在PDF中加载外部站点。实验证明,通过iframe成功加载了Google页面,这确认了SSRF(服务器端请求伪造)漏洞的存在。
本地文件读取
接下来使用file协议包装器尝试读取本地文件:
|
|
成功读取了/etc/passwd文件!
权限提升与RCE
为检查当前用户权限,尝试读取shadow文件:
|
|
成功获取shadow文件证实用户具有root权限。随后通过获取私有SSH密钥,成功SSH连接到服务器实现远程代码执行(RCE)。
致谢
虽然这不是我的第一个RCE漏洞,但成功获取shell时仍然令人激动。特别感谢Rahul Maini的博客文章对理解该场景提供的巨大帮助。
作者:Armaan Pathan
发布时间:2019年4月18日
阅读时长:2分钟