8.5、使用Skipfish检测安全漏洞
Skipfish(https://code.google.com/archive/p/skipfish/)由谷歌制作,于2010年对外发布。Skipfish被描述是一个高效的Web应用程序的安全性检测工具,默认安装在Kali Linux中,它不仅仅是一款检测工具。它是一款完整的漏洞扫描工具。它有以下特点:
- 高速:它可以达到每秒400多个请求,在高速局域网下可以到达每秒2000多个请求
- 它的命令行选项简单易用
- 它可以检测出各种各样的漏洞问题,从简单的目录遍历和信息泄露到不同类型的SQL注入和XML注入
在这小节中,我们将使用一个简单的例子来教会大家如何使用Skipfish并检查其结果。
实战演练
Skipfish被默认安装在了Kali中,可以随时使用,我们将要用它来扫描Peruggia:
1. 打卡一个终端并执行以下命令:
skipfish -o skipfish_result -I peruggia http://192.168.56.11/peruggia/
2. 然后将会出现一些带有建议性的信息,敲击Enter键或者等待60S之后自动开始
3. 扫描开始,然后将扫描统计信息展示出来。CTRL C可以在任何时候停止它。扫描时,终端会如下图所示:
4. 当扫描结束后,我们可以打开报告。在我们这个例子中,这份报告在我们运行的Skipfish的相对目录下:skipfish_result/index.html
5. 在“Issue type overview – click to expand”部分:我们可以点击问题的名称,然后可以准确地看到有效的URL地址和攻击载荷,如下图所示:
原理剖析
Skipfish将首先通过爬行站点地图并可选地为目录和文件名使用字典来构建站点地图。然后通过多个安全检查处理此映射。
在这个例子中,我们使用了Peruggia作为我们的漏洞虚拟机。为了防止它扫面整个服务器,我们使用了“-I peruggia”参数,设定不同的参数,将只会扫描该参数下指定扫描文本。使用“-o”参数将告诉Skipfish将报告保存在哪里,设置的目路在扫描运行时必须不能存在。
Skipfish的主要缺点是自从2012年以来就没有更新过。对于一些新兴的技术它并不适用于此。