小白实战vulnhub DC1

来了来了,第一次玩渗透靶机,有点激动,这篇博文主要用于笔记记录作用,有很多不对之处希望得到大家的指教。

环境介绍

靶机:安装在virtualbox上的虚拟机 DC1   192.168.56.102
攻击机:Kali 192.168.56.1

网络配置

鉴于这是第一个靶机,后面的靶机基本都是使用相同的网络配置,这里得说明下网络设置
我对这方面了解也不多,只能说下能让自己能理解通的歪道理。
每次我打开虚拟机时,kali主机就会出现vboxnet0网卡

我理解为在virtualbox中使用这块网卡为其它虚拟机提供网络服务

小白实战vulnhub DC1

小白实战vulnhub DC1

DHCP服务器理解就是为靶机在地址池中为分配一个ip地址

小白实战vulnhub DC1

靶机网络配置为host-only,这样设置使得靶机只能和本地主机通信,可以保护自己的电脑,当该靶机启动后,就会向DHCP服务器申请一个ip地址使用

小白实战vulnhub DC1

靶机下载地址:https://www.vulnhub.com/entry/dc-1,292/#top

解压后在virtualbox上导入就行,网络设置为only host

安装过程中间遇到usb问题,关闭usb即可。反正我们靶机又不用usb。

小白实战vulnhub DC1

然后直接打开,系统为debian,打开后界面如下

小白实战vulnhub DC1

这是什么情况,吓的我赶紧去官网找登录系统的账号密码(我以为要登录系统打开Apache之类的web服务),把官网的每个词都翻译了便,没有账号密码这一说。
 

实战过程

DC1靶机有5个flag,我们开始吧。

寻找靶机

这个靶机是一开机时就提供服务端,没有提供任何信息,我们唯一知道的就是这台靶机肯定会在我们的地址池中。

上nmap,使用-sn参数探测存活主机

小白实战vulnhub DC1

192.168.56.100就是我们的DHCP服务器,不用管

接着我们扫描开放端口

小白实战vulnhub DC1

80端口有开放,有提供web服务

我们在浏览器中输入http://192.168.56.102:80,成功获取到靶机提供的服务

小白实战vulnhub DC1

小白的思路

面对这样的一个网站,我们先按照正常思路来一遍。

查看robots.txt文件

小白实战vulnhub DC1

也许有用的信息就是admin之类的像后台登录页面,然后我们被拒绝访问了。

小白实战vulnhub DC1

那先尝试注册一个账号登录看看其它页面有没有什么漏洞可以利用吧。(这里也尝试了万能密码,不行)

但是在注册页面发现密码会发送给邮箱,恩。。。这里哪去发邮箱。

不让我注册,那我就猜存在的用户把。使用burp结合kali自带的用户名密码字典**,这里傻了,用户名密码同时**的payload有1亿条。。。。明年见。。。。

这样不行啊,决定先固定密码**用户名,看存在哪些用户,再去**密码。正在我准备又去犯傻时我先随便输入了一个用户登录,然后我发现!!!!

小白实战vulnhub DC1

IP被限制了,根本就不让**呀。

这里得总结下经验,可以先通过repeater模块多发几次包,来测试有没有限制短时间大量访问。

最后我还是屈服了,找了下网上的教程,向大佬们学习吧。

以下过程是按照大佬们的经验来的,没有多少创新,更多是自己的理解。

实战开始

查看网络架构:

小白实战vulnhub DC1

这里看下能不能利用cms的漏洞。

那这里顺水推舟介绍下Drupal,Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成。连续多年荣获全球最佳CMS大奖,是基于PHP语言最著名的WEB应用程序。

使用msf,先搜索一下有什么漏洞没

小白实战vulnhub DC1

Auxiliary模块估计是探测是否存在该漏洞,试了一下

小白实战vulnhub DC1也不知道效果是什么,管他那么多,直接上exploit吧

小白实战vulnhub DC1

就是这么强大

进入shell

小白实战vulnhub DC1

查看一下当前路径,再看一下当前路径的文件

小白实战vulnhub DC1

找到flag1.txt,打开看看

小白实战vulnhub DC1

哇,这就是传说中找到flag的感觉吗!

然后我又懵了,下一步怎么办,要我提权?还是去一个一个的翻寻目录

原来第一个flag也是提示,cms系统有配置文件,我们去找找配置文件

我更希望获取一个webshell可以像使用服务器的命令一样去操控文件,进入shell,然后把shell升级为交互式shell,这里使用python的pty模块

小白实战vulnhub DC1

成功找到flag2,并且获取了数据库的账号和密码

小白实战vulnhub DC1

翻译一下flag2:暴力和字典攻击不是唯一获得访问的方法(而且您将需要访问权限)。你能用这些证件做什么?

似乎在内涵我?

不管了,先用数据库账号密码看看数据库有什么吧。

小白实战vulnhub DC1

小白实战vulnhub DC1

小白实战vulnhub DC1

表挺多,但一般我们看和用户有关的表,如users。这里的用户wang就是我注册的号,但是没法使用。

小白实战vulnhub DC1

这里列太多了了,有几列显示不下就在前面挤一挤了

解密admin账号是不行了,我们是不是可以把admin的密码通过update给他改了呢。但是我们要找到网站的hash加密方法。这里就在网站根目录下,正常情况下谁会这么放,获取取名这么明显,所以信息收集步骤很重要,开始就要搞清楚完整的架构。

小白实战vulnhub DC1

我们先把准备的密码wangyue通过网站的方式加密下

小白实战vulnhub DC1

然而这里报错,大概就是scripts目录下找不到includes中的某个文件

然后我去找了找,includes文件竟然和scripts文件在同一目录下,于是把includes目录即里面的内容拷贝到scripts目录下

小白实战vulnhub DC1

然后执行这个脚本获取密码

$S$DBJVEastMqDkYmX1HaB9/rDfwcjghaTUC.uG94OS3oPE24JzVHP9

保存好,更改密码

小白实战vulnhub DC1

然后就使用admin/wangyue登录上去吧

小白实战vulnhub DC1

哈哈哈终于看到了网站的主页,还拿到了这么高的权限

在content中就可以找到flag3

小白实战vulnhub DC1

翻译一波:

大概就是/etc/shadow 里面有好东西,尝试find -exec去获取吧

小白实战vulnhub DC1

这个文件一般需要root用户查看,我们来提权吧。

寻找拥有特殊权限suid的命令,发现确实存在find

小白实战vulnhub DC1

我们便可以使用find -exec来提权

小白实战vulnhub DC1

使用/bin/sh 持续获取权限

小白实战vulnhub DC1

可以看到flag4是hash加密的,想想这个文件也是吧,解密算了(我也只会解md5。。。。)

小白实战vulnhub DC1

不如看看/etc/passed

小白实战vulnhub DC1

这flag4用户的登录目录不对劲,去看看

小白实战vulnhub DC1

Get flag4

厉害了呀,再翻译一波,用root身份去访问最后的flag,可能不简单。。。。

好像是不简单,我都不知道在哪找啊。

最后找了攻略,好吧是我翻译错了,正确翻译是在root目录下找到这个文件。。。。

get finalflag

小白实战vulnhub DC1

这里就结束了

回头看了下,没有root权限可以拿flag4,但是不能进入/root目录,需要root权限,便提权,所以flag5的难度是提权

小白实战vulnhub DC1

总结

回头总结一波,我们通过cms Drupal的漏洞使用msf直接连接靶机,获取倒了webshell,通过把webshell升级为交互shell,然后在服务器可以随意走动,通过配置文件,我们知道了了数据库,登录本地数据,查询关键表,找到了用户admin,发现admin账号的密码经过特殊hash加密,于是便在靶机中寻找哈希加密的程序,通过把已知字符串经过相同加密后,修改用户的密码,然后使用修改的账号密码登录到网页。得到管理员权限,窃取敏感信息。最后通过find的suid提权获取root权限,获取root目录下的敏感文件。

 

获取登录用户的其它方式

通过搜索发现drupal的利用资源,我们的网站是drupal7,发现中间有sql注入漏洞

小白实战vulnhub DC1

查看其中一个sql注入漏洞的利用python脚本

小白实战vulnhub DC1

这里考验读代码的能力,前面的DrupalHash一大堆很难看懂,但不难猜,是看的后台password-hash.sh脚本,使得使密码的哈希加密相同,然后在通过insert插入用户名和加密后的结果。

小白实战vulnhub DC1

对着使用这几个参数就可以了把。所以总结一下这是个添加用户的脚本。

于是我们来试一试,具体实现原理就不看了,会用就行,主要人菜,后面慢慢学吧。

小白实战vulnhub DC1

小白实战vulnhub DC1

注意这里运行使用python2.7运行

小白实战vulnhub DC1

小白实战vulnhub DC1

一样可以达到同样的效果。