主要观点:James Fuller 在 curl 项目的 pull-request 中建议清理脚本,却在其中一个 URL 中用 Unicode 字母替换了 ASCII 字母,此情况未被团队评审或 CI 作业发现,引发对代码审查的思考。GitHub 上该替换符号视觉上难以察觉,diff viewer 虽知有差异但难以确定,不同代码托管服务对此有不同处理,如 Gitea 会警告使用“模糊 Unicode 字符”。为帮助发现此类问题,curl 项目添加了 CI 作业扫描 git 仓库中的 UTF-8 序列,还通过处理测试文件确保无 UTF-8 滥用,同时利用 Unicode 联盟的工具查找相似字符。这是对已展示问题的安全相关修复,虽努力 proactive 但仍面临未知攻击的挑战,且 GitHub 已将此作为内部安全问题处理并在工作于修复。
关键信息:James Fuller 的 pull-request 及 URL 替换行为,GitHub 和 Gitea 的不同处理,curl 的 CI 作业及相关处理,Unicode 工具的利用,GitHub 的处理
重要细节:curl 项目对大部分文件和内容限制使用 UTF-8,通过 CI 作业检测,通过工具查找相似字符,GitHub 内部处理安全问题等
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。