【问题标题】:Turn off SSL certificate verification in Ruby在 Ruby 中关闭 SSL 证书验证
【发布时间】:2009-06-11 16:59:39
【问题描述】:

使用“net/https”和 ssl 时,如何禁用对生成的 SSL 证书的验证?

【问题讨论】:

    标签: ruby ssl ssl-certificate


    【解决方案1】:

    以下代码将禁用证书验证。请注意,这必然意味着将接受无效证书。

    http.verify_mode = OpenSSL::SSL::VERIFY_NONE if http.use_ssl?
    

    【讨论】:

    • 这反过来意味着任何这样做的代码本质上都是一个安全漏洞。
    • 这肯定是真的。确实,安全漏洞与您一开始就没有使用 https 完全相同。
    • 正确上下文中的安全漏洞。否则,它会完成工作。
    • 我发现这在开发环境中使用if Rails.env.development? 很有用。我使用的是 Mac,即使我有最新的 ca-bundle.crt,有时我还是会收到“SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed”错误.这样,我的生产服务器就可以保持安全。
    • @ChrisInEdmonton 允许无效证书带来的安全漏洞与不使用 https 的漏洞有很大不同。虽然两者都不安全,但出于不同的原因,它们也不安全。如果没有 https,payload 无论如何都不会加密。使用无效证书,有效负载被加密,您无法保证证书提供者的真实性。两者都不好,但并不等同,并且具有非常不同的含义。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-18
    • 2019-09-05
    • 2020-05-20
    • 2023-03-17
    • 1970-01-01
    • 2017-06-13
    • 2019-03-29
    相关资源
    最近更新 更多