DC-2是一个易受攻击的实验环境,最终目的是让攻击者获得root权限,并读取flag。

本篇文档中用到了vi提权和git提权。

1 环境搭建

下载靶场文件,使用Vbox或者VM打开即可;攻击机使用kali-2020。

2 主机发现

使用Kali中的arp-scan工具扫描结果如下:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

172.16.12.145为DC-2靶机的IP地址。

3 端口探测

探测使用nmap工具

端口扫描结果如下:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

由扫描结果知开放端口有两个: 80(http默认端口)和运行着SSH服务的7744端口。

4 访问web

访问web界面如下:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

需要将172.16.12.145 dc-2加入hosts文件中如下:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

再来访问web界面如下所示:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

5 对网站信息收集

打开插件Wappalyzer进行网站指纹识别如下:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

从指纹识别信息中提取出的信息有:

1 操作系统:Debian

2 内容管理系统(CMS):WordPress 4.7.10

3 编程语言:php

4 Web服务器:Apache 2.4.10

5 数据库:Mysql

6 JavaScript:JQuery 1.12.4  JQuery Migrate 1.4.1

点击查看flag1

DC系列漏洞靶场-渗透测试学习复现(DC-2)

由flag1中的提示我们可能会用到cewl(kali中的字典生成工具),既然我们知道网站CMS是wordpress了,先使用wpscan来扫描一波,看能枚举出哪些用户。

这里顺便介绍下wpscan的使用参数介绍:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

扫描结果如下:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

扫描出的页面有以下:

1 http://dc-2/xmlrpc.php

DC系列漏洞靶场-渗透测试学习复现(DC-2)

2 http://dc-2/readme.html 就是flag1页面

3 http://dc-2/wp-cron.php  空白页面

4 http://dc-2/index.php/feed/ 或http://dc-2/index.php/comments/feed

DC系列漏洞靶场-渗透测试学习复现(DC-2)

DC系列漏洞靶场-渗透测试学习复现(DC-2)

下图中是枚举出的用户:

分别是admin jerry tom三个用户

DC系列漏洞靶场-渗透测试学习复现(DC-2)

6 用户密码**

根据flag1提示中的cewl软件,我们先来了解下cewl的用法(用来生成字典)

Cewl是一款采用Ruby开发的应用程序,你可以给它的爬虫指定URL地址和爬取深度,还可以添额外的外部链接,接下来Cewl会给你返回一个字典文件,你可以把字典用到类似John the Ripper这样的密码**工具中。除此之外,Cewl还提供了命令行工具。

语法: cewl <url> [options]

接下来是使用cewl生成字典文件

DC系列漏洞靶场-渗透测试学习复现(DC-2)

将admin  jerry  tom 3个用户加入user文件中如下:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

开始使用wpscan**密码;

DC系列漏洞靶场-渗透测试学习复现(DC-2)

**成功

DC系列漏洞靶场-渗透测试学习复现(DC-2)

使用jerry用户或tom用户登录系统,后台地址为:http://dc-2/wp-login/

DC系列漏洞靶场-渗透测试学习复现(DC-2)

登录成功

DC系列漏洞靶场-渗透测试学习复现(DC-2)

浏览翻找下web页面,找到了flag2

DC系列漏洞靶场-渗透测试学习复现(DC-2)

查看flag2

DC系列漏洞靶场-渗透测试学习复现(DC-2)

找到一上传文件的地方,上传图片后:

DC系列漏洞靶场-渗透测试学习复现(DC-2)

直接上传test.php文件不被允许

DC系列漏洞靶场-渗透测试学习复现(DC-2)

尝试改包上传

DC系列漏洞靶场-渗透测试学习复现(DC-2)

上传失败

DC系列漏洞靶场-渗透测试学习复现(DC-2)

接着想到使用**出的jerry用户名和密码登录服务器,前面扫描出ssh服务运行在7744端口上

DC系列漏洞靶场-渗透测试学习复现(DC-2)

登录失败,看来jerry用户的密码不能直接用来登录服务器,也使用tom用户也试过但是应该是输入密码错误导致没能登录上去(太粗心,导致在下一步浪费不少时间)

接着想到使用hydra**ssh用户登录密码,开始行动

DC系列漏洞靶场-渗透测试学习复现(DC-2)

这里花了好长时间去**,但是未**出密码,看了其他人的过程发现是使用tom用户登录

使用tom登录成功,但是是受限shell(限制了可执行的命令)

DC系列漏洞靶场-渗透测试学习复现(DC-2)

随便执行命令看看,找到了flag3看看

Cat命令不能使用,可以使用less查看,类似的查看命令还有tac more tail head sort等等

DC系列漏洞靶场-渗透测试学习复现(DC-2)

Flag3内容

DC系列漏洞靶场-渗透测试学习复现(DC-2)

7 提权

查看tom可执行的命令和环境变量

DC系列漏洞靶场-渗透测试学习复现(DC-2)

尝试设置tom的shell环境,失败因为只读

DC系列漏洞靶场-渗透测试学习复现(DC-2)

使用vi查看tom的家目录下文件

.profile文件

DC系列漏洞靶场-渗透测试学习复现(DC-2)

.bashrc文件

DC系列漏洞靶场-渗透测试学习复现(DC-2)

发现不能直接在文档中修改内容。

接下来看利用vi能否做点事,vi打开任意文件

进入文档后

DC系列漏洞靶场-渗透测试学习复现(DC-2)敲回车

再然后

DC系列漏洞靶场-渗透测试学习复现(DC-2)

敲回车就发现可以写入PATH变量了,export PATH=$PATH:/bin/,然后再尝试可发现可执行更多命令

DC系列漏洞靶场-渗透测试学习复现(DC-2)

再使用cat查看flag3

DC系列漏洞靶场-渗透测试学习复现(DC-2)

切换到jerry用户目录发现flag4文件,查看

DC系列漏洞靶场-渗透测试学习复现(DC-2)

Flag4文件中提到了git命令,查看下/etc/passwd文件

DC系列漏洞靶场-渗透测试学习复现(DC-2)

Tom用户限制太多,查看后切换到jerry用户,执行sudo –l可以很明显的看到git提权的提示

DC系列漏洞靶场-渗透测试学习复现(DC-2)

使用git命令提权sudo git –p –help 进入交互模式

DC系列漏洞靶场-渗透测试学习复现(DC-2)

DC系列漏洞靶场-渗透测试学习复现(DC-2)

输入“!whoami”,使用“!passwd root”修改root密码

DC系列漏洞靶场-渗透测试学习复现(DC-2)

修改root密码成功

这里也可使用以下进入交互模式:

1 git help –a

2 git help –g

3 git help –c

切换到root用户

DC系列漏洞靶场-渗透测试学习复现(DC-2)

相关文章:

  • 2021-06-04
  • 2021-06-11
  • 2021-04-21
  • 2021-04-15
  • 2021-07-23
  • 2022-03-08
  • 2021-10-07
  • 2021-07-26
猜你喜欢
  • 2021-09-19
  • 2021-11-08
  • 2022-03-07
  • 2021-11-03
  • 2021-06-03
  • 2021-06-04
  • 2021-08-24
相关资源
相似解决方案