本人以后的文章将发布在我的技术与生活——小站首页 | MS02423中,此网站不在发布文章
一.环境搭建
1.靶机描述
DC-1是一个专门建造的易受攻击的实验室,目的是在渗透测试领域获得经验。它旨在对初学者来说是一个挑战,但它的难易程度取决于您的技能和知识以及您的学习能力。
2.靶机下载地址: DC: 1 ~ VulnHub
3.启动环境
4.设置网卡为nat模式
5. 虚拟机开启之后需要登录,我们不知道密码,需要探活ip地址,网段知道:192.168.52.0/24
二.渗透靶场
1.信息收集:寻找真实的靶场ip
Kali ip为192.168.52.129/128
所以分析可得靶机ip为192.168.52.130
2.信息收集:探端口以及服务
发现开放了22端口,开放了ssh服务,OpenSSH 6.0p1
发现开放了80端口,存在web服务,Apache httpd 2.2.22,Drupal
发现开放了111端口,开放了rpcbind服务
3.访问web站点:http://192.168.52.130/
发现是一个电信的drupal服务,根据wappalyzer插件可知当前运行的是Drupal 7的CMS
4.使用MSF渗透
1)搜索drupal7的漏洞
2) 搜索drupal模块
3)我们使用2018的模块
4)我们填写靶机IP地址,进行攻击可以看到攻击成功
5)我们进入shell,查看权限和id
5.我们列出所有文件,可以看到flag1.txt
三.查找所有的flag
1. 使用交互式拿shell
shell
python -c 'import pty;pty.spawn("/bin/bash")' //如果发现对方机器上有 python 的话
2.我们查看flag1.txt,打开发现提示信息,内容提示寻找站点的配置文件
3.我们网上搜索Drupal的默认配置文件为/var/www/sites/default/settings.php
4.我们查看这个文件
5. flag2提示,暴力和字典攻击不是常见的
只有获得访问权限的方式(以及您将需要访问)。
你可以用这些凭证做什么?
6. 登录此数据库,查看数据库信息,账号和密码
1)我们进入数据库
2) 查看数据库,切换到drupaldb数据库,查看查找默认的Drupal user 表,发现admin信息
7.我们更改drupal密码
1)忘记密码的解决方法
2)我们使用第二种方法
站点路径下执行
3) 然后在进入数据库中把密码字段进行替换
进入mysql,输入密码,切换到drupaldb数据库
4) 将pass字段进行替换
update users set pass="xxxx" where name="admin";
8.我们访问站点
9. 发现flag3
登陆站点之后,随便翻一番,发现flag3,
10. 点击flag3进入,发现提示信息
大致意思是提权并提示 -exec,想到suid提权 find 命令
11. 使用命令查看 suid 权限的可执行二进制程序
find / -perm -4000 2>/dev/null
这是一个在Linux或类似系统中使用的命令。它的意思是在根目录(/)下查找所有具有setuid位设置的文件。2>/dev/null表示将错误消息重定向到/dev/null,即忽略错误消息。
12. 使用命令测试,发现为root权限
13. 我们切换语句进入shell,执行whoami查看当前权限,执行ls查看当前目录下文件,切换到root目录,查看文件,发现cat thefinalflag.txt文件。
14. 查看cat thefinalflag.txt文件
Well done!!!
干得好!
Hopefully you've enjoyed this and learned some new skills.
希望你已经享受了这一点,并学到了一些新的技能。
You can Let me know what you thought of this little journey
你可以告诉我你对这段小旅程的看法
by_ contacting me via Twitter
通过twitter联系我
QDCAU7
QDCAU7
大致就是说你已经通过了本关卡。
15. 此时我们查看 /etc/passwd 文件,发现存在 flag4 用户,我们也可以使用 hydra 进行爆破
16. SSH连接登录,拿到flag4权限
四.相关知识点
1. [ MSF使用实例 ] 利用永恒之黑采用正向连接 shell 获得主机权限(CVE-2020-0796)(SMBGhost)
2. 简谈SUID提权(find提权方法)