网络安全扫描平台-Gryffin

Gryffin是一个大型的网络安全扫描平台,而且还不仅仅是一个扫描器!它实际是用来解决现有扫描器的两个问题:扫描范围、程度。

更大的扫描覆盖率可以减少漏报率,自带弹性扫描以及支持大型扫描的能力。你可以将扫描能力从1000拓展到100,000个应用程序。

环境要求:

Go

PhantomJS, v2

Sqlmap (for fuzzing SQLi)

Arachni (for fuzzing XSS and web vulnerabilities)

NSQ ,

running lookupd at port 4160,4161

running nsqd at port 4150,4151

with --max-msg-size=5000000

Kibana and Elastic search, for dashboarding

listening to JSON over port 5000

Preconfigured docker image

安装:

go get -u github.com/yahoo/gryffin/...

扫描覆盖范围:

覆盖范围有两个方面——爬行相关和fuzzing过程。在爬行阶段,覆盖率意味着占用大量应用程序的内存。在扫描阶段,或者在fuzzing的时候,它意味着能够测试应用程序的每个部分存在的应用漏洞。

爬虫

今天,大量的WEB应用程序是通过模板安装的,这意味着相同的代码或路径生成了数百万个url。对于安全扫描器而言,它只需要抓取由相同代码或路径生成的数百万个URL中的一个即可,Gryffin的爬虫就是这么做的。

页面数据去重

Gryffin的核心是一个去复制引擎,它获取最新的页面与已知页面比较。如果新页面的HTML结构与已经爬行到的页面类似,则将其分类为副本,而不是进一步的继续爬行。

DOM渲染和导航

今天大量的WEB应用程序都有着丰富的内容。它们是由客户端的JavaScript代码驱动的,为了在此类WEB应用程序中发现有效链接和代码路径,Gryffin的爬虫使用PhantomJS进行DOM呈现和导航。

扫描范围

由于Gryffin是一个扫描平台而不是一个扫描器,所以它没有自己的fuzzer模块。即使是对XSS和SQL注入这样的常见WEB漏洞进行fuzzing,在不必要的情况下不会重复造轮子。和Yahoo一样,Gryffin代码开源以及可以自定义fuzzer规则。其中一些定制的fuzzers规则可能会在将来开源,也有可能不属于Gryffin存储库。

出于演示的目的,Gryffin自带sqlmap和arachni。它暂时不支持其他扫描器。

你可能喜欢

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180303B0AUJE00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券