【vulnhub】DC2
本文最后更新于:2023年8月25日 下午
[TOC]
[vulnhub]DC2
信息收集
扫ip,有两种方式:arp
、nmap
1 |
|
192.168.56.137
扫端口:
1 |
|
flag1
我们使用浏览器登录80端口,发现登录不上,地址栏变为:http://dc-2
原因是dns解析不正确,我们需要在hosts
文件中添加:
访问可以获得flag1
提示我们需要使用工具cewl
获得字典,登录来获得flag2
flag2
cewl
首先需要了解一下什么是cewl
:
cewl
是一个用于生成自定义字典(custom wordlist)的工具。它的全称是“Custom Word List generator”,意为自定义字典生成器。cewl
工具的主要目的是通过分析指定的目标网页或文本文件,从中提取关键词和短语,然后将这些词汇组合成一个自定义的字典文件。
我们大概了解cewl
可以分析网页的关键词来生成自定义字典文件,此处我们只需了解-w
参数即可:
1 |
|
于是我们生成自定义密码词典:
1 |
|
我们再观察一下官网:
这个网站是由WordPress 4.7.10
搭建的,肯定有很多wordpress漏洞
我们可以使用工具:wpscan
wpscan
WPScan是Kali Linux默认自带的一款漏洞扫描工具,它采用Ruby编写,能够扫描WordPress网站中的多种安全漏洞,其中包括WordPress本身的漏洞、插件漏洞和主题漏洞
flag1提示我们需要登录,我们有了密码词典,但是没有用户名怎么登录,所以我们需要获得用户名,而wpscan
工具就可以做到
1 |
|
这里扫描出了3个用户名:
知道了用户名和密码的词典,我们就可以进行爆破了,可以使用hydra
、wpscan
、bp
等工具
bp
:
使用最后一个模式,计算笛卡尔积
wpscan
:
1 |
|
然后我们使用jerry
登录网站后台:/wp-admin
希望我们使用另一个点切入
flag3
我们想起之前7744
端口开放了一个ssh
我们使用tom
登录上ssh:
想查看flag3,却发现没有命令。注意到使用rbash
什么是rbash?
rbash(restricted bash)
,即受限制的 bash
经过查询发现可以使用rbash
逃逸
- https://blog.csdn.net/qq_43168364/article/details/111830233
- https://xz.aliyun.com/t/7642#toc-1
- https://fireshellsecurity.team/restricted-linux-shell-escaping-techniques/
在这个靶机中我们可以使用这种方法:
在vi
的末行模式输入:
:set shell=/bin/sh
:shell
结果还是不行,因为没有添加环境变量:
1 |
|
1 |
|
flag4
上面提示了su
,所以我们可以使用su
切换到jerry
,然后查看/home/jerry/flag4.txt
:
1 |
|
提示我们需要使用git
命令
flag5
这里需要了解一个知识点:git提权
git提权
git提权的前提是不需要使用密码就可以使用git命令
我们可以使用sudo -l
命令查看哪些可以具有root
权限的命令:
我们可以看到git
命令刚好满足,使用不需要密码,于是我们进行git提权:
我们可以使用如下命令:
1 |
|
提权成功后为root
权限:
查找最后一个flag:
1 |
|
总结
通过DC2靶机了解到了很多东西,例如cewl
工具可以根据网页的关键字生成自定义字典,例如想要寻找WordPress
的漏洞可以使用wpscan
工具来扫描,想要破解密码可以使用hydra
工具等等,以及受限制的bash:rbash
,需要rbash
提权到bash
来,还了解了一个git提权
,当sudo -l
列出的可特权执行的命令中git
不需要密码,就可以git提权