github采集器 开源_GitHub关键字扫描开源工具推荐

本文介绍了GitHub的关键字扫描API以及推荐了两款开源扫描工具——GSIL和Hawkeye,它们可以帮助企业及时发现并防止敏感信息泄露。GSIL通过API搜索关键字并邮件告警,而Hawkeye提供图形化界面便于配置和监控。
摘要由CSDN通过智能技术生成

前言

网络上多次爆出的GitHub泄露企业敏感信息事件,说明企业安全中GitHub关键字扫描是很关键及重要的安全基础建设,我用了一些事件针对不同类型的GitHub扫描开源产品作了一些测试调研,与君分享。

一、GitHub搜索接口

github给出了在代码找中搜索关键字的API,并且定义默认只搜索主分支代码,也就是master这个分支,只有小于384KB的文件才能被搜索。

在官方举例中:https://api.github.com/search/code?q=addClass+in:file+language:js+repo:jquery/jqueryq 表示为关键字;

in:file 表示为在文件中搜索(在文件目录中则是in:path,);

language 表示语言为JavaScript;

repo 表示为在jquery/jquery存储库中搜索;

API还提供了搜索结果展示的功能,在请求的时候带上请求头:curl-H'Accept:application/vnd.github.v3.text-match+json'\https://api.github.com/search/code?q=addClass+in:file+language:js+repo:jquery/jquery

示例:但是这个功能只显示匹配到的关键字和行数,对于实际应用作用不大:

二、开源工具介绍

网络上有很多GitHub扫描的开源工具,我的需求是:及时告警、扫描全面、可视化展示,经过一些测试对比后,推荐两款部署方便、配置简单的工具:

2.1 GSIL介绍

原理:

搜索范围:默认搜索前200个项目,最大5000(github限制)。

过程:通过API(/search/code)搜索规则文件rules.gsil中提交的关键字,然后分析得到的json结果,默认展示前30个相关项目。

扫描配置:在配置文件中会过滤一些作者认为无用的路径,可以根据实际情况屏蔽一些:

结果展示:该款工具没有页面展示,通过邮件告警,匹配存在关键词的行及其上下3行用于邮件发送来排查(用户体验较好)。

去重扫描:工具记录扫描过程中产生的相关代码内容、文件hash,在~目录下创建了一个隐藏文件夹.gsil。扫描引擎中如果文件的hash是之前遇到过的,则跳过:

周期扫描:可通过crontab配置,每小时执行一次:@hourly /usr/bin/python /root/gsil/gsil.py 规则名称

2.2 Hawkeye介绍

扫描原理前面已经简单介绍过了,Hawkeye由于拥有图形化界面,因此可以和GSIL搭配使用,我通常将GSIL扫描出来的账号,作为重点关注对象,配置更加详细的策略来监测。

三、总结

GitHub关键字扫描还有很多其他的开源工具,比如比较轻量级的gitpprey(https://github.com/repoog/GitPrey),还有小米研发的X-patrol(https://github.com/MiSecurity/x-patrol),从安装环境要求、配置功能实现、部署难易程度入手,就能找到一款适合企业环境的开源扫描工具。再加上一些二次开发的话,基本可以保障一些触及关键字的GitHub信息泄露能被及时的发现与删除。

感谢阅读,欢迎指导。

*本文作者:胡说,转载请注明来自FreeBuf.COM

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值