DC-2(入门)
关于Vulnhub
Vulnhub是一个特别好的渗透测试实战网站,提供了许多带有漏洞的渗透测试虚拟机下载。
新手入门DC-2:
下载地址:
https://www.vulnhub.com
主机渗透系统:
kali2020
安装好虚拟机后挂载Vmware运行
局域网内主机发现
扫描局域网所有设备(所有设备IP、MAC地址、制造商信息)
root@kali:~# arp-scan -l
通过扫描可以找出靶机地址192.168.233.136
nmap -sS -Pn -A -p- -n 192.168.233.136
通过nmap扫描我们发现,ssh服务的端口改成了7744(ssh默认端口号是:22)。
发现开放80端口,则可以进行网页访问.
访问主页 收集信息
(通常是解析造成的)在hosts文件添加对应的ip和域名;
vim /etc/hosts
然后在访问网站,正常访问。确定CMS是wordpress.
发现页面有flag信息,点开页面的flag,找到flag1.
根据提示,搜索cewl,发现是一个kali自带的密码生成工具。
cewl是一个ruby应用,爬行指定url的指定深度。也可以跟一个外部链接,结果会返回一个单词列表,这个列表可以扔到John the
ripper工具里进行密码破解。cewl还有一个相关的命令行工具应用FAB,它使用相同的元数据提取技术从已下载的列表中创建作者/创建者列表。
查看使用方法,使用cewl生成密码;
命令:
cewl -w dc2_passwords.txt http://dc-2
-w, –write:将输出结果写入到文件。
确定是wordpress,使用wpscan工具进行扫描用户
暴力枚举用户名
wpscan --url http://dc-2 --enumerate u
扫描出三个用户:admin、jerry和tom。
将三个用户写入dc-2_user.txt中。
直接使用wpscan进行密码爆破
wpscan --ignore-main-redirect --url 192.168.233.136 -U dc-2_user.txt -P dc2_passwords.txt --force
得到tom,jerry的密码
我们尝试用tom用户进行登录ssh服务,密码:parturient
用户:jerry,密码:adipiscing
命令:ssh tom@192.168.233.136 -p 7744
发现flag3.txt
尝试打开,发现不能打开,有rbash限制。
有很多不同的限制外壳可供选择。其中一些只是普通的shell,有一些简单的常见限制,实际上并不是可配置的,例如rbash(限制Bash)rzsh和rksh(受限模式下的Korn
Shell),这些都非常容易绕过。其他人有一个完整的配置集,可以重新设计以满足管理员的需求,如lshell(Limited
Shell)和rssh(Restricted Secure Shell)。
一旦配置可以被管理员收紧,可配置的shell就更难以绕过。在这些shell上绕过技术通常依赖于管理员有点*为普通用户提供某些不安全命令的事实。。如果在没有适当安全配置的情况下允许,它们会为攻击者提供升级权限的工具,有时还会向root用户升级。
其他原因是,有时管理员只是Linux系统管理员,而不是真正的安全专业人员,因此从渗透测试人员的角度来看,他们并不真正了解部队的方式,并最终允许太多危险命令。
尝试很多命令,最发现vi,可以使用。
用vi 查看flag3.txt,可以看出大概是让我们切换用户。
搜索一下关于bash绕过的方法
1.r意味着restrict
2.使用BASH_CMDS[a]=/bin/sh;a 注:把/bin/bash给a变量
3.
$ export PATH=$PATH:/bin/ 注:将/bin 作为PATH环境变量导出
$ export PATH=$PATH:/usr/bin 注:将/usr/bin作为PATH环境变量导出
4. echo /*查看文件
得到flag3,切换用户,jerry.
找到了flag4,查看提示最后一个flag,
flag4 提示我们可以使用git,我们可以通过git来提权
sudo -l #查看可以使用root权限无密码的命令,有git命令
sudo git help config
进入root后,查看根目录,找到最后一个flag.