龙空技术网

开源工具Zeus-Scanner宙斯扫描器

网络安全晴雨表 460

前言:

此时大家对“python扫描器”大体比较注重,朋友们都需要剖析一些“python扫描器”的相关知识。那么小编也在网摘上网罗了一些有关“python扫描器””的相关内容,希望我们能喜欢,大家快快来学习一下吧!

一.引言

Zeus-Scanner中文可以翻译为宙斯扫描器,是github上一款用python开发的开源工具(github原地址链接)。它是通过selenium-webdriver来自动运行web浏览器(firefox)。能够绕过搜索引擎的API调用,IP黑名单和验证码机制,从而不断地向搜索引擎发送request请求。

二 . 内容

宙斯扫描器本身内置有url解析器,除了默认的Google搜索引擎之外还兼容Aol,Bing和DuckDuckGO多个搜索引擎,同时能够对搜索结果进行多个漏洞评估。

宙斯扫描器的主要特点如下:

1,内置url解析器;

2,兼容多个搜索引擎;

3, 能够从谷歌url黑名单中提取url 链接从而绕过IP池 ;

4,兼容多个代理(http,https, socks4, socks5);

5,具有解析robots.txt/sitemap.xml文件的功能并将结果保存下来;

6,多个漏洞评估(包括XSS, SQLi, clickjacking, 端口扫描, whois 查找等);

7,能够兼容Tor代理和仿真Tor浏览器;

8,除了使用默认的用户代理(Zeus-Scanner/1.4.13.e5ac63(Language=Python/2.7.12; Platform=Linux))之外,开发者还给出了4000多个用户代理(在项目的etc/text_files/agents.txt这个文件中),使用中可以随机的使用其中的一个。当然也可以使用个人的用户代理( 使用方式就是用- agent=USER-AGENT)运行宙斯。

9,如果在使用宙斯扫描器的时候出现一些在开发者没有预料到的错误的时候,宙斯可以自动把问题,bug上传到github的issue上去等待开发者解决;

10,能够抓取一个页面,同时获得这个页有效的链接;

11,能够识别超过20个不同防火墙的WAF/IPS/IDS保护;

12, 能够用-d 命令来运行单个的高级搜索语句并且自动的启动火狐浏览器,在etc/text_files/dorks.txt 这个文件中官方给出了具有4000多个已经被测试过能够使用的搜索语句列表。可以用 -r+这个文件路径来运行宙斯从而获取搜索后的 url链接结果;

13, 能够将cookie , header和其他重要的信息保存到日志文件中;

1.安装

安装测试是在装有ubantu系统的虚拟机中,按照项目中给出的方法用命令来安装。其中需要注意的获取浏览器的版本必须是在51和57 之间,如果在安装之后第一次运行宙斯后出现问题,可能是需要卸载原有的火狐浏览器,重新安装指定版本的浏览器。下载Geckodriver,nmap和sqlmap都必须放在系统的/usr/bin目录下

图 1 Geckodriver

安装成功后如下图所示:

图 2 安装成功

2. 部分命令的使用介绍

查看宙斯扫描器自身带有哪些命令可以使用:

图 3 -h命令的部分截图

需要强调的是,在运行宙斯扫描器的时候-d,-l,-r,-b,-f这几个命令选项可以根据使用者的目的选取其中一个,是必须要有的选项,否则会出错。

除了开发者已经给出了几个使用的例子,来介绍其他一些命令选项的使用,如以下图片所示:

使用-b+url来抓取单个网页里的所有可用的链接,并将结果保存下来。其中-B是更改了宙斯默认的谷歌搜索引擎而使用的是Bing。

图 4 -b 的使用

结果是保存在了/log/blackwidow-log/blackwidow-log-17.log文件中。部分截图如下:

图 5 部分结果

使用-p来进行nmap端口扫描,并将结果保存到一个json文件中。其中的黄色字体显示的就是在特点中提到的多个漏洞评估了。

图 5 -p的使用

结果是保存在log/nmap-scan-log文件夹下,部分结果如下所示:

图 6 端口扫描的结果

用-x命令来找出待检测的连接中有没有xss攻击。

图 7 -x的使用

宙斯扫描器还能够结合sqlmap API 来使用。 sqlmap API和 sqlmap都有命令参数可以使用但用的方式会有所不同。sqlmap API 还能够运行一个真实的sqlmap会话。例如,如果想要把注入时的详细信息设置为第3等级,用sqlmap就是-v 3, 但是用sqlmap 就是 verbose 3。开发者给出的一个实例。其中还包括sqlmap API的一些命令参数的列表。

三.结束语

宙斯扫描器需要了解使用者目的之后结合命令参数来使用,同时作为一款开源工具,开发者的维护和更新都是比较频繁的。而且由于可以将错误自动连接到github的 issue 所以可以很方便的与开发者交流。下面是针对在测试过程遇到的某个问题。可以打开github的issue查看问题是否已经提交出去。

图8 问题截图

标签: #python扫描器