作者 Nicholas Carlini 分享了自己在不同领域发现和处理安全漏洞的经历及观点。
- 攻击类型频谱:安全漏洞可分为易修复和难修复两类。易修复漏洞如 Web 服务器的 SQL 注入或 XSS 漏洞,开发者可轻松推出修复措施;难修复漏洞如对基础加密原语的攻击,虽可“修复”但已造成大量数据被加密,应立即公开。识别漏洞所在频谱有助于确定披露方式。
处理攻击的方式:
- 早期攻击 Web 应用,发现漏洞后会向开发者报告,仅在开源软件且开发者要求创建 CVE 时才公开。
- 如 Berkeley 入学系统的漏洞,因系统老旧无人可修复,作者等待四年后才公开。
- 研究 Chrome 扩展漏洞时,先向开发者报告具体攻击,最终公开论文,因为发现的漏洞类不是单个补丁能解决的。
- 2018 年开始攻击机器学习模型,早期因该领域无披露政策而直接公开,如今发现攻击会更谨慎,如实用中毒攻击,先联系数据集所有者让其采取措施后再公开,而某些训练数据提取攻击则尽快公开。
- 对 Ben 观点的回应:Ben 认为作者不关心改善安全,但作者认为自己主要因喜欢解谜而攻击系统,且攻击能暴露问题让系统得以修复。Ben 组发表的一些防御措施存在根本缺陷,如 Glaze 防御,其对抗噪声导致图像无法更新,已发布图像的所有者无法控制,攻击简单且一旦发布攻击应尽早公开,以减少后续危害。作者认为找到感兴趣且重要的事情去做更有成效,鼓励他人尝试攻击以了解系统。
- 结论:不能因为某人攻击系统就认为其不关心工作影响,有时应尽快公开难以修复的漏洞以减少损害。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。