v2.2.1 — 域名年龄评分 · PSL 提取 · Emoji 检测 · 可信平台白名单 (2026-06-16)
v2.2.1
概述
从 v1.3.0 到 v2.2.1,评分体系从 5 规则扩展为 8 项检测,新增 Whois API 域名年龄评分系统、PSL 注册域提取、Emoji 密度检测、可信平台白名单四大模块,并完成弹窗 UI 全面重构。
🚀 重大更新
Whois API 域名年龄评分系统
接入 WhoisCX 免费 API,引入三项新检测:
- 域名年龄评分(最高 +60) — 通过 S 型衰减函数对新注册域名进行可疑加分:域名越新分数越高,随注册天数增加逐步衰减至 0。结果缓存 24 小时。
- 域名年龄减分(最高 -20) — 注册 ≥ 180 天的域名可获得分数抵消,注册 ≥ 730 天获最大减分。仅当当前总分 ≥ 20 时生效。
- 下载链接跨域检测(最高 +20) — 检测下载文件域名是否与当前页面跨域,跨域 +10,跨域且下载域名为新注册(< 90 天)再 +10。
PSL 域名提取重构
域名注册域提取不再使用"取最后两段"的简化逻辑,改为通过 DNS-over-HTTPS 查询 publicsuffix.zone 获取公共后缀后逆推,支持 co.uk、hl.cn 等多级公共后缀。DNS 不可用时回退到内置 66 个 TLD 集。
同时移除了已被 PSL 覆盖的「可疑嵌套 TLD」独立检测。
规则五重构:代码工程化 + Emoji 密度双通道
规则五拆分为两个独立子规则并行运行,总分上限从 30 提升至 60:
- 子规则 A:三信号组合判定 — DOM 节点数、框架痕迹、外部资源三信号组合计分(3/3 +30,2/3 +20)。
- 子规则 B:Emoji 密度检测(新增 | 最高 +30) — 先通过 49 个中英文推广关键词预筛选确认页面性质,再计算 Emoji 密度(个/千字符),分段线性映射加分。用于识别钓鱼推广页面中大量 Emoji 吸引眼球的模式。
🆕 新功能
可信平台白名单
新增内置白名单避免将 UGC 平台子页面误判为仿冒官网。对任意访问 URL 提取注册域(eTLD+1)后与白名单比对,命中则跳过规则一。例如 minecraft.fandom.com → fandom.com → 不再判定为 Minecraft 仿冒。
覆盖 44 个平台,分为 Wiki 农场、代码托管 Pages、PaaS/静态托管、博客平台、文档/知识库、建站/个人页六大类。基于 Set 实现 O(1) 查找,新增/移除平台只需修改数组。
竞态条件防护
Content Script 数据回传时校验当前标签页域名是否与采集时一致,快速切换页面后旧数据不再污染新页面。
🎨 UI 重构
弹窗样式全面升级:评分展示从垂直堆叠改为水平布局,新增可视化分数刻度条,深色主题 CSS 变量规范化,新增白名单状态独立面板与 SVG 三态图标系统(安全/危险/白名单)。
🐛 修复
- 早期退出判定从字符串匹配(
detailCN.startsWith('✓'))改为结构化字段(status === 'pass'),消除标记变更导致的失效风险 - 缓存中瞬时事件数据(下载链接 Whois 结果、具体文件名)新增清洗逻辑,防止跨页面污染
- 若干弹窗渲染与状态同步显示 bug
⚡ 优化
- 评分流程从单次汇总改为"初步总分 → 减分 → 最终总分"两阶段
- Whois API 错误通过结构化
{phase, message}传播到前端 - API 请求间隔 ≥ 2s,结果缓存 24 小时,避免重复请求
📋 改动文件
| 文件 | 改动 |
|---|---|
manifest.json |
1.3.0 → 2.2.1 |
background/whois-client.js |
新增 — Whois API 客户端 |
utils/trusted-platforms.js |
新增 — 可信平台白名单(44 平台) |
background/scoring-engine.js |
新增域名年龄/减分/跨域下载/Emoji/可信平台五大模块 |
background/service-worker.js |
缓存清洗 + 下载跨域 + 竞态防护 + 早期退出重构 |
utils/url-utils.js |
PSL DoH 查询 + 注册域提取重构,移除嵌套 TLD 检测 |
utils/constants.js |
域名年龄/Emoji/跨域下载常量体系 |
popup/ (css/html/js) |
深色主题 + 水平布局 + 刻度栏 + 白名单面板 |
README.md |
8 规则完整文档 + 可信平台章节 |
| 其余 6 个文件 | @version 注释同步 |
18 个文件变更,+2086 / -335 行
🔄 兼容性
向后兼容。现有用户白名单、缓存、标签页状态正常延续,无破坏性变更。