深入剖析Tibco WebFOCUS与Epson ePOS打印机中的XXE与SSRF漏洞利用

本文详细探讨了在Tibco WebFOCUS报表服务器和Epson ePOS打印机中发现的XML外部实体注入与服务器端请求伪造漏洞。通过盲注技术成功窃取NTLM哈希值并利用打印机模块打印敏感系统文件,揭示了忽视盲注漏洞可能带来的严重安全风险。

利用Tibco WebFOCUS和Epson ePOS打印机中的XXE与SSRF漏洞

在今天的文章中,我将讨论在参与一个私有漏洞赏金计划时的新发现。在此期间,我在Tibco WebFOCUS报表服务器和Epson ePOS打印机中发现了多个XML外部实体注入(XXE)和服务器端请求伪造(SSRF)漏洞。这些缺陷使我能够通过盲SSRF和XXE攻击窃取敏感信息,例如NTLM哈希。我还将解释如何利用这些漏洞,通过Epson ePOS打印机模块打印敏感系统文件。

理解漏洞

导致NTLM哈希窃取的盲SSRF

在测试过程中,我发现该应用程序使用了一个WebFOCUS服务器,其中包含一个连接到组织的Salesforce账户或环境并导入数据的选项。然而,在Salesforce数据库连接器模块中发现了一个漏洞。该模块设计用于从Salesforce实例获取数据,但缺乏适当的URL验证,并且未能将请求限制在Salesforce域内。因此,它允许向任何服务器(包括内部IP)发起HTTP请求,这使其容易受到服务器端请求伪造(SSRF)攻击。

这是一个受限制的盲SSRF,服务器仅发送带外DNS查询。这使我能够验证内部服务器是否运行了HTTP服务,但由于漏洞的性质,其影响非常有限。我发现应用程序在后端运行在Windows服务器上,这促使我尝试使用Responder工具,看看是否能从服务器窃取NTLM哈希。

什么是Responder? Responder是一个流行的开源网络渗透工具,尤其在Windows环境中。它旨在拦截和操纵网络流量以捕获敏感数据,如NTLM哈希,这些数据可用于进一步的攻击,例如哈希传递或离线密码破解。

GitHub — SpiderLabs/Responder: Responder is a LLMNR, NBT-NS and MDNS poisoner, with built-in… Responder is a LLMNR, NBT-NS and MDNS poisoner, with built-in HTTP/SMB/MSSQL/FTP/LDAP rogue authentication server… github.com

WebFOCUS Salesforce数据库连接器 服务器哈希

后来,我还观察到机器尝试进行基本身份验证,从而泄露了Salesforce SOAP API凭据。

SOAP API凭据

2. Tibco WebFOCUS报表服务器中的盲XXE漏洞与DOCTYPE声明

在报表服务器中,有一个选项是使用“获取模块”功能从XML文件导入数据。在测试期间,我还发现该应用程序容易受到XXE攻击,但在盲注利用方面存在独特的挑战。最初,我尝试了经典的XXE方法,即定义外部实体,但应用程序返回“实体未定义”错误。后来,我观察到错误的发生是因为我在载荷中遗漏了DOCTYPE声明。

我成功地定义了外部实体。然而,由于这是一个盲XXE,我无法直接在响应中查看任何内部实体——它只是进行DNS查询。我尝试通过DNS窃取数据,但内部数据文件中的换行符阻止了我这样做。虽然我可以声明外部实体并加载DTD文件,但即使通过DTD加载,也没有数据被窃取。

了解到应用程序运行在Windows服务器上后,我决定再次使用Responder,并使用以下载荷:

载荷 服务器哈希

3. 在Epson ePOS打印机中利用XXE

该应用程序包含一个使用Epson ePOS打印机打印抽屉最终余额的模块,该模块依赖XML数据来打印抽屉状态。在测试过程中,发现该应用程序允许用户声明外部实体,从而使攻击者能够利用XXE漏洞打印系统文件。

根据Epson ePOS打印机文档,如果在文档打印的HTTP请求中包含外部实体,它也会接受并打印数据。

Epson ePOS打印机文档第48页

为了打印内部系统文件,我准备了以下载荷:

载荷

该载荷成功地允许我打印服务器的内部文件。

结论

这些发现突显了忽视盲注漏洞可能带来的关键风险。Tibco WebFOCUS报表服务器和EPSON ePOS打印机容易受到盲XXE和SSRF攻击,这可能暴露NTLM哈希,并允许未经授权访问敏感系统文件。

在这篇文章中,我演示了如何使用带外技术和创造性的利用方法,将看似微小的漏洞转化为强大的攻击向量。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计