如何高效挖掘Web漏洞?

简介

SRC漏洞平台:安全应急响应中心(SRC, Security Response Center),是企业用于对外接收来自用户发现并报告的产品安全漏洞的站点。说白了,就是连接白帽子和企业的平台,你去合法提交漏洞给他们,他们给你赏金。 目前国内有两种平台,一种是漏洞报告平台,另一种就是企业SRC。这里也给大家强调一下,一定不要非法挖洞,要注意挖洞尺度和目标要有授权!做一个遵纪守法的好公民!

由于特殊原因本人需每周提交部分漏洞到CNVD国家安全漏洞共享平台,最近发现站点不接收小企业漏洞,提交的也均未被审核通过,经过一番询问得知,目前CNVD接受政府、医疗、学校以及部分集团和国企等SRC漏洞,这无疑为我们挖洞增加了不小难度。

下面是我目前的挖洞思路:

寻找挖洞目标
使用趁手的挖洞工具
挖洞时间
漏洞验证
提交漏洞

过程中使用的工具

本文牵涉到的知识领域和使用的工具主要有:

1.python的基本使用
2. 漏洞扫描工具的使用
3.漏洞验证能力
4.网络空间测绘平台、 企查查、爱企查
5.长亭的xray漏洞扫描工具
6.360的动态爬虫工具crawlergo
7.SRC漏洞提交平台

本文使用的脚本主要有(python脚本):

1.fofa API调用脚本
2.目标URL存活验证脚本
3.xray和crawlergo联动脚本

注意: 演示为Mac系统,过程期间提供的脚本如有window用户需稍稍进行修改,后面在代码中也会提示

详细过程

一、 寻找挖洞目标

1.1 工具介绍

1.网络空间测绘平台:fofa、 奇安信网络空间测绘Hunter、360网络空间测绘Quake(需要有会员);
2.API脚本;
3.企查查、爱企查(需要有会员)。

1.2 目标检索过程

本次我们以fofa为例批量检索需要的目标地址,使用fofa语法检索目标,然后通过API脚本下载对应数据。

事先组织好查询语法,本次我们以域名的方式进行检索,对域名为".http://gov.cn"地区为中国状态码为200进行检索,可以发现有很多资产,因为会员限制我们每天只提取1万个目标,所以还需要继续优化使用的检索语法:

host=".gov.cn" && country="CN" && status_code="200"

通过对地区细分可以再次对数据进行筛选,可以发现大多数地区在3万以内,这样就可以可以分批进行检索下载了:

host=".gov.cn" && country="CN" && status_code="200" && region="Beijing"

然后通过fofa API进行数据提取,过程中需要使用python脚本对fofa API数据提取代码如下(运行代码前需要提前知道fofa的邮箱和api_key在个人中心进行查看):

# 申明:此工具仅供学习使用,不负有相关法律责任
# window用户和Linux用户均可直接使用,无需进行修改import base64
import csvimport requests# 查询函数
def Inquire(email, api_key, gammer):qbase64 = base64.b64encode(gammer.encode()).decode()api = 'https://fofa.info/api/v1/search/all?email={}&key={}&qbase64={}&size=10000'.format(email, api_key, qbase64)print("正在请求页面查询{}".format(gammer))response = requests.get(api)data_result = response.json()["results"]count = len(data_result)print("总共可获取数量为{}条数据\n".format(count))# print(data_result)count_range = GetNumber()write_file(gammer, data_result, count_range)# 下载次数函数
def GetNumber():count_range = input('请输入获取数据的数量(最大限制10000条):')# count_range = 10000 #若使用批量查询,默认下载数可以直接设置return int(count_range)# 写入函数
def write_file(gammer, data, count_range):filename = gammer + '.csv'with open(filename, 'a', newline="") as f:writer = csv.writer(f)writer.writerow(["URL", "IP地址", "访问端口号"])for result in data:list_data = [result[0].strip(), result[1].strip(), result[2].strip()]writer.writerow(list_data)count_range -= 1if count_range == 0:break# 交互界面
def GUI_Communication():print("\n\t FOFA——API接口工具\n")email = input('Email:')api_key = input('api_key:')num = int(input('是否为单量查询(是1/否0):'))if num == 1:gammer = input('查询语法:')Inquire(email, api_key, gammer)elif num == 0:with open("gammers.txt", 'r') as f:for gammer_data in f.readlines():gammer = gammer_data.replace('\n', '')Inquire(email, api_key, gammer)else:print("只能输入0或1!")if __name__ == '__main__':GUI_Communication()

脚本运行后输入正确的邮箱和api_key,将上面组织好的语法进行输入,填写下载数量对数据下载,会在脚本目录生成一个以语法命令的表格文档,打开就是我们需要的目标地址;

接下来需要对目标存活性进行验证,并输出为格式化URL:http://ip或域名:端口,方便进行漏洞挖掘,本次我们依然使用python脚本进行存活验证,需要提前将表格里的url保存到文本中每行一个目标URL,放置在该代码相同文件夹即可,脚本运行完后会在同级目录生成url_ok.txt文件,该文件为最终目标URL,脚本如下:

# 申明:此工具仅供学习使用,不负有相关法律责任
# windows用户需将代码中的./url.txt的./去掉即可import requestsdef foo():for url in open("./url.txt"):url = url.strip()if 'http' in url or 'https' in url:url1 = urlurl2 = Noneelse:url1 = f'http://{url}'url2 = f'https://{url}'try:ok = requests.get(url1, timeout=(5, 8))if ok.status_code == 200:print(url1, ok.status_code)with open("./url_ok.txt", 'a+') as url_ok:url_ok.write(url1 + "\n")url_ok.close()else:ok_1 = requests.get(url2, timeout=(5, 8))if ok_1.status_code == 200:print(url2, ok_1.status_code)with open("./url_ok.txt", 'a+') as url_ok:url_ok.write(url2 + "\n")url_ok.close()else:print(url2, ok.status_code)except:try:ok2 = requests.get(url2, timeout=(5, 8))if ok2.status_code == 200:print(url2, ok2.status_code)with open("./url_ok.txt", 'a+') as url_ok:url_ok.write(url1 + "\n")url_ok.close()else:print(url2, ok2.status_code)except:print(f"{url2} URL无效")if __name__ == "__main__":foo()

二、 趁手的挖洞工具

工具其实有很多,自己使用顺手就可以。

2.1 工具介绍

1.xray:一款由是从长亭洞鉴核心引擎中提取出的社区版漏洞扫描神器;
2.360-crawlergo:有360安全团队开发一个使用chrome headless模式进行URL入口收集的动态爬虫工具。
3.xray和360-crawlergo联动脚本

本次我们使用xray和crawlergo进行联动,对刚刚整理的目标进行漏洞挖掘,具体使用也可以参考xray官方教程,也可以跟着博主思路进行使用;

2.2 工具下载链接

xray:直接访问官网进行下载,github版本更新不及时,建议直接通过官网下载:

· 官网:CT Stack 安全社区

· github:Releases · chaitin/xray

360-crawlergo:

· github:https://github.com/Qianlitp/crawlergo/releases

联动脚本:

· github:https://github.com/timwhitez/crawlergo_x_XRAY

2.3 工具使用

下载适合自己操作系统类型的工具(博主为Mac arm64,下载darwin_arm64版本),然后统一放置在一个文件夹中:

将下载的crawlergo和xray放置在联动脚本程序,然后将联动脚本程序的crawlergo和xray文件夹删除,注意需要修改crawlergo_darwin_arm64文件名为crawlergo,修改主程序launcher.py和launcher_new.py部分代码,主要是chrome路径改为本地路径,博主chrome浏览器位置为:/Applications/Google Chrome.app/Contents/MacOS/Google Chrome,将如下代码更改即可:

放置在同一文件夹;

修改主程序launcher.py和launcher_new.py浏览器文件目录,两个文件修改位置基本一致,建议使用主程序launcher.py该程序有爬取回显;

将第一步获取的目标放置在targets.txt文件中,注意需要逐行隔开,然后本地开始使用xray监听127.0.0.1:7777,脚本编写默认监听7777端口,联动本质为通过脚本将crawlergo爬去的目标数据发送给正在监听的xray,然后实现目标的漏洞检查;

目标放置给targets.txt文件;

启动xray监听 ,监听命令不理解的可以去xray官网查询;

./xray_darwin_arm64 webscan --listen 127.0.0.1:7777 --html-output proxy.html

启动联动主程序爬取目标,等待片刻,可以发现爬虫已经爬取好数据通过本地回环7777端口发送给xray,接下来只需要安静的等待输出报告即可;

三、挖洞时间

关于挖洞时间这个就不确定了,还待看运气,不过由于大家都在挖SRC所以现在就不太容易挖掘了,建议睡觉前电脑跑着,或者直接整个虚拟机一直运行。

四、漏洞验证

漏洞验证也是我们从事web安全必须掌握的技能,这个其实很简单,不懂就问,度娘总会给你满意答案,不过也有小技巧,报告里面一般都会给相应的验证脚本和验证思路,大家直接根据报告进行验证一般都没有问题。

五、提交漏洞

提交SRC漏洞平台有很多,本人主要还是在CNVD国家信息安全漏洞共享平台进行提交,当然也有其他的很多平台,下面我列出一部分,可以供大家参考,应该算是比较详细了。

A阿里巴巴 (ASRC)https://security.alibaba.com/阿里云先知阿里云先知  爱奇艺 (71SRC)爱奇艺安全应急响应中心  安恒安全应急响应中心  BBIGO (BSRC)BIGO Security Response Center  BOSS直聘 (BSSRC)BOSS直聘安全应急响应中心  百度 (BSRC)https://bsrc.baidu.com/  百合 (BHSRC)https://src.baihe.com/  贝贝 (BBSRC)https://src.beibei.com.cn/  贝壳 (BKSRC)贝壳安全应急响应中心  本木医疗 (BMSRC)https://security.benmu-health.com/src/  哔哩哔哩 (BILISRC)哔哩哔哩安全应急响应中心  C菜鸟网络 (CNSRC)菜鸟安全应急响应中心  DDHgate (DHSRC)DHSRC 安全应急响应中心  大疆 (DJISRC)DJI Security Response Center  滴滴出行 (DSRC)滴滴出行安全应急响应中心  东方财富 (EMSRC)东方财富安全应急响应中心  斗米 (DMSRC)斗米安全应急响应中心  斗鱼 (DYSRC)斗鱼安全应急响应中心 - DYSRC  度小满 (DXMSRC)Vue App  F法大大 (FSRC)法大大安全应急响应中心  富友 (FSRC)富友安全应急响应中心  G瓜子 (GZSRC)瓜子安全应急响应中心  H好未来 (100TALSRC)好未来安全应急响应中心  合合 (ISRC)合合安全应急响应中心 ISRC  恒昌 (HCSRC)恒昌安全应急响应中心  虎牙 (HSRC)502 Bad Gateway  华为 (HBP)华为安全奖励计划  华住 (HSRC)Huazhu Security Response Center  欢聚时代 (YSRC)安全应急响应中心  货拉拉 (LLSRC)货拉拉安全应急响应中心  火线火线安全平台 refJ焦点 (FSRC)焦点安全应急响应中心  金山办公 (WPSSRC)金山办公安全应急响应中心  金山云 (KYSRC)漏洞盒子 | 金山云安全应急响应中心(KYSRC)  京东 (JSRC)京东安全应急响应中心  竞技世界 (JJSRC)安全应急响应中心  K酷狗 (KGSRC)首页 | 酷狗安全应急响应中心  快手 (KwaiSRC)快手安全应急响应中心  旷视 (MSRC)火线  L老虎证券 (TigerSRC)https://security.itiger.com/  乐信 (LXSRC)http://security.lexinfintech.com/  理想理想安全应急响应中心  联想 (LSRC)漏洞盒子 | 联想集团安全应急响应中心  猎聘 (LPSRC)猎聘安全应急响应中心  M MYSRChttps://mysrc.group/  马蜂窝 (MFWSRC)马蜂窝安全应急响应中心  蚂蚁集团 (AntSRC)蚂蚁集团安全应急响应中心官网 - AntSRC - 蚂蚁集团安全响应中心,支付宝安全响应中心,阿里巴巴漏洞反馈,支付宝漏洞反馈,蚂蚁集团漏洞反馈,网商银行漏洞反馈,芝麻信用漏洞反馈,口碑漏洞反馈,花呗漏洞反馈,蚂蚁财富漏洞反馈,支付宝情报反馈,阿里巴巴情报反馈,网商银行漏洞,芝麻信用漏洞,口碑漏洞,花呗漏洞,蚂蚁财富漏洞,阿里巴巴漏洞,支付宝漏洞,蚂蚁集团漏洞,支付宝情报,阿里巴巴情报  美丽联合 (MLSRC)美丽联合集团安全应急响应中心  美团 (MTSRC)美团安全应急响应中心  魅族 (MEIXZUSRC)魅族安全中心  陌陌 (MMSRC)陌陌安全应急响应中心  N你我贷 (NSRC)首页  OOPPO (OSRC)OPPO安全应急响应中心 | OSRC  P平安 (PSRC)平安安全应急响应中心  平安汇聚 (ISRC)平安安全应急响应中心  Q千米 (QMSRC)首页 - 千米电商云安全应急响应中心  去哪儿 (QSRC)去哪儿安全应急响应中心  R 融360 (Rong360SRC)融360安全应急响应中心  SSHEINSHEIN Inc.Security Response Center  SOUL首页 | Soul安全应急响应中心  360 (360SRC)360安全应急响应中心  深信服 (SSRC)首页 | 深信服安全应急响应中心  世纪佳缘 (JYSRC)https://src.jiayuan.com/  水滴安全 (SDSRC)水滴安全应急响应中心  顺丰 (SFSRC)顺丰安全应急响应中心  苏宁 (SNSRC)https://security.suning.com/  TT3出行 (T3SRC)T3出行安全应急响应中心  TCL (TCLSRC)h5_tcl_src_website  腾讯 (TSRC)腾讯安全应急响应中心  同程旅行 (LYSRC)首页 | 同程旅行安全应急响应中心  同程数科 (TJSRC)TJSRC 同程数科安全响应中心  统信(USRC)首页 | 统信安全应急响应中心  同舟共测同舟共测-企业安全响应联盟  途虎 (THSRC)首页 | 途虎安全应急响应中心  途牛 (TNSRC)途牛安全应急响应中心  UUCLOUD (USRC)https://sec.ucloud.cn/  VVIPKID (VKSRC)首页 | VIPKID安全响应中心  VIVO (vivoSRC)vivo 安全应急响应平台  WWiFi万能钥匙 (WIFISRC)WIFI万能钥匙安全响应中心  挖财 (WACSRC)挖财安全应急响应中心  完美世界 (PWSRC)首页  网易 (NSRC)网易安全中心  唯品会 (VSRC)VSRC首页-唯品会信息安全中心  微博 (WSRC)微博安全应急响应中心  微众 (WSRC)
微众银行安全响应中心  58 (58SRC)58安全应急响应中心  伍林堂 (WSRC)首页 | 伍林堂安全应急响应中心  X喜马拉雅 (XMSRC)喜马拉雅安全应急响应中心  享道出行 (SDSRC)享道出行SRC  小米 (MISRC)小米安全中心  小赢 (XYSRC)首页 | 小赢安全应急响应中心  携程 (CSRC)携程安全应急响应中心  新浪 (SSRC)首页 - 新浪安全应急响应中心  讯飞 (XFSRC)讯飞安全响应中心  Y易宠 (ESRC)ESRC  一加 (ONESRCOnePlus Security Response Center (OneSRC)  一起教育 (17SRC)首页 | 一起教育安全应急响应中心  宜信 (CESRC)宜信安全应急响应中心  银联 (USRC)银联安全应急响应中心(USRC)  萤石 (YSCR)https://ysrc.ys7.com/  有赞 (YZSRC)首页 | 有赞安全应急响应中心

注意事项

漏洞挖掘过程大家一定要授权进行,一定不要非法挖洞,注意挖洞尺度;

检索目标URL时可以通过多种途径,不一定只有上文介绍的那些方法;

文中介绍的python脚本,如果是window客户端需要修改部分代码;

文中的python脚本如果有运行时报错,大概率可能是没有安装python包,需要pip install安装一下;

如果官网下载的xray运行报错,是因为当前最新版本的xray默认运行不会生成新的配置文件,会找旧的配置文件就是config.yaml文件,所以如果小伙伴之前没有用过这个工具,需要先下载旧版本然后生成配置文件拷贝给新版本进行使用;

xray和360-crawlergo联动脚本需要修改浏览器目录配置,根据自己系统路径进行修改;

如果出现爬取的目标发送给xray,xray没有扫描的动作,这个博主暂时也不知道什么问题,更换其他目标就没有这个问题,感觉像是目标的问题;

然后就是大家有更好的工具也可以评论分享,大家一起来学习,共同进步,最后祝大家都早日成为安全届的大佬。

对于网络安全方面,我自己也做了很多的研究,整理了很多网络安全的资源,从入门到进阶的都有,包括红蓝对抗的完整学习路线图、配套的视频教程、工具包和技术文档等等:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/643577.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Leetcode—24. 两两交换链表中的节点【中等】

2023每日刷题(八十七) Leetcode—24. 两两交换链表中的节点 实现代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x),…

Redis(发布订阅、事务、redis整合springboot、集成 Spring Cache)

目录 一.redis的发布订阅 1、什么 是发布和订阅 2、Redis的发布和订阅 3、发布订阅的代码实现 二.Redis事务 1.事务简介 1、在事务执行之前 如果监听的key的值有变化就不能执行 2、在事务执行之前 如果监听的key的值没有变化就能执行 3、Exec之前就出现错误 4、Exec之…

Centos7 两种方式安装 MySQL5.7 步骤 yum 、本地 tar 文件

一、使用 yum 源方式安装 1、卸载系统自带 mariadb MariaDB Server 是最流行的开源 关系型数据库 之一。它由 MySQL 的原始开发者制作,并保证保持开源。 在 CentOS 7 中默认安装有 MariaDB 可忽略,安装完成之后可以直接覆盖掉 MariaDB。 查看并卸载系统…

【极数系列】Flink项目入门搭建(03)

【极数系列】Flink项目入门搭建(03) 引言 gitee地址:https://gitee.com/shawsongyue/aurora.git 源码直接下载可运行,模块:aurora_flink Flink 版本:1.18.0 Jdk 版本:11 1.创建mavenx项目 2.…

清越 peropure·AI 国内版ChatGP新功能介绍

当OpenAI发布ChatGPT的时候,没有人会意识到,新一代人工智能浪潮将给人类社会带来一场眩晕式变革。其中以ChatGPT为代表的AIGC技术加速成为AI领域的热门发展方向,推动着AI时代的前行发展。面对技术浪潮,清越科技(PeroPure)立足多样化生活场景、精准把握用户实际需求,持续精确Fin…

SpringBoot+Vue充电桩管理系统 附带详细运行指导视频

文章目录 一、项目演示二、项目介绍三、运行截图四、主要代码1. 分页获取预约数据代码2.保存预约信息代码3.修改订单状态代码 一、项目演示 项目演示地址: 视频地址 二、项目介绍 项目描述:这是一个基于SpringBootVue框架开发的充电桩管理系统。首先&…

网络安全的使命:守护数字世界的稳定和信任

在数字化时代,网络安全的角色不仅仅是技术系统的守护者,更是数字社会的信任保卫者。网络安全的使命是保护、维护和巩固数字世界的稳定性、可靠性以及人们对互联网的信任。本文将深入探讨网络安全是如何履行这一使命的。 第一部分:信息资产的…

怎么给wordpress网站底部页脚添加备案号和链接?

以前“WordPress后台 >> 常规”最底部是有一个ICP备案号的,我们只需要填写备案号并保存更改即可让WordPress自带主题底部显示ICP备案号,但是现在新版本的WordPress已经没有了这个ICP备案号选项,而且也无法直接添加公安联网备案号&#…

Typecho后台无法登录显示503 service unavailable问题及处理

一、Typecho 我的博客地址:https://www.aomanhao.top 使用老薛主机动态Typecho博客框架handsome主题的搭配,文章内容可以异地网页更新,可以听后台背景音乐,很好的满足我的痛点需求,博客部署在云端服务器访问响应较快…

单调栈笔记

单调栈 1.每日温度2.下一个更大元素 I3.下一个更大的元素4.接雨水5.柱状图中最大的矩形 单调栈正如其名字,用一个栈(能够实现栈性质的数据结构就行)来存储元素,存储在栈中的元素保持单调性(单调递增或者是单调递减&…

信息检索与数据挖掘 | (十)线性回归与逻辑回归

文章目录 📚线性回归算法流程📚Bias and variance📚过拟合&欠拟合📚逻辑回归算法流程 📚线性回归算法流程 ybwx 使用loss function L来评估函数的好坏 从而我们要选择使L最小的模型参数w,b 使用梯度下降的方法…

JAVA 学习 面试(六)数据类型与方法

数据类型 基本数据类型 为什么float3.4报错 3.4 默认是浮点double类型的,如果赋值给float是向下转型,会出现精度缺失,,需要强制转换 Switch支持的数据类型? byte、short、int、char 、 enum 、 String 基本类型与包…

trino-435: trino接入TIDB数据源

文章目录 一、TIDB介绍二、TIDB源接入流程三、遇到的错误1、数据源注册:2、查询表数据一、TIDB介绍 二、TIDB源接入流程 三、遇到的错误 1、数据源注册: http://localhost:8080/v1/catalog/register?name=tidb_test {"connector.name":"tidb",&quo…

SpringBoot整合QQ邮箱发送验证码

一、QQ开启SMTP 打开QQ邮箱&#xff0c;点击设置&#xff0c;进入账号&#xff0c;往下滑后&#xff0c;看见服务状态后&#xff0c;点击管理服务 进入管理服务后&#xff0c;打开服务&#xff0c;然后获取授权码 二 、导入依赖 <!-- 邮箱--><dependency>&…

php低版本(7.4)配置过程中遇到的问题及基本解决手段

目前php不支持较低版本的安装&#xff0c;如果安装低版本必须借助第三方库shivammathur //将第三方仓库加入brewbrew tap shivammathur/php //安装PHPbrew install shivammathur/php/php7.4 可能出现的问题 像这样突然中止然后报错&#xff0c;一般是网络问题&#xff0c;或…

Random Sprays Retinex 传统的图像增强算法RSR

文章目录 前言1、Random Sprays Retinex 概况2、Random Sprays Retinex 具体实现2.1、喷雾的生成2.2、径向密度函数的确定2.3、像素的选择2.4、亮度的计算2.5、参数的调整 3、Random Sprays Retinex 算法效果的表现4、Random Sprays Retinex 现存的问题 前言 Random Spray Reti…

C++面试宝典第24题:袋鼠过河

题目 一只袋鼠要从河这边跳到河对岸,河很宽,但是河中间打了很多桩子。每隔一米就有一个桩子,每个桩子上都有一个弹簧,袋鼠跳到弹簧上就可以跳得更远。每个弹簧力量不同,用一个数字代表它的力量,如果弹簧力量为5,就代表袋鼠下一跳最多能够跳5米;如果为0,就会陷进去无法…

代码中遇到的问题2

目录 记录: 好处&#xff1a; 问题一&#xff1a; 解答: 问题二: 解答: 常见类型问题: 记录: string connStr ConfigurationManager.ConnectionStrings["connStr"].ConnectionString; 在代码中写上这段代码&#xff0c;将连接数据库的代码语句放到&#xff…

关于在微信小程序中使用taro + react-hook后销毁函数无法执行的问题

问题&#xff1a; 在 taro中使用navigageTo() 跳转路由后hook中useEffect 的return函数没有执行 没有执行return函数 框架版本&#xff1a; tarojs: 3.6 react: 18.0 原因&#xff1a; 使用navigateTo() 跳转路由的话并不会销毁页面和组件&#xff0c;会加入一…

性能优化-OpenCL运行时API介绍

「发表于知乎专栏《移动端算法优化》」 本文首先给出 OpenCL 运行时 API 的整体编程流程图&#xff0c;然后针对每一步介绍使用的运行时 API&#xff0c;讲解 API 参数&#xff0c;并给出编程运行实例。总结运行时 API 使用的注意事项。最后展示基于 OpenCL 的图像转置代码。在…