github信息泄露监控
开源项目比较好的有三个:
https://github.com/FeeiCN/gsil.git
https://github.com/0xbug/Hawkeye
https://github.com/MiSecurity/x-patrol
其实都是原理大体上都是根据关键字作为特征搜索 , 可以根据自己企业的特征进行配置
收集特征
那如何找到我们的特征呢,GitHub作为一个开源代码托管平台,代码首当其中,但也会有人将GitHub仅当做版本控制系统来管理自己的文档、资料。这类资料都有一个共同特征,里面包含企业的专属特征:代码中接口的调用包含内部API地址、代码头部包含企业的Copyright信息、代码包名包含企业的主域名等。
常见几类特征
内部域名,内网接口使用的域名、测试域名等,比如mogujie.org
外部域名,对外使用的域名,可以选一些风险较高的,比如mail.mogujie.com
代码版权,代码头部注释中的版权声明,比如Copyright 2018 Meili-Inc. All Rights Reserved
主机域名,服务器HOST域名,比如goods.db.mogujie.host
代码包名,Java代码包名,比如com.mogujie.goods
如何找到其它企业内部特征?
可以从域名特征入手,最简单的通过一些特定关键词:
corp
dev
inc
pre
test
copyright
搜索GitHub代码,根据代码人工确认是否是误报。找到某个确定是该企业的工程后,分析改工程其它类型的特征即可,对于下属企业可以通过域名注册人反查并循环前面的逻辑。 比如要找蘑菇街的内部特征,可以通过在GitHub中搜索mogujie dev即可找到属于蘑菇街的工程,继而我们再从这类工程中找到真正的内部域名和其它类型特征。
实践例子
声明:通过本篇内容任何人都可以轻易找到任何公司的内部特征,例子只为提升理解,若觉得侵权请联系我删除。 仅列取部分典型厂商的典型内部特征作为讲解。
百度(BAIDU.COM):公网域名和内网域名混用
yx01.baidu.com
vm.baidu.com
epc.baidu.com
iwm.name
xdb.all.serv
阿里巴巴(ALIBABA.COM):INC和.NET是最喜欢用作内网域名
alibaba-inc.com
aliyun-inc.com
alibaba-inc.vipserver
alibaba.net
alipay.net
fliggy.net
taobao.net
腾讯(TENCENT.COM):用了一个不是自己的域名
tapd.oa.com
proxy.tencent.com
proxy.oa.com
npm.oa.com
tencentdb.com
tencent.com
京东(JD.COM):特征独一无二,比较准
jd.local
360(360.CN):特征独一无二,比较准
qihoo.net
Bilibili(BILIBILI.COM):CO域名和COM域名在搜索分词容易出问题,需要注意
bilibili.co
饿了么(ELE.ME):特征独一无二,比较准
elenet.me
陌陌(IMMOMO.COM):特征独一无二,比较准
wemomo.com
搜狐(sohu.com):喜欢INC
sohu-inc.com
sohuno.com
cyou-inc.com
途牛(TUNIU.COM):喜欢ORG
tuniu.org
tuniu-cie.org
tunie-sit.org
去哪儿(QUNAR.COM):和百度类似,但用二级域来区分,比百度清楚
dev.qunar.com
package.qunar.com
test.qunar.com
beta.qunar.com
local.qunar.com
corp.qunar.com
携程(CTRIP.COM)::特征独一无二,比较准
ctripqa.com
ctripcorp.com
爱奇艺(IQIYI.COM):爱奇艺是区分的最好的,数据库、应用间调用、人访问的都区分开了
qiyi.domain
qiyi.virtual
qiyi.db
了解搜索特性有利于特征收集
像其它搜索引擎一样,GitHub搜索会对内容进行分词,所以搜索的时候应该以单词为单位,如果有词组可以拆开用空格拼接起来搜索。
如果遇到一些比较容易出现误报的词,可以使用双引号括起来就行强制搜索,比如”mi.com”。
特殊字符不会被索引到。
使用时间倒序的方式,先处理最近上传的。