vulnhub打靶-XXE

vulnhub靶机-XXE

1.下载靶机,启动靶机,扫描地址

下载地址:vulnhub–XXE

nmap -sS 192.168.2.0/24 //这里我是虚拟机192.168.2.0网段

扫描出来发现主机IP
vulnhub打靶-XXE_第1张图片

nmap -sS -sV 192.168.2.143//再对主机进行详细服务的扫描

扫描出来只发现了web服务
vulnhub打靶-XXE_第2张图片

2.打开主页发现是apache默认页面,探测一下有无其他目录

robots.txt发现有东西
vulnhub打靶-XXE_第3张图片

两个地址 http://ip/xxe/index.php http://ip/xxe/admin.php

3.抓包登录发现是xml数据,尝试xxe注入

vulnhub打靶-XXE_第4张图片

读取数据成功
vulnhub打靶-XXE_第5张图片

4.admin.php中发现敏感数据。password md5解密得到密码为admin@123vulnhub打靶-XXE_第6张图片

5.登录后台,点击flag浏览器直接访问失败,尝试XXE读取

vulnhub打靶-XXE_第7张图片vulnhub打靶-XXE_第8张图片base64解码:


$flag = "";//32个字符,猜测是base32编码
echo $flag;
?>

6.先base32解码再base64解码得到结果/etc/.flag.php

7.读取flag

$_[]++;$_[]=$_._;$_____=$_[(++$__[])][(++$__[])+(++$__[])+(++$__[])];$_=$_[$_[+_]];$___=$__=$_[++$__[]];$____=$_=$_[+_];$_++;$_++;$_++;$_=$____.++$___.$___.++$_.$__.++$___;$__=$_;$_=$_____;$_++;$_++;$_++;$_++;$_++;$_++;$_++;$_++;$_++;$_++;$___=+_;$___.=$__;$___=++$_^$___[+_];=+_;=========++[];++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;++;$__('$_="'.$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....$___....'"');$__($_);

8.放到php运行(版本为5,7运行不了)

运行代码得到
在这里插入图片描述

9.flag

SAFCSP{xxe_is_so_easy}

总结

基本上考察XXE注入基础知识,如何结合伪协议读取数据

你可能感兴趣的:(信息安全,vulnhub,web安全,信息安全,安全,php)