< Chrome Extension: Video DownloadHelper > 获得 Premium 权限 Ver10.0.271.2

介绍:

这是一款在浏览器上非常流行的视频/音频下载插件。激活是<涉嫌广告删除>

图上传不了???

激发看代码的冲动

License 激活机制:

核心:

    1. JWT (JSON Web Token) - 基于 token 的授权系统
    1. ECDSA P-256 - 椭圆曲线加密签名,确保 token 无法伪造
    1. 公钥验证 - 扩展内置公钥,只能验证不能签发

激活流程

用户访问激活页面并输入激活码

网页触发 "activate" 自定义事件

injected/activate.js 监听事件并提取激活码

通过 chrome.runtime.sendMessage 发送到 Service Worker

Service Worker 请求 https://v10.downloadhelper.net:443/v2/entitlements/activate

服务器验证激活码并返回签名的 JWT token

扩展使用内置公钥验证 JWT 签名

验证成功后存储到 chrome.storage.local

解锁 Premium 功能

安全机制

  1. 非对称加密 - 只有服务器私钥能签发有效 token
  2. 扩展 ID 哈希白名单 - 防止克隆版本
  3. HTTPS - 所有通信加密
  4. 代码混淆 - 防止逆向工程
  5. 服务器端验证 - 关键逻辑不在客户端

120分钟限制

对免费用户 2小时(120分钟)冷却时间,限制 HLS/MPD 和 YouTube 下载频率。

实现位置

文件: service/main.js

函数: async function Ng(e,t,n)

时间常量: let a = 7200 * 1e3 = 7,200,000 毫秒 (2小时)

每次成功下载后,用文件(持久)存储计时,位置:C:\Users\<用户名>\AppData\Local\Google\Chrome\User Data\Default\Local Extension Settings\lmjnegcaeklhafolokijcfjliaokphfk\000003.log <- 是一个 LevelDB 数据库

检查逻辑:

是否为 Premium,是否过了2小时

意外发现:

在检查逻辑时在 async function Yh() 调用 getPlatformInfo() 来获得OS信息, Linux 和 OpenBSD 用户自动有 Premium 权限。

两条路

1) 绕过 7200 秒限制

找到 7200 , let a = 0,

2)添加 Premium 待遇,所有浏览器生效

找到第二个 async function Yh() , 添加 OS 进来,比如:win, mac

总结:

感谢软件作者,给开源系统免费使用这个插件。在商业 OS 中,可以使用 Linux 虚拟机,完全合法,不违反任何条款,自动获得 Premium 待遇。

<涉嫌广告删除>

写这篇文章针对 goofish 卖 "盗版"

相关推荐
简离1 天前
前端调试实战:基于 chrome://webrtc-internals/ 高效排查WebRTC问题
前端·chrome·webrtc
Ai老司机2 天前
Chrome浏览器驱动(ChromeDriver)官方下载 - 全平台高速镜像站 | chromedrive.cn
前端·chrome
电商API_180079052472 天前
如何将小红书评论数据封装到API实现自动化分析?测试API实战指南
运维·chrome·自动化
~远在太平洋~2 天前
debian系统已安装python3.12却无法执行python命令
chrome·python·debian
阿珊和她的猫2 天前
浏览器跨页签数据共享方案
前端·javascript·vue.js·chrome
科技块儿2 天前
开发者需要为网站或应用集成IP归属地显示功能,如何选择可靠的数据源?
服务器·网络·数据库·tcp/ip·edge·ip
阿珊和她的猫3 天前
Chrome性能测试关键参数解析
前端·vue.js·chrome
zhangfeng11333 天前
快速验证哪个文件坏了 模型文件损坏或不完整大语言模型开发 .llm
人工智能·chrome·语言模型
不光头强3 天前
Linux 系统中最常用的命令及具体使用方法
linux·运维·chrome
田里的水稻3 天前
OE_ubuntu24.04如何安装中文简体拼音输入法
运维·前端·chrome