哎,格局呢。遇到大型的系统(厂商),其对代码审计的能力要求比较高,所以比较难审计出洞,所以慢慢的后面我就改变思路改为黑盒挖去了。那为什么还要写白盒挖取这个,是因为有一些代码审计能力比较强的师傅,可以考虑一下这种挖掘方式,毕竟白盒的挖掘方式比黑盒更容易出洞。
① 利用空间测绘寻找
② 利用脚本寻找
③ 在CNVD官网寻找
首先来讲讲第一个方法:利用空间测绘,这里以fofa为例我们可以搜索一些常见的系统可能使用的名称,比如说"管理系统"、"登录系统"、"某某平台"等等
还可以利用组合语法如一些常见登录系统会使用到的一些js文件,css文件等去进行寻找,比如
然后找到这些系统之后,看看归属于哪个公司,判断其归属于哪个公司,最好用的方法就是,在这种技术支持上去看是属于哪个公司
当然也有一些系统是没有这种技术支持的,这个时候我们就需要一些其他的方法去判断其归属于哪个公司,有源代码中有注释的,有进后台发现某某公司开发的,反正找归属是个细心活,没有太多的技巧。找到归属于哪一个公司之后的话,我们就可以利用爱企查等查企业信息等网址对该公司做一个查询,看看其注册资产
注册资产超过5000万,这套系统就满足发放证书的基本条件了,我们就可以进行一个挖掘,假如没超过5000万,我们就不用进行挖掘了,因为即使是挖到了洞,也不满足发放证书的条件。本人自己在最初挖掘CNVD证书的时候就是利用空间测绘这种方法,找满足条件的系统,然后进行挖掘。自己第一次挖掘CNVD的时候也是利用这种方法,也是有幸挖掘到一个Elastic的一个0day,然后申请了如下证书。
第二个方法:利用脚本寻找
具体脚本如下文
- 作者:OceanSec
- 文章来源于https://oceansec.blog.csdn.net/
复制代码这个脚本我自己没有使用过,不过其导出5000万漏洞资产,然后再结合一些工具半自动化测试确实适合快速去刷洞。
第三个方法:在CNVD官网寻找
这也是我自己使用最多的一个方法,怎么利用CNVD官网去寻找目标呢,首先来到CNVD官网。
在漏洞列表处,可以看到以往发生的安全漏洞,然后我自己比较喜欢寻找WEB应用的系统,所以我会选择一个WEB应用分类,当然师傅们也可以更具自己擅长挖掘的东西来进行选择。
可以看到其会报道处某某公司的某某系统存在某某漏洞
比如这里有个某某公司,那我们就可以利用爱企查去查询一下这个公司的注册资产,如果超过5000万,满足发放证书条件,那我们就可以根据这个提示去试着寻找一下这个系统,找到之后呢,我们可以利用我们平常的测试手段,尽量模仿打一下CNVD官网所通报出来的漏洞,据我打过多个的经验来看,大多数都是能打到的,找到漏洞点进行漏洞复现的。当然测试到了漏洞点,你可以尝试提交一下,不过百分之99的概率是重复的,既然重复为什么还要在这寻找目标呢。
① 其实这个系统爆出一个漏洞,其实在某种程度上,其系统的安全性就与其他相比来说较低的,那我们就可以对这个系统进行一个详细的测试,细心一点测试的话,你就会收获到一些惊喜。
② 有些系统我们测试一下弱口令,假如我们测试出来弱口令(web应用系统的弱口令CNVD是不收录的),我们可以进入后台再进行一个深度挖掘。
③ 假如CNVD爆出的是某某可以getshell的漏洞,我们可以尝试复现,假如复现成功的话,我们可以把源代码打包备份一份出来,进行一个黑盒加白盒的深度测试。
其上三个方法呢,由前到后提交漏洞重复的概率会依次降低。在发现存在某个漏洞后,我们还可以去寻找该公司的其他系统,看看该公司其他公司是否也存在该种类型的漏洞(因为一个公司不同的系统很有可能是一个开发团队写出来的,一个系统存在问题,那么其开发的另一个系统也很大概率存在该问题),那么怎么寻找该公司的其他问题呢。我们利用爱企查查询一个企业过后,我们可以来到知识产权,然后点击软件著作权信息。
这里就可以寻找一些该公司开发的其他公司系统信息
运气好碰到类似的系统的话,就可以开心地把一份报告变成两份报告,拿两份证书。
0x06 挖掘思路
掌握了收集资产的方法,接下来需要的就是一定的挖掘技巧,在挖CNVD的过程中也存在一些经常挖到的漏洞种类和一些小小的挖掘技巧。
① 大型框架导致的漏洞(如log4j2,shiro身份绕过等等)
大型框架导致的0day,特别是最新爆发的核弹级漏洞log4j2,在平常的测试过程中可以注意一下这种框架漏洞。(log4j2证书鉴赏)
② 目录扫描、源代码、js文件、修改请求返回状态码探针后台地址挖掘未授权漏洞
自己在挖掘这些系统的时候,经常可以挖掘都未授权访问漏洞,挖掘未授权的方法,我们可以使用目录扫描,在源代码中、js文件中查看一些后台的url,还可以通过修改请求的状态码如把0改为1,false改为true等让系统跳转后台地址等。
③ 通过弱口令进入后台挖掘
前台的功能点功能较少,假如某个系统存在弱口令,我们就可以进入后台,扩大我们的攻击面(挖掘例子如下)
④ 设备弱口令漏洞
虽然CNVD已经不收录WEB应用的弱口令的通用洞了,但是一些设备的弱口令漏洞其还是正常收录的。当然设备弱口令你挖掘到非常简单,但是你想挖掘到没有重复的那也是相当的卷,所以你想通过挖掘设备弱口令来获取证书的话,你就要去时刻关注这些设备厂商的动态,在其发布新设备的第一时间就去测试该新设备的弱口令,然后用上你最快的手速写好报告,提交报告,然后坐等证书。
⑤ RCE打包源码进行代码审计
当你RCE一个系统的时候,你可以把该系统的源代码打包一份出来,然后通过白盒的方式去审核源代码,进一步扩大战果。
0x07 结尾
大概挖掘思路就是这些,当然可能还有一些没有想到的没有写上来,以后想起来的单独写写。
最后祝师傅们证书满满。