概述
题目描述:目标就是找到5个flag,其中最后一个flag在root目录下。
信息搜集:
知道靶机的IP:
在实验中因为已知靶机与攻击机在同一个网段,所以可以使用nmap对同网段主机进行扫描的方式来发现主机,也可以使用arp-scan命令来完成。
同一网段下除了虚拟网卡之外就只开启了DC-1靶机,所以得知靶机的IP为192.168.127.133(不同环境数值可能不同)
查看靶机开启了哪些服务:
不管什么攻击都需要和攻击对象之间有交互,而靶机向外提供服务就是一种交互的方式。使用nmap进行端口扫描:
在开启的服务当中:
-
ssh:专为远程登录会话和其他网络服务提供的安全性协议
-
rpcbind:RPCBind是linux平台一种通用的RPC端口映射功能。
-
http:通过80端口向外提供web服务
开放的端口与服务也存在漏洞,这些也是渗透测试的一部分,比如rpcbind服务就存在漏洞可以用来进行ddos攻击。
RPCBind服务被利用进行DDoS攻击的风险预警 (huaweicloud.com)
不过靶机的目标是寻找flag,所以把重点放到80端口上。使用浏览器进行访问
使用插件查看网站的指纹:(当然也可以通过其他的搜集方式)
其中网站的CMS以及Web Server等等都可能存在可以利用的漏洞来进入网站的后台。由于之前借鉴了其他博主的wp所以后续便直接对CMS进行漏洞利用的查找。
漏洞利用
启动metasploit,使用search命令进行查找。
至于使用哪一个漏洞(一方面是查看漏洞的描述,另一方面就是漏洞发布的时间与对应有效的版本)这里使用1号。use 1
通过show options查看需要设置的参数,对Required为yes的参数进行设置
rhosts为目标靶机的ip
之后run启动脚本:
meterpreter表示成功。通过shell获得靶机的shell。
不过这个是不带小箭头和路径显示的,可以执行下面的命令来获取一个交互式的shell
python -c 'import pty; pty.spawn("/bin/bash")'
在当前目录下找到了一个flag1.txt
提示查看CMS的配置文件,这里的CMS是drupal,可以搜索一下drupal CMS的配置文件的路径
到对应路径进行查看:sites/default/files
文件内容中出现了flag2提示,配置文件中也显示了数据库的用户名以及登录密码的信息。
提示信息并不建议使用字典爆破,先利用找到的信息登录mysql数据库看是否有其他信息
在drupaldb的users表中找到了admin的密码,尝试根据找到的这一串字符得到密码。搜索drupal CMS是如何生成密码的(一般是取hash(不可逆性)),所以想根据hash值来得到密码是不可能了,那么忘记密码怎么办呢?当然是想办法重置密码了。drupal中有一个文件password-hash.sh是用来计算密码对应的hash值的,也就是查到的那串字符也是这么来的。
在scripts目录下找到对应的脚本。执行如下命令生成对应的密码hash
再次进入数据库,看是否可以对数据表进行修改。查看dbuser用户的权限
有修改权限。接下来就去改密码
登录成功,在网站content中找到flag3
这里提示去shadow文件中查找用户的密码
权限不够,需要提权(shadow文件一般是需要root权限的)。
使用如下命令查看哪些命令存在root权限
find / -user root -perm -4000 -print 2>/dev/null
这个命令是找用户组为root,权限包括为4000对应的权限的文件,从根目录/开始
4000权限大概就是能将对应文件所在用户组的权限给其他用户组使用。
参考链接:Linux 文件特殊权限详解
之后就使用find命令来获取root权限
touch a.txt
find a.txt -exec cat /etc/shadow ;
其中有一个用户为flag4。一般来说在home目录下每个用户会有一个以用户名命名的文件夹
进入可以查看到flag4.txt。由之前搜集到的信息可以得知开启了ssh服务,所以也可以尝试爆破密码再用ssh登录连接。
由于已经可以使用root权限,根据题目提示在root文件夹下找到最后一个flag。
个人小结:
除了前面使用msf中公开的漏洞进入网站后台之外。根据靶机中的flag提醒,还学习到了从CMS的配置文件中得到数据库的密码,以及利用数据库的权限对网站管理员密码进行重置。另外了解到非root用户如何使用root权限的方法。
最后
以上就是殷勤网络为你收集整理的Vulnhub-DC-1的全部内容,希望文章能够帮你解决Vulnhub-DC-1所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复