文章摘要
文章讲述作者尝试安装所有Firefox扩展的有趣实验。通过调用Mozilla公开API,作者成功爬取了约8.4万个扩展(覆盖率99.94%),发现总容量可能不到50GB。文中分享了使用无认证、无限流的API端点批量获取扩展数据的技术细节。
文章总结
安装所有Firefox扩展的疯狂实验
数据收集过程
作者通过Firefox插件商店的公开API(无需认证且无速率限制)抓取了约84,243个扩展。初始尝试仅获取到3万个扩展,后通过调整排序参数(如created、rating、hotness等)和分页排除策略(exclude_addons),最终合并去重后得到84,235个扩展,总大小约49.3GB(平均每个585KB)。数据集已上传至Hugging Face。
扩展分析亮点
体积之最
- 最大扩展是国际象棋音效插件dmitlichess(196.3MB),包含2000多个音频文件。
- 第二名是嵌入Unity应用的ReactBot Web(184.9MB),第三名是含900张PNG的缩略图插件Eric’s Thumbnail Seasoning!(146.6MB)。
最差扩展
- 用户评分最低的是Tab Stack for Firefox(开发者名“lolicon”引发争议)。
- 主观最差评给了一个名为Cute doggy - Dog puppies的AI狗狗壁纸扩展。
权限滥用
- FalscheLaden以请求3,695项权限“夺冠”,而Google Dark Theme虽请求2,675项权限却有1,687名用户。
钓鱼攻击
发现多个仿冒加密钱包扩展(如使用西里尔字母伪装的“Іron Wаllеt”),部分通过NocoDB动态获取钓鱼链接。作者报告后,Mozilla迅速下架了这些扩展。SEO垃圾与PUA
- 大量2025年发布的AI生成扩展(如Typo Sniper)试图通过作者主页链接操纵搜索排名。
- Innover Group旗下20余个“Custom Web Search”扩展(总用户超70万)将默认搜索引擎替换为带推广代码的Yahoo,其官网甚至将公司名称写进图片以规避文本检测。
安装尝试
初期失败
- 首次在虚拟机中尝试安装65,335个扩展导致Firefox冻结,扩展配置文件膨胀至144MB(正常仅336KB)。
- 分批次测试发现:超过3,000个扩展后网页加载异常,6,000个时仅能打开
about:addons。
终极挑战
借助朋友的高性能设备(24GB内存)完成全部84,194个扩展安装:- 下载耗时1小时43分钟,其中HackTools扩展被Windows Defender标记为木马。
- 首次启动后
extensions.json增至189MB,浏览器卡顿39分钟。 - 最终界面被无数扩展图标淹没,但功能几近瘫痪:
about:addons加载耗时6小时,example.com24小时未加载,新标签页仅Firefox Home能打开。
结论与彩蛋
- 完全不可用:内存占用峰值达32GB,频繁崩溃,实际浏览功能失效。
- 冷知识:最古老扩展是2005年发布的Web Developer;最多截图的是RDS Bar(54张);最“高产”开发者Dr. B发布了84个无图标扩展。
- 未解之谜:为何
about:addons加载如此缓慢?作者尝试懒加载修复未果,推测可能是底层数据库设计缺陷。
(实验完整记录见原文,包含更多数据细节和崩溃视频)
评论总结
这篇评论主要围绕一个关于Firefox扩展的有趣实验展开,观点可分为三类:
- 对实验的幽默感和创意表示赞赏:
- "I'm laughing so hard...像老年人上网的样子"(评论1)
- "文章太疯狂了...发现性能bug值得跟进"(评论2)
- "写作太精彩了...把崩溃报告打开那段让我爆笑"(评论10)
- 技术细节讨论:
- 指出扩展数量统计不完整:"扩展不止8.4万,可以不通过官方渠道分发"(评论5)
- 吐槽数据库设计:"每20ms全量重写json文件...这正说明数据库有用"(评论6)
- 揭露恶意扩展行为:"'铁钱包'扩展会从电子表格获取钓鱼链接"(评论7)
- 怀旧联想:
- "让我想起在Win98上安装所有IE工具栏的年代"(评论9)
- "这么多图标谁能记得住"(评论8)
关键引用保留: - 幽默效果:"I'm laughing so hard...像老年人上网的样子"(评论1) - 技术细节:"每20ms全量重写json文件...这正说明数据库有用"(评论6) - 恶意行为:"'铁钱包'扩展会从电子表格获取钓鱼链接"(评论7)