SRC与各类证书(EDU、CNVD、CVE)挖掘

#Author: Ting丶

#该文章只做教学使用,请大家在授权情况下做测试

SRC分类

公益SRC/企业SRC

SRC挖掘

公益SRC挖掘

补天/漏洞盒子/CNVD

补天漏洞门槛要高一些审核较快

漏洞盒子什么洞都收,包括反射XSS,审核很慢

CNVD事件型漏洞工作日第二天基本就审了,很快,范围也大

怎么刷分?

找1day/nday,配合nuclei通杀

POC 网上有现成的,转换成nuclei对应的yaml格式

POC在哪找?

公众号/知识星球/CSDN/漏洞文库/漏洞公布平台

https://vuldb.com/?submit

这里会看到有github的链接,里面就会有具体的漏洞详情

进入链接,就可以看到数据包了 也就是漏洞详情

不会转换怎么办?

https://github.com/projectdiscovery/nuclei-ai-extension

如果是老CVE,可以自动生成CVE对应的yaml,如果是较新的CVE可以通过数据包来生成

自己挖通杀(下面讲)

EDUSRC挖掘

通杀

org: “China Education and Research Network”

去找通用系统直接挖,icon大于多少的系统

举例:若依弱口令、springboot配合SpringBoot-Scan工具、thinkphp-RCE

 favicon: "0488faca4c19046b94d07c3ee83cf9d6" or app: "SpringBoot框架"

推荐工具:https://github.com/AabyssZG/SpringBoot-Scan

端口通杀?

org: “China Education and Research Network” AND service: “mysql” port:“3306”

(如果搜端口,可能3306不一定是mysql,mysql也不一定在3306,所以直接搜服务)

3306弱口令、ssh弱口令(少)、1433弱口令、6379未授权/弱口令、ActiveMQ、Rabbitmq、docker未授权…

Active MQ 未授权访问  
Atlassian Crowd 未授权访问  
CouchDB 未授权访问  
Docker 未授权访问  
Dubbo 未授权访问  
Druid 未授权访问  
Elasticsearch 未授权访问  
FTP 未授权访问  
Hadoop 未授权访问  
JBoss 未授权访问  
Jenkins 未授权访问  
Jupyter Notebook 未授权访问  
Kibana 未授权访问  
Kubernetes Api Server 未授权访问  
LDAP 未授权访问  
MongoDB 未授权访问  
Memcached 未授权访问  
NFS 未授权访问  
Rsync 未授权访问  
Redis 未授权访问  
RabbitMQ 未授权访问  
Solr 未授权访问  
Spring Boot Actuator 未授权访问  
Spark 未授权访问  
VNC 未授权访问  
Weblogic 未授权访问  
ZooKeeper 未授权访问  
Zabbix 未授权访问  
NOCOS 未授权  
........

mysql弱口令

推荐工具:https://github.com/lz520520/railgun/releases

超级弱口令:https://github.com/shack2/SNETCracker/releases/tag/1.0.20190715

redis没数据不收?

大概率留有后门 提交EDU威胁情报

推荐使用redisplus来看,更齐全,更方便,还能看到是哪个服务器在连接使用该redis

别人刷过了还刷?

学校肯定会上新的系统,就会有新的redis,mysql…,就会有新的rank

前台很难出洞?

代码审计

源码怎么获得?

github,开源中国,gitee…

听说有的师傅是…

怎么快速从源码找到漏洞?

使用了shiro,就找shiro的key,刷shiro反序列化

看配置文件、可能数据库密码是通用,刷数据库弱口令、还有redis密码

组件历史漏洞,log4j、fastjson、一些框架漏洞

seay-快速找SQL注入…

黑盒供应商系统

一个系统多个漏洞,通杀刷几遍

例如:前台万能密码、后台SQL注入、测试未授权、通用弱口令

供应商的某个系统,存放大量学校系统的账号密码,弱口令刷一遍

案例

点击忘记密码

账号system

密保答案都是1(默认答案)

案例

刷elasticsearch未授权

案例

刷mysql默认密码

案例

刷弱口令

刷未授权

案例

刷万能密码

刷弱口令

语法

#建议打中小学资产

QUAKE语法

((((title:"中等专业学校" OR title:"职业技术" or title:"小学" OR title:"初中" OR title:"高中" OR title:"附属中学" OR title:"一中" OR title:"二中" OR title:"中学" OR title:"中等专业学校") AND (title:"系统" OR title:"登录" OR title:"Login" OR title:"平台" OR title:"管理" OR title:"后台" OR title:"教育局"OR title:"物联网"OR title:"大数据"OR title:"监测")) AND country_cn: "中国") AND NOT province_cn: "台湾省"

FOFA语法

(title="中等专业学校" || title="职业技术" || title="小学" || title="初中" || title="高中" || title="附属中学" || title="一中" || title="二中" || title="中学" || title="中等专业学校") && country="CN" && region!="HK" && (title="系统" || title="登录" || title="Login" || title="平台" || title="管理" || title="后台" || title="教育部" || title="教育局" || title="物联网" || title="监测" || title="采集" || title="大数据")

老实挖

测前台

第一步弱口令,有则有,无则无,能爆破可以实时爆破,包括爆破密码、爆破用户名、登陆SQL注入,测注册的逻辑、测修改密码的逻辑

案例

1=1是显示密码不正确 说明admin是存在的sql语句返回了true

1=2的时候显示账号不存在说明返回了false

如果密码加密怎么爆破?

如果能够逆向出来可以配合burp插件BurpCrypto,自己写加密算法

首先分析js获取加密算法,加密算法是

  
function calc(pass) {  
       
     return md5("username"+md5(pass).toLowerCase()).toLowerCase();  
       
}  

配置爆破插件

推荐工具:https://github.com/whwlsfb/BurpCrypto

第二步目录扫描(也可以是第一步),有自己的字典checklist最好,如果一开始是空白页面,也可能能扫出该站点的其他应用来打

第三步找接口、测接口

接口怎么找?

FIndsomething、jsfinder、分析js、js.map还原

restore-source-tree abcd.js.map

第四步JS分析

测后台

测SQL,找desc/asc/ordeyby

推荐工具:https://gitcode.com/smxiazi/xia_sql/overview

案例

测未授权/越权

推荐工具:https://gitcode.com/smxiazi/xia_Yue/tree/main

测逻辑

将类似id,phone,username修改为其他平级用户的,让后端认为是在对其他用户进行操作

案例

案例

将以上类似参数(还有role)修改为管理员的 role=1 id=0或1 username=admin

案例
修改返回包

修改为YES

如果数据包加密?

需要js逆向了,抓发包的一瞬间,查看调用栈,找到调用接口的位置,在参数加密之前,使用浏览器控制台修改参数

再讲springboot

https://github.com/LandGrey/SpringBootVulExploit

使用spring框架的系统很多

水分的姿势很多

env泄露  1rank  
heapdump泄露 2rank  
有数据库密码,可连接  4rank+  
有AK/SK且有效 接管后有服务器 高危6rank+   
有shiro密钥   能getshell 高危6rank+  
httptrace泄露  有泄露敏感信息  1rank  
如果泄露了有效token cookie  可以构造数据包获得数据  2-3rank+  
spring cloud gateway RCE(env里可以看到)  
.........

案例

案例

尝试连接

连接成功

案例

案例

获得token:

使用有效的token构造数据包 如下

案例

可以看到有gateway

创建路由

refresh…后访问 返回命令执行的结果

被动递归目录扫描BP插件

发现为常规路径的druid/swagger/actuator

推荐工具:https://github.com/F6JO/RouteVulScan

企业SRC挖掘

不放过任何功能点

不放过任何返回包

不放过任何参数

针对业务挖掘

当文件上传处 文件名字或者文件路径可控 可以造成任意文件删除  
  
burp全局搜索    =http    eyJ0     token  
  
接口与参数绑定关系,这个接口是30,那个接口是100,把100的货号放30的接口  
  
注册时,用户名枚举  
  
优惠价重复使用 在生成订单 时记录该订单界面 点击返回 界面 导致优惠卷退回    在回到刚才订单界面  不消耗优惠卷  
  
将limit或者size调大,实现越权  
  
账号绑定时,替换手机号或者用户名 实现接管  
  
有手机号的地方双写手机号,同时获取到验证码实现接管  
phone=13333333333&phone=18888888888  
phone=13333333333,&phone=18888888888  
  
凭证过早返回,还没登陆时候就返回了可以找接口试试  
  
收藏点赞并发,取消收藏点赞并发  
  
签约漏洞,第一次签约后取消签约,再去充值。  
在低价签约的页面,停留,两个设备,在低价充值  
  
创建多个订单,锁定库存,让用户无法购买商品  
  
size等参数  造成DDOS  
  
越过审核,将相关状态码参数改为2,3(1为待审核)  
  
将二维码,转url,可能里面有url=,造成url跳转  
..................................

如果能进一个系统,就逮着一个系统hao

SRC挖掘的思路很多,多看一些报告,多动手挖掘,多分析功能业务逻辑。

思路太多、说不完…

证书挖掘

EDU证书挖掘

有VPN

直接进VPN,测各种系统,思路同上

有认识的同学,可以远程,连校园网、直接打内网

学校二手群/闲鱼…

有的师傅是社工…

VPN密码有规律可以爆破

无VPN

常规思路挖掘

云/供应商

怎么收集云/供应商的资产?推荐使用国内Hunter

(web.title="xx大学" or web.body="xx大学") and (icp.name!="xx大学") and (web.title="系统" or web.title="平台" or web.title="管理" or web.title="后台") and ip.country=="CN"

国外Hunter 能搜到意想不到的资产

https://hunter.how/

结果

CNVD证书挖掘

事件型

Hunter语法搜偏远资产 容易驳回

(web.title="运营商" or web.body="运营商") and (icp.name!="运营商") and (web.title="系统" or web.title="平台" or web.title="管理" or web.title="后台") and ip.country=="CN"  
  
(icp.name="运营商") and (web.title="系统" or web.title="平台" or web.title="管理" or web.title="后台") and ip.country=="CN"

通用型

找硬件设备例如路由器,可交通用弱口令(web是不收的)

设备的命令执行

怎么找设备?

针对一个销售设备的公司,通常其产品都是相同ICON,就去搜icon,找通用系统/设备直接刷

去公司官网找他的产品

#可以自己完善语法 抛砖引玉  
title:"路由器" or title="打印机"

如果有的系统icon换了怎么办?

如果要刷不同型号的设备,但是不同型号icon都一样怎么区分?

加上body:“型号”

为什么有的师傅能够一口气“出20本CNVD”?

正常代码审计

源码获取方式同上

关注国外一些漏洞

CVE挖掘

#必须是通用型 不收弱口令

找通用系统,交了CNVD之后交CVE,可以同时获取CNVD和CVE

代码审计重复的CNVD漏洞拿去交CVE

网上公布的CNVD通用漏洞,但是没交过CVE的,可以…(不道德但…)

漏洞挖掘怎么学?怎么挖漏洞?怎么渗透?

较合理的途径应该从漏洞利用入手,不妨分析一些公开的 CVE 漏洞。很多漏洞都有比较好的资料,分析研究的多了,对漏洞的认识自然就不同了,然后再去搞挖掘就会易上手一点!

学习漏洞挖掘的正确顺序

当然,学习漏洞挖掘之前,需要掌握以下几个方面的内容:

在这里插入图片描述

编程语言和计算机基础知识

在漏洞挖掘过程中,挖掘者需要编写代码来验证和利用漏洞,因此需要至少掌握一种编程语言,如 C、Python、Java 等。同时,还需要了解计算机的基础知识,例如计算机系统的组成结构、操作系统的原理、计算机网络的基本概念、数据库的工作原理等。如果没有这方面的基础知识,就很难理解漏洞挖掘中所需要的各种技术和工具。

安全基础知识

漏洞挖掘是一项安全工作,因此需要掌握一些安全基础知识,例如 Web 安全、网络安全、应用程序安全、二进制安全等。建议挖掘者先学习一些基础的安全知识,例如 OWASP Top 10 漏洞、常见的网络攻击技术和漏洞类型等,这可以帮助挖掘者更好地理解漏洞挖掘中所面临的问题和挑战。

漏洞挖掘工具

学习漏洞挖掘需要掌握一些常用的漏洞挖掘工具,例如 Burp Suite、Metasploit、Nmap、Wireshark、IDA 等。这些工具可以帮助挖掘者加速漏洞挖掘的过程,同时也能帮助挖掘者深入理解漏洞的原理和产生的原因。例如,Burp Suite 可以帮助挖掘者拦截和修改 HTTP 请求,Metasploit 可以帮助挖掘者构造攻击载荷等。

学习漏洞挖掘技巧和方法

学习漏洞挖掘需要了解一些常用的技巧和方法,如 Fuzzing、代码审计、反向工程、漏洞利用等。这些技巧和方法能够帮助挖掘者更快速地发现漏洞,并且深入理解漏洞的原理和利用方式。例如,Fuzzing 可以帮助挖掘者通过自动生成大量的输入数据,来测试程序是否存在漏洞,代码审计可以帮助挖掘者通过分析代码来发现漏洞等。

总的来说,学习漏洞挖掘需要综合掌握多方面的知识,包括编程、计算机基础知识、安全基础知识、漏洞挖掘工具以及漏洞挖掘技巧和方法。建议先从基础知识入手,逐步深入学习,不断实践,并在实践中发现和解决问题,才能逐渐成为一名优秀的漏洞挖掘者

五. 写在最后

希望这篇文章在可以帮助你解开一些对于漏洞挖掘的谜团。在学习和研究漏洞挖掘的过程中遇到困难并感到不知所措是很正常的。不过学习的过程就是这样,只有不断的去尝试才会进步。祝你在漏洞挖掘的路上走的越来越远。

《网络安全/黑客技术学习资源包》全套学习资料免费分享,需要有扫码领取哦!

在这里插入图片描述

  • 18
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网络安全技术库

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值