83

AssassinGo: 基于Go的高并发可拓展式Web渗透框架

 5 years ago
source link: http://www.freebuf.com/sectool/173156.html?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

*本文原创作者:Amyang,本文属FreeBuf原创奖励计划,未经许可禁止转载

AssassinGo是一款使用Golang开发,集成了信息收集、基础攻击探测、Google-Hacking域名搜索和PoC批量检测等功能的Web渗透框架,并且有着基于Vue的WebGUI,前后端交互主要采用WebSocket,结果实时显示在前台。并且扩展性强,实现各模块接口即可添加功能。

网站地址: https://assassin-go.ink

github地址: https://github.com/AmyangXYZ/AssassinGo

7FNZriA.jpg!web

0×00 主要功能

1.信息收集部分a) 检查HTTP安全头

 b) CMS版本识别
 c) 蜜罐概率检测
 d) CloudFlare绕过
 e) 路由节点跟踪并标记在googlemap上
 f) 端口扫描
 g) 目录爆破和可视化的sitemap
 h) Whois信息

RfM7ze3.jpg!web

eQvUfeN.jpg!web

2. 基础攻击部分

 a) 整站爬虫
 b) SQLi检测
 c) 反射型xss
 d) Burp的Intruder功能
 e) SSH爆破

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

fqaaErv.jpg!web

3. Google-Hacking

后端调用Headless-Chrome爬取google或bing搜索结果,完全支持google-hacking语法,而且不会被反爬虫检测。

yQR7ruI.jpg!web 4. PoC检测

选择PoC进行单个或批量检测。

jQRBZbv.jpg!web

0×01 概要设计

后端实现选用了组合模式,

zmuEBzJ.jpg!web

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

 a)  Set(…interface{}):设置本函数或PoC所必需的参数,如目标、端口、并发数量等等。
 b) Run():函数启动入口。
 c) Report() map[string]interface{}:返回执行结果,为后续生成报告准备。

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

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

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

0×02 项目进度

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

由于服务器性能有限,并未开放注册,大家想体验可以联系我手动注册([email protected]),

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

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

*本文原创作者:Amyang,本文属FreeBuf原创奖励计划,未经许可禁止转载


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK