不知攻,焉知防。作为安全服务攻城狮,实战之前要做大量的练习。今天小磊同学带大家来练习一下网络安全风险评估中不可或缺的漏洞评估环节。
上次讲到Metasploitable2的一个端口扫描,这篇文章将详细讲解这个系统所存在的漏洞,网上有这个系统的基础教程,但都是只讲述了其中少部分就结束或者是copy别人的,所以我决定来逐个手动去识别这些漏洞,出一个相对教全的教程。不采用漏扫的方式,因为自动化工具的准确性还是需要人去识别。
这次我们使用nmap和msf进行评估,在使用之前我们将kali以及程序更新到最新版本。
下面是本次已经评估的内容清单:
根据上一次的信息收集情况,我们先看下本次评估的内容:
首先我们看下21端口,一般这种我先看下是什么搭建的,可能存在中间件漏洞,其次我们可以尝试爆破。
Vsftpd 2.3.4版本存在一个后门,在msf上已经有这个后门的利用脚本。
22端口
首先这是个ssh端口,一般我先进行弱口令爆破。
我们使用这个ssh扫描模块
这个没用自带的字典,我从windows导入一个现有的字典。几秒之后即破解出用户名密码。
用户名msfadmin 密码msfadmin
23端口,这是个telnet远程终端,同样的像这种带登录的服务一般我先尝试进行爆破。
下图则为爆破成功,用户名msfadmin 密码msfadmin。
我们可以使用刚才的用户名密码登录了
80端口,这个http里面的我们采用测试web的方式进行,web漏洞涉及太多,后面我们再详述补充。这里我只演示其中一个。
根据nmap 脚本http枚举显示,存在一个phpinfo
我们打开看下
这个phpinfo不仅泄露的服务器信息,而且我们看到server API还是CGI方式运行的,这个方式在PHP一定版本下存在一个严重的漏洞- Cgi参数注入
我们在phpinfo.php后面加入?-s
发现成功把这个文件进行了还原。这个是2012年公开的漏洞。我们使用msf直接进行评估。发现已经getshell
139端口,445端口这两个都是smb类型的,是共享服务,首选我们需要知道它的共享目录有哪些,枚举之后可看到一共发现有5个如下
其次我们对其进行账户枚举,发现大量账户存在,这也是之前我们爆破的用户名的依据之一。
接着我们使用另外一个扫码脚本,这个脚本端口是445,在这里填充刚才获取到的共享目录,发现已经成功访问到tmp共享目录
现在我们可以进入共享目录随意浏览了。
查看下rootfs下的内容
1099端口,存在一个反序化远程命令执行漏洞,可看到已经getshell
1524msfable的一个后门,直接连之即可
3306端口,mysql端口,既然允许远程连接,那就爆破吧,直接上一个密码字典
成功之后,用户名root 密码为空
直接登录之
3632distccd服务,远程命令执行漏洞,直接exp
5432 端口,postgresql爆破,用户名密码如图
5900端口,vnc服务,vnc服务有两部分构成,一部分是服务,一个是客户端,我们进行爆破
得到密码为password后我们使用vnc-client进行连接即可
6667端口6697IRC服务, IRC服务这个版本存在后门漏洞,直接exp后getshell
8180http tpmcat默认端口,我们直接进行访问
爆破之,得到账户密码 tomcat;tomcat
部署war包getshell
8787端口drb服务,这里有个远程代码执行漏洞
直接exp 拿到shell
48339也是一个java-rmi服务,这个模块利用了RMI的默认配置。注册表和RMI激活服务,允许加载类来自任何远程(HTTP)URL。所以也是远程代码执行漏洞,下面是exp后getshell
结束,到此为止我们已经对该系统做了相对全面的漏洞评估,但是有一点大家应该知道,我们所做的仅仅基于tcp协议上,在udp协议上仍还是技术盲区,而且仅停留在现有的工具和资源上挖掘上,可看到还有一些服务漏洞没有被测试,所以可能还存在潜在的一些问题没有被挖掘,毕竟攻防无止境,我们要做的还有很多。更多精彩文章,敬请期待。
沙场练兵系列
领取专属 10元无门槛券
私享最新 技术干货