前言

最近我和我的团队最近完成了一个自动化的渗透测试框架,特地在这个安利一下下,有兴趣的朋友也可以试一试。

AssassinGo是一款使用Golang开发,集成了高可用情报收集、基础攻击向量探测、Google-Hacking综合搜索和PoC自定义添加并对目标进行批量检测等功能的自动化Web渗透框架,该框架有着基于Vue的WebGUI,前后端交互主要采用WebSocket技术,会将结果实时显示在前台,并且其可扩展性极强,用户实现各模块接口即可添加自定义功能。

项目网址:https://assassin-go.ink

Github: https://github.com/AmyangXYZ/AssassinGo

此处输入图片的描述

功能

信息收集部分

  1. HTTP安全头部检查

  2. 服务器识别

  3. CMS版本识别

  4. 蜜罐概率检测

  5. CloudFlare绕过并检测Real IP

  6. 路由节点跟踪并在googlemap上做可视化标记

  7. 端口扫描

  8. 目录爆破和可视化的sitemap

  9. Whois信息

  10. 子域名扫描

精准的的蜜罐概率检测、并发式的爆破、完美可视化的拓扑以及强大的CloudFlare 绕过并检测真实IP等功能 或许能让使用者在真实的渗透过程中如虎添翼

下面是部分功能截图:

(1)基础信息收集:

此处输入图片的描述

(2)路由探测并在地图上可视化标记:

此处输入图片的描述

基础攻击部分

  1. 整站爬虫

  2. SQLi检测

  3. 反射型xss

  4. Intruder

  5. SSH爆破

以下是部分功能截图:

Intruder

此处输入图片的描述

下个版本会将爬虫和XSS检测也升级成headless-chrome版本

Google-Hacking

后端调用Headless-Chrome爬取google或bing搜索结果,完全支持google-hacking语法,而且不会被反爬虫检测。这也可以说是一大特色,利用其强大的搜索能力以及详尽的搜索语法和人性化的帮助实现强大的针对性信息收集与自动化提取。

详细的Google-Hacking语法文档将引用团队成员精心整理的git项目,下面是项目地址:
https://github.com/K0rz3n/GoogleHacking-Page

此处输入图片的描述

POC 批量精准探测

本框架可内置大量的精心选择的最新的POC,并且会显示Poc的详细的信息。我们提供了非常方便的接口供使用者自定义添加POC,使用者可以根据前面功能搜索到的或批量或单一的目标搜索POC进行检测,非常的方便快捷,能够大大提升渗透测试的效率。

下面是功能截图:

此处输入图片的描述

网站服务

后端基于sweetygo

前端基于Vue。

前后端交互大量使用WebSocket,使扫描结果即时展示在前台。

概要设计

后端实现选用组合模式。

此处输入图片的描述

信息收集接口Gatherer、基本攻击接口Attacker、漏洞PoC验证接口基本相同,均包含下列三种方法:

  • Set(…interface{}):设置本函数或PoC所必需的参数,如目标、端口、并发数量等等。

  • Run():函数启动入口。

  • Report() map[string]interface{}:返回执行结果,为后续生成报告准备。

而POC接口还需要额外实现Info() string方法,返回该漏洞的基本信息。

当添加新的功能或更新PoC时仅需编写一个新的.go文件并实现对应接口的方法。

例如当新公布出一个远程代码执行漏洞的PoC时,我们可直接新建一个xx-rce.go文件(参考已写好的几个POC),实现上述接口,重新编译整个项目之后(Go语言的编译时间仅为数秒)即可在前台调用该POC去检测目标。

项目进度

基本功能已开发完,部署了一个demo版本,

由于服务器性能有限,并未开放注册,大家想体验可以联系我手动注册(amyang.xyz@gmail.com),

或者在自己本地搭建,必要的shell脚本和docker-compose已写好。

由于团队人手十分有限,很多地方不是很完善,POC也没有积攒几个,希望大家体谅。

致谢

在这个项目的开发完成过程中包括我在内的团队成员都付出了辛勤的努力,在此表示衷心的感谢,团队成员:
@Amyang @U1in @K0rz3n,同样,我们也期待你的加入。