DC-2综合渗透,rbash逃逸,git提权,wordpress靶场渗透教程
前言
由于传播、利用本公众号小羽网安提供的文章、工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号小羽网安及作者不为此承担任何责任,一旦造成后果请自行承担!
本文主要讲解了渗透测试中的完整渗透测试流程,主要介绍了【wpscan】、【cewl】、【rbash逃逸】的使用技巧,靶场为vulnhub的机器大家可以自行下载,如果文章哪有不对,还请师傅们留言指出,谢谢您。
环境准备
靶机下载地址:https://download.vulnhub.com/dc/DC-2.zip
攻击机:kali
网络:nat模式
靶机复现
nmap主机发现,192.168.209.166或者使用arp-scan -l
nmap -sP 192.168.209.0/24

对扫描出的靶机进行全端口扫描
nmap -sS -p- 192.168.209.166

我访问这个ip的时候,自动跳转到了http://dc-2

但是我加上这个ip之后404

index.php可以正常访问

那么应该就是host文件问题,修改hosts C:WindowsSystem32driversetchosts在行尾添加这一行内容

保存之后,再次访问首页,就可以正常访问靶场了

Flag1
“Your usual wordlists probably won’t work, so instead, maybe you just need to be cewl.”
大致意思就是你可能需要cewl这款工具

看目录扫描结果,这是一个wordpress网站,有一个后台界面wp-admin

sql注入万能密码

拦截登录响应
登录失败

还有一些其他的测试方法,比如xss,弱口令都不行,这里我们就要用到cewl这个工具了
Cewl是一款采用Ruby开发的应用程序,你可以给它的爬虫指定URL地址和爬取深度,还可以添额外的外部链接,接下来Cewl会给你返回一个字典文件,你可以把字典用到类似John the Ripper这样的密码破解工具中。除此之外,Cewl还提供了命令行工具。
我们将扫描结果重定向到passwd.txt(就是保存文件或者使用cewl的自带的-m参数)

使用wpscan枚举可能的用户名
WPScan是一个扫描WordPress漏洞的黑盒子扫描器,它可以为所有Web开发人员扫描WordPress漏洞并在他们开发前找到并解决问题。

一共扫描出来三个用户admin,jerry,tom可以使用

此时我们已经有了用户名和密码字典

使用wpscan爆破账号密码,指定刚刚我们生成的用户字典users.txt和密码字典passwd.txt

爆破成功,结果如下
jerry / adipiscing
tom / parturient

来登录

成功

在旁边导航栏找到了Pages,即可得到flag2

这提示跟没提示一样
If you can't exploit WordPress and take a shortcut, there is another way.Hope you found another entry point.

文件上传
上传一个php文件,被禁止了

只能上传图片文件,我找了半天也没找到文件包含漏洞的地方

文件后缀爆破,也全部失败了

系统渗透
换思路我们之前端口扫描的时候有一个7744端口,不知道是什么服务,百度也搜不出来

用ssh默认22端口是拒绝服务的,指定一下7744端口的时候既让让我们输入密码,那这个就是ssh服务端口了

第一个用户测试失败
jerry / adipiscing

第二个用户,登录成功
tom / parturient

命令被限制了’rbash’
什么是rbash?它与一般shell的区别在于会限制一些行为,让一些命令无法执行,这里就让我的cat、clear、su等等命令进行了限制

查看可用的命令
compgen -c

滑到最下面,有一个vi命令

flag3.txt内容:可怜的老Tom总是追着Jerry跑。也许他应该为自己造成的压力而死。—网易有道
Poor old Tom is always running after Jerry. Perhaps he should su for all the stress he causes.

我们去/etc/passwd,看看能不能添加一个”root“用户,看样子不行了,你也可以直接查看这个文件的权限,这里我就不掩饰了

去home,cd 并不能直接使用,但是有一个 ls

直接找到了flag4

告诉我们使用git离开这里,应该就是让我们用git提权

查看文件所属,是jerry的,这里直接跳过吧,找到就好,没什么作用了

我们看看刚刚的flag3.txt,所属用户为tom

那么就用它提权试试

执行:shell

这里直接”提权”成功了

但是没什么作用哈,root目录也切换不了

查看环境变量

rbash逃逸
我们通过修改环境变量,之后使用jerry / adipiscing登录
tom@DC-2:~$ export PATH=$PATH:/bin/ # 直接添加环境变量
rbash: PATH: readonly variable # rbash
tom@DC-2:~$ BASH_CMDS[a]=/bin/sh;a # 把/bin/sh给a
$ /bin/bash
tom@DC-2:~$ su # 这里修改了BASH_CMDS的值后并不能直接使用su命令
bash: su: command not found
tom@DC-2:~$ export PATH=$PATH:/bin/ # 添加环境变量
tom@DC-2:~$ su jerry # su 正常使用
Password:
jerry@DC-2:/home/tom$
图解

此时我们是jerry权限,还是进不去root

查看当前suid可用命令
find / -perm -u=s -type f 2>/dev/null

这里有一个sudo可以用,rbash逃逸中的必要条件

git提权
sudo git help config
!/bin/bash 或 !'sh' #完成提权
# 或者
sudo git -p help
!/bin/bash #输入!/bin/bash 即可打开一个用户为root的shell

ok完成dc-2靶机

总结
本文详细介绍了利用Kali Linux对Vulnhub的DC-2靶机进行渗透测试的过程。通过nmap发现靶机及开放端口,利用cewl和wpscan工具生成字典,并成功爆破WordPress后台账号密码。面对rbash限制,通过环境变量修改实现逃逸,并利用git和sudo提权获取root权限。整个流程覆盖了信息收集、漏洞利用、权限提升等多个阶段,展示了全面的渗透测试技巧。
往期推荐
DC-1综合渗透从外网打到内网,msf后渗透,权限提升,入侵痕迹清除,绝对干货!
本站小部分内容转载于互联网,如有侵权还请联系















暂无评论内容