2

我从这个线程知道禁用 CURLOPT_SSL_VERIFYHOST 时可能会发生哪些攻击。我想知道禁用 VERIFYPEER 而不是 _VERIFYHOST 时可能会发生哪些攻击。使用信用卡付款是否是可接受的风险?

(我问的原因是因为我的代码只能在禁用 _VERIFYPEER 的情况下工作,尽管似乎没有人知道为什么)

4

1 回答 1

5

如果您禁用CURLOPT_SSL_VERIFYPEER,curl 将不会检查证书是否实际由受信任的机构签署。这是非常危险的!在 MITM 情况下,如果没有VERIFYPEER,攻击者可以简单地将他自己的“自签名”证书替换为真实证书,并且只要主机名匹配(他总是可以这样做,因为他正在制作证书),您的应用程序将接受。

您的代码可能会失败,因为您没有设置 CA 证书存储,并且您正在与之交谈的服务器由不在 curl 的默认存储库中的 CA 签名。考虑使用CURLOPT_CAINFOCURLOPT_CAPATH指定要验证的证书,并确保您用于验证的证书可访问并与目标服务器的证书匹配。

于 2013-02-16T19:45:15.537 回答