XXE-labs靶场通关攻略

环境地址自行查找

1.寻找靶机地址

使用工具goby进行扫描 因为我的靶场是搭在ubuntu上 直接查找系统是Ubuntu的就可以找到

靶机IP 172.16.1.183

2.访问靶场

3.使用目录扫描工具进行扫描

使用kali自带的dirsearch进行扫描 可以看到一个robots.txt文件

4.访问robots.txt文件

可以看到有两个目录 一个是admin.php 另一个是xxe

访问admin.php无法访问

访问xxe 发现是一个登录页面

5.进行抓包

使用burp进行登录页面抓包

可以看到是使用xml语言编写的

6.发送到重放器

当我们修改name时 发现页面有回显

7.读取admin.php文件

通过php协议base64加密读写admin.php

<!DOCTYPE r [

<!ELEMENT r ANY>

<!ENTITY test SYSTEM "php://filter/read=convert.base64-encode/resource=admin.php">

]>

8.进行解码

9.查看用户信息

查看解码的结果 可以看到有账号和密码

10.对密码进行解码

使用在线网址进行解密就可以得到密码

11.进行登录

172.16.1.183/xxe/admin.php

可以看到flag

点击可以发现又一个php文件

12.读取flagmeout.php文件

<!DOCTYPE r [

<!ELEMENT r ANY>

<!ENTITY test SYSTEM "php://filter/read=convert.base64-encode/resource=flagmeout.php">

]>

13.进行base64解码

发现flag还要进行base32解码

解码之后 还要进行base64解码 可以看到flag的地址

14.读取flag文件

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE r [

<!ELEMENT r ANY>

<!ENTITY test SYSTEM "file:///etc/.flag.php">

]>

15.将乱码放在php文件

16.访问编写的php文件

页面可以看到flag文件

相关推荐
Yeats_Liao6 分钟前
Spring 定时任务:@Scheduled 注解四大参数解析
android·java·spring
雾里看山2 小时前
【MySQL】 库的操作
android·数据库·笔记·mysql
水瓶丫头站住10 小时前
安卓APP如何适配不同的手机分辨率
android·智能手机
xvch11 小时前
Kotlin 2.1.0 入门教程(五)
android·kotlin
xvch15 小时前
Kotlin 2.1.0 入门教程(七)
android·kotlin
望风的懒蜗牛15 小时前
编译Android平台使用的FFmpeg库
android
浩宇软件开发15 小时前
Android开发,待办事项提醒App的设计与实现(个人中心页)
android·android studio·android开发
ac-er888816 小时前
Yii框架中的多语言支持:如何实现国际化
android·开发语言·php
苏金标17 小时前
The maximum compatible Gradle JVM version is 17.
android
zhangphil17 小时前
Android BitmapShader简洁实现马赛克,Kotlin(一)
android·kotlin