## Discord 链接预览漏洞:绕过隐私保护
Discord 故意避免读取回执以保护用户隐私,通过其服务器代理链接预览图片来实现这一点——防止发送者直接追踪接收者何时查看内容。然而,最近发现的一个漏洞绕过了这一保护。
该漏洞利用了 Discord 的链接预览系统。当分享链接时,Discord 会获取并验证页面 OpenGraph 标签中声明的图片。研究人员发现他们可以返回一个有效的图片用于验证,然后持续使来自 Discord 代理服务器的后续请求失败。Discord 客户端随后会重复尝试加载图片(最多重试六次,且延迟逐渐增加)。
这些重试会击中研究人员的服务器,从而产生可预测的时间信号,揭示了*何时*查看了消息,*有多少*人查看了它,以及他们保持打开状态的*时长*。研究人员构建了一个概念验证工具,利用不可见链接和会话分组来可靠地追踪查看活动。
Discord 确认了该漏洞,并奖励了赏金并解决了该问题。研究人员于 2025 年 2 月公开披露了这些发现。
## 重振ME2掌机:一个保存的故事
2024年,一段视频展示了ME2,一款小众的2008年掌机玩具,它可以通过USB与在线游戏同步——而该游戏的软件和资源一度被认为已经丢失。受到启发,作者(Miuchiz Reborn保存项目的负责人,该项目专注于类似的手持设备/在线游戏)开始调查。尽管之前已知ME2的存在,但重新燃起的关注促使作者深入研究其功能。
最初的目标是重建游戏服务器,但很快扩展到理解与掌机的USB通信——ME2体验的核心。由于缺乏原始软件,作者购买了ME2设备进行逆向工程。这导致了拆焊和转储闪存芯片固件的过程,这个过程因“芯片贴片”微控制器缺少识别标记而变得复杂。
经过艰苦的工作,包括对微控制器进行解封,并利用数字显微镜和在线资源,处理器最终被识别出来。这使得固件可以被反汇编,揭示了USB协议并能够与设备通信。甚至发现了一个漏洞,允许进行任意内存读取,从而绕过了直接访问微控制器的ROM的需要。
结果是一个命令行工具,可以读取/写入闪存,操作游戏数据,甚至监视按钮输入——所有这些都不需要原始软件。这个项目展示了硬件逆向工程的力量,即使在原始软件丢失的情况下也能保存功能,并为复兴其他被遗忘的技术提供了一个蓝图。代码和研究是公开可用的,展示了一项成功地为游戏历史注入新生命的努力。
## 配对顺序:一种衡量无序的基本方法
这篇博文探讨了一种名为“Amp”的新定义度量,用于量化序列中的无序性,并以此为基础构建于“配对顺序”的概念之上。配对顺序是通过比较序列中的相邻元素来确定的——如果第一个小于第二个,则赋值为1;如果大于,则赋值为-1;如果相等,则赋值为0。这可以看作是离散导数或元素之间差值的符号。
关键见解是,许多现有的无序度量,如Runs(计算下降步数)和Mono(计算单调片段),都可以仅使用配对顺序来*重新定义*。这简化了分析,将重点从原始序列的变化转移到代表配对比较的-1、0和1值的序列的变化。
至关重要的是,这种方法优雅地处理具有相等元素的序列。通过仅考虑唯一元素(通过一个名为Unique的函数),度量变得与重复值无关,有效地忽略了配对顺序中的“0”值。
作者得出结论,配对顺序是一种令人惊讶的强大工具,它提供了一个更小的范围来分析无序性,并可能在未来的工作中解锁对不同无序度量之间关系的更深入理解,例如Mono和Amp。