< 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 卖 "盗版"

相关推荐
Unity粉末状在校生1 天前
清除microsoft edge账户信息
前端·microsoft·edge
此刻觐神1 天前
IMX6ULL开发板学习-03(Linux文件相关命令)
前端·chrome
skywalk81631 天前
使用DuMate帮助创建 Python 3.9 环境并部署 Kotti CMS
前端·chrome
code小生1 天前
微软 Microsoft Edge 浏览器插件开发者注册指南
前端·microsoft·edge·edge浏览器·浏览器插件开发者
开开心心就好1 天前
操作简单的ISO文件编辑转换工具
java·前端·科技·edge·pdf·安全威胁分析·ddos
卷卷说风控1 天前
工作流的 Skill 怎么写?
java·javascript·人工智能·chrome·安全
李少兄1 天前
网页应用化部署指南:基于 Edge 浏览器创建桌面快捷方式
前端·edge
开开心心_Every2 天前
文字转语音无字数限,对接微软接口比付费爽
运维·服务器·人工智能·edge·pdf·paddle·segmentfault
qq_334466862 天前
Edge 浏览器不要提示还原页面
前端·edge
John_ToDebug2 天前
惰性绑定 vs 立即注入:Chromium 扩展 API 初始化策略深度对比
c++·chrome·v8