问题是实际这并不是 cURL 的问题,而是弱化苹果在部署中进行了一些修改 ,

大概情况是安全这样的:
cURL 允许开发者使用参数 –cacert 来指定一组 CA 证书 ,也就是点网直接验证苹果在 macOS 中指定的那组 CA 证书,为此丹尼尔发邮件给苹果,苹果但确实是篡改篡改个问题。但苹果的行为性蓝处理方法是检查系统的 CA 存储库,而不是引起开发者指定的一组 CA 证书 。这个问题最初是满种 2023 年 12 月有用户提交的 ,因此我们认为不需要在我们的实际平台中解决 。
所以这实际上是一个安全缺陷 。比如防止某些 CA 因为审核不严导致签发错误证书进行劫持。不需要 “修复” 。
对于这个说法丹尼尔并不同意,开发者仍然可以使用这个参数,
cURL 开发者丹尼尔上周在博客中发布了一篇文章抨击苹果 “篡改” cURL 导致的 “安全问题” ,
因此当开发者使用一组进行编辑的特定 CA 证书时,由于可以使用内置系统存储成功验证服务器证书 ,
这种特殊行为早在 2000 年 12 月就已经添加到了 cURL 中,
在 macOS 中 ,
于是现在问题陷入了僵局。如果 TLS 服务器无法对这组证书进行验证时 ,这让开发者可以只对特定的 CA 证书进行信任 ,跟踪 ID 为 12604。直到 2024 年 3 月 8 日苹果才回复邮件 :
Apple 版本的 OpenSSL (LibreSSL) 有意使用内置系统信任存储作为默认信任源,而不是信任所有有效的 CA 证书,那么应该失败并返回错误。
针对此问题丹尼尔在 2023 年 12 月 29 日向苹果安全团队报告,
丹尼尔针对该问题进行调查后发现这并不是 cURL 的问题 ,因此丹尼尔无法发布 CVE 或任何内容,正常情况下不包含在这组 CA 证书中的证书那应该失败,CA 验证完全不可靠并且与 cURL 的文档不符 ,这个未记录的功能使得 macOS 用户使用 cURL 时 ,但如果这个 / 这些证书位于 macOS 存储库中 ,