尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
浏览器资源嗅探扩展 cat-catch:从内核版本到下载加密 m3u8 的实战路径
浏览器资源嗅探扩展 cat-catch从内核版本到下载加密 m3u8 的实战路径【免费下载链接】cat-catch猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch播放器能播页面上却找不到下载按钮右键也只有视频另存为——这是保存在线视频时最常见的场景。cat-catch猫抓是一个浏览器资源嗅探扩展把页面加载过的媒体资源视频文件、m3u8 流媒体地址、图片全部捕获出来再提供筛选、合并、转码与下载。它擅长什么又在哪里画线一句话定位cat-catch 拦截页面发出的 HTTP 请求与响应把可下载的媒体资源整理成清单让你挑一个带走。它擅长的事列出并筛选页面全部资源正则、扩展名、去重、时长排序解析 m3u8/HLS流媒体常用的分片播放列表格式与 DASH/MPD 清单支持 AES-128 解密、在线合并、发送到 ffmpeg 转码缓存捕获、深度搜索在页面数据里找疑似解密密钥、视频/WebRTC 录制、跨标签页媒体控制。它不做的事不改善画质、不重新编码不提供远端下载服务所有下载都由你本地浏览器完成也看见页面没向服务器要过的资源——页面没请求过的内容工具变不出来。三条获取路径商店、源码还是离线装普通用户的最快路径打开对应商店搜索 cat-catchChrome 走 Chrome 网上应用店Edge 走 Microsoft Edge 加载项商店Firefox 版本在 Firefox 附加组件AMO商店注意需用非中国大陆 IP 访问手机 Edge 用户直接扫官方二维码安装见下图装完点击扩展图标弹出页即列出当前页捕获的媒体。⚠️ cat-catch 完全开源任何人都可以修改后重新上架商店市面上已出现携带广告甚至恶意代码的伪冒版本。只认官方商店页面与官方发布包别从来源不明的站点拿 .crx 文件。开发者的源码审计与调试路径克隆仓库git clone https://gitcode.com/GitHub_Trending/ca/cat-catch打开扩展管理页如chrome://extensions开启右上角开发者模式点加载已解压的扩展程序选中仓库根目录含 manifest.json 的那一层改动代码后在管理页点刷新即可生效适合审计逻辑或加自己的分支。离线或企业内网路径在有外网的机器上到官方仓库 Releases 页面右键 .crx 文件另存为把文件拷贝进内网机器内网机器的扩展管理页开启开发者模式将 .crx 直接拖入窗口浏览器提示确认即完成安装。一个差异要留意仓库同时打包了 manifest.firefox.jsonFirefox 版本仍用 Manifest V2 的background.scripts加载模式js/background.js 顶部注释写明了两种后台脚本加载方式的区别做跨浏览器维护时别忽略。内核版本要多高才能用全功能manifest.json 里声明了minimum_chrome_version: 93但这只是能装上的底线。真正的功能分界是这样的内核版本扩展可用性当前 2.7.2Chromium 低于 93只能用 1.0.161.0.17 起一律装不上Chromium 93–103基础嗅探可用storage.session会话存储2.5.3 起、新录制脚本recorder2.js2.2.3 起在低版本被隐藏不支持的按钮会主动收起Chromium 104–113大部分功能可用低于 114 的内核缺少sidePanelAPI2.6.3 修复了此类内核上扩展不可用的问题Chromium 104完整功能官方文档的推荐线Firefox2.4.6 起要求 1132.5.7 起升级到 Manifest V3128 才支持深度搜索、缓存录制等脚本自查方法地址栏输入chrome://versionEdge 为edge://version看Chromium 版本一行Firefox 查about:version。它是怎么看见页面资源的机制拆解webRequest 两个钩子先请求头再响应头结论先行cat-catch 不扫页面 DOM 找video标签而是挂在浏览器网络请求管线上请求经过即打标。manifest.json#L69-L81 以run_at: document_start、all_frames: true把 js/content-script.js 注入所有 http/https 页面保证资源加载早期就到位。真正的捕获发生在后台利用的是浏览器网络监听 API webRequestchrome.webRequest.onSendHeaders在请求发出时把请求头存进G.requestHeadersMap 并做正则初筛 js/background.js#L64-L74服务器回第一个字节触发onResponseStarted此时响应头齐全资源类型判断更准 js/background.js#L76-L86onErrorOccurred清理失败请求留下的临时缓存 js/background.js#L88-L93。命中的资源先进内存G.urlMap再由定时任务落盘。点击图标后看到的弹出页就是这份清单的视图层顶部四个标签页是当前页面其他页面媒体控制/设置疑似密钥深度搜索得到的疑似解密密钥放在这里下方是筛选栏正则、扩展名、去重、排序与两组按钮功能组视频录制、WebRTC 录制、屏幕捕获、深度搜索、缓存捕获、模拟手机 UA、自动下载和下载组下载所选、复制、全选/反选、在线合并送 ffmpeg、清空。媒体控制面板还能对网页里正在播的视频做倍速、画中画、全屏、截图与进度拖拽。后台脚本为什么不会被浏览器杀掉结果用户停留很久再回来资源列表不丢。原因是 Manifest V3 的后台是 Service Worker后台脚本空闲约 5 分钟会被浏览器强杀js/background.js#L10-L12 的注释就直说了这一点。cat-catch 用三个手段保持微活跃注册webNavigation.onBeforeNavigate与onHistoryStateUpdated空监听页面一导航就把自己唤醒 js/background.js#L13-L14名为HeartBeat的长连接端口250 秒后断开重建持续维持存活 js/background.js#L15-L27每 25 秒调一次chrome.runtime.getPlatformInfojs/background.js#L28。即便 worker 仍被杀findMedia被中断后会等全局初始化完成再自我重试 js/background.js#L96-L103捕获不丢。m3u8 管线如何把分片变成完整视频加密点播的 m3u8 在浏览器里能播、却没法直接存成文件解析器就是为这类场景做的专用管线。入口是一串 URL 参数url、requestHeaders、initiatorReferer 备用、title、filename、tabid回 popup 取密钥、key、autoDown、retryCount、ffmpeg等 js/m3u8.js#L2-L31。管线分四步lib/hls.min.js 的Hls实例解析播放列表与分片信息 js/m3u8.js#L73-L76AES-128 加密流交给 lib/m3u8-decrypt.js 的AESDecryptor逐片解密 js/m3u8.js#L80深度搜索到的疑似密钥进possibleKeys集合 js/m3u8.js#L82同时显示在弹出页疑似密钥标签里供人工验证分片下完后可在线合并、用 lib/mux.min.js 做 TS→MP4 封装或发送到 ffmpeg 转码。2.7.2 还加了隐藏下载成功的切片与倒序排列边下边存模式下由 lib/StreamSaver.js 做流式写盘直播流可以边播边存。你的数据去哪了又能合法下载什么数据存在哪里全部本地无远端服务器、无跟踪器。嗅探到的请求头与资源先挂在后台内存 Map 上 js/background.js#L37-L38落盘交给浏览器定时任务 APIchrome.alarmsif (alarm.name save) { (chrome.storage.session ?? chrome.storage.local).set({ MediaData: cacheData }); return; }即 js/background.js#L46-L55 的 save 逻辑优先写随浏览器关闭即清的storage.session不可用时退回storage.local。manifest.json 声明的 tabs、webRequest、downloads、storage、alarms 等权限全部服务于本地功能host_permissions里的all_urls只用于感知页面资源请求不是数据上传通道。你能合法下载什么官方文档的界线很明确扩展仅供下载你拥有版权或已获授权的视频禁止未经许可抓取受版权保护的内容。使用行为的全部法律责任由用户自担工具按原样提供开发者不承担直接或间接责任。网站如何申请不被嗅探在本仓库新建一个 Issue标题用固定格式[Opt-Out Request] 你的域名如[Opt-Out Request] example.com正文附上网站域名与联系人邮箱便于核实身份。有效请求会在后续版本中把域名加入避免抓取列表。扩展侧由 js/options.js 的屏蔽网址配置白名单/黑名单两种模式与blockUrlSet请求跳过逻辑 js/background.js#L115-L118 共同生效开源项目更新有周期等一个版本发布即可。许可证、依赖与二次开发三分钟看完许可LICENSE 为 GPL-3.0 全文1.0 时代用 MIT 许可证2.0 起切换到 GPL v3。二次开发基于 cat-catch 源码做衍生扩展并对外分发需履行 GPL v3 的开源义务——项目立场是希望衍生作品同样保持开源。核心依赖都内联在 lib/ 目录组件负责的事仓库文件hls.js解析 m3u8 播放列表与分片lib/hls.min.jsm3u8-decryptAES-128 加密分片解密lib/m3u8-decrypt.jsmux.jsTS 分片重封装为 MP4lib/mux.min.jsmpd-parserDASH/MPD 清单解析lib/mpd-parser.min.jsStreamSaver.js流式写文件边下边存lib/StreamSaver.jsMQTT.js资源发送到 MQTT 协议lib/mqtt.min.jsjQuery / json-viewer / qrcodeDOM 操作、JSON 查看器、二维码lib/jquery.min.js装之前的两张自查清单内核低于 104 时部分按钮被隐藏属设计行为而非 bugchrome://version查一下再装低于 114 的内核请确保版本在 2.6.3 及以上修复了缺失sidePanelAPI 导致的不可用问题。源码、Releases 包与 Issue 入口都在项目仓库 cat-catch 中克隆命令见上文开发者的源码审计与调试路径一节。【免费下载链接】cat-catch猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

PS 射击游戏局内重生(Respawn)流程:从倒地到满血复活的完整旅程

PS 射击游戏局内重生(Respawn)流程:从倒地到满血复活的完整旅程

你在一场团队竞技中被敌人击倒。 画面变暗,击杀提示出现。几秒后,你在出生点重新出现,生命值恢复,又能继续战斗。 看起来只是: 死亡 → 等待 → 复活但对游戏系统来说,它是一套涉及战斗判定、状态切换、网络同步、出生点选择和资源重置的完整流程。 下面以一款服务器…

📅 2026/10/11 4:30:39
Doris三种存储模型对比:明细、聚合与主键模型选型指南

Doris三种存储模型对比:明细、聚合与主键模型选型指南

接手 Doris 数据表建模的时候,很多开发者第一反应就是问:这三种存储模型到底该选哪个?我见过不少团队因为一开始把表模型定错,后面数据量上来之后,查询要么慢得离谱,要么结果数对不上,只能删表重…

📅 2026/10/11 4:30:39
「美版 DeepSeek」第一次交卷:Beam 追到了 GLM-5.2,但差了最新一代一整代

「美版 DeepSeek」第一次交卷:Beam 追到了 GLM-5.2,但差了最新一代一整代

「美版 DeepSeek」第一次交卷:Beam 追到了 GLM-5.2,但差了最新一代一整代 2026 年 10 月 5 日,美国的 Reflection 发布 Beam —— 它的第一个开放权重模型。 一天后,法国的 Mistral 发布 Mistral Large 4,它有史以来最…

📅 2026/10/11 4:30:39
MORE NEWS

更多资讯

📰

REA模型:用事件驱动思路重构企业核心数据模型

很多人在做企业系统重构时,都绕不开凭证、流水、账户余额这一套老逻辑。早期我也一样,张口闭口就是科目余额表、借贷匹配。直到某天接手一个租赁设备中心的库存系统,我才真正意识到,传统复式记账模型在企业业务系统里已经拧巴到了…

📰

测试001项目复盘:时间压缩下的测试策略与缺陷管理实战

1. 测试001项目上线前的最后48小时:我做了哪些亡羊补牢的事"测试001"这个项目代号,我印象太深了。不是因为它技术含量多高,而是因为它几乎踩遍了一个测试项目能踩的所有坑:需求文档含糊、开发自测不充分、测试环境不稳定…

📰

扩散模型图像恢复实战:从DDPM原理到条件生成与DDIM采样

简介:这份资源面向深度学习研究者与图像恢复方向的开发者,提供一套基于扩散模型(diffusion model)的完整可运行代码,只需修改数据集路径即可直接用于去雨、去雾、去雪等多种图像恢复任务。压缩包共30个文件&#xff0c…

📰

开源趋势周报第40周:开发工具链与AI编程助手新动向

1. 这份周报到底在追踪什么每周花几个小时翻一遍开源社区的趋势榜单,已经成了我这两年雷打不动的习惯。2026年第40周这份趋势周报,说白了就是把这一周里冒头最快、讨论度最高的那些项目做一次集中梳理,看看大家都在折腾什么方向、哪些技术栈正…

📰

Java集合框架深度解析:从ArrayList到ConcurrentHashMap的选型与性能陷阱

1. 从一道面试题说起:JCF为什么值得你认真对待但凡写过Java的人,几乎每天都和java.util包打交道。但说句实在话,大部分人对Java集合框架(Java Collections Framework,JCF)的认知停留在“会用ArrayList存数据…

📰

Windows Server 2008 R2 SQL Server 2008 R2 生产数据库快照复用指南

简介:本资源是Oracle 10g Release 2(10.2.0.4)在Windows Vista与Windows Server 2008 x64平台下的生产级数据库部署包,面向DBA、企业级数据库运维人员及Oracle高可用环境搭建学习者,解决64位Windows系统下Oracle生产库…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬