【CVND】资产大于5000w的公网通用系统查询,使用fofa自带的fid参数检索,结果更精准
下载地址:
https://github.com/bxxiaoxiong/cnvd_fofa_assets
解决问题:
现在现存的cnvd获取通用系统脚本的判断逻辑都较为简陋,都是通过公司名称搜索,之后获取一个标题进行判断是否为通用系统,存在较大的误报情况,此脚本在此基础上增加通过fofa自带的指纹参数fid进行搜索,进一步精准获取符合条件的通用系统,方便挖掘cnvd证书。
(FID(FeatureID)是FOFA自己设定的指纹信息)
CNVD证书获取的条件:
- 对于中危及中危以上通用型漏洞(CVSS2.0基准评分超过4.0分)(除小厂商的产品、非重要APP、黑盒测试案例不满10起等不颁发证书)。(中危漏洞,公司资产大于5000w,并且通用系统大于10个)
2、涉及电信行业单位(中国移动、中国联通、中国电信及中国铁塔公司)和中央部委级别(不含直属事业单位)的高危事件型漏洞,CNVD将给予原创漏洞证明(即CNVD漏洞证书,电子版),该证明可通过编号在CNVD官方网站进行查询跟踪。
用法:
前期资产搜索:
通过企查查、爱企查、小蓝本等平台获取资产数大于5000w的资产
因为普通会员每次最多查询的数量是10000条左右,所以筛选时加上城市,做到全面的探测
一般的筛选条件是,拥有软件著作权,资产大于5000w,有官网
将获取到的结果导入companys.txt文件中
需要有fofa的高级会员
将emile和apikey导入config.ini文件中
直接运行脚本python3 main.py
如果碰到资产数大于10的资产,会进行fid参数搜索,如果fid参数搜索的结果也大于10,会把结果输出到result.csv文件中
其中第一列为fofa的搜索输入内容fid=”xxxxx==”,第二列公司名称,第三列是获取到的前五个标题
原理说明:
通过fofa平台(有会员)的api进行筛选:
第一部分的判断逻辑为fofa搜索到的存活资产大于10,即可保留结果,这块可自行判断资产大于多少收录
因为资产大于10就可能存在通用系统,这种判断方法比较粗糙,但也有效。
筛选下来的系统通过fofa的统计聚合接口
https://fofa.info/api/v1/search/stats?fields=fid&qbase64=
可以通过该接口判断fid,如果fid大于10则判断为存在通用系统,此处接口5秒可调用一次。
当然fofa的fid拔下来之后还是有很多的误报,比如会有菠菜,或者是fid为nginx之类的基本没啥可能挖到新漏洞的通用系统,所以在结果中输出了前五个结果的标题,可自行判断是否为通用系统。
接下来就可以愉快的挖洞了~
请登录后查看评论内容