【问题标题】:Test for SSL attacks - possible to extract certificate of server after SSLException?测试 SSL 攻击 - 可以在 SSLException 之后提取服务器证书吗?
【发布时间】:2023-04-05 05:35:02
【问题描述】:

对于一个项目,我想测试是否有人在篡改 SSL 连接。 HttpsUrlConnection 使用带有固定证书的SSLContext

我的问题是:如果我收到 SSLException,例如有人试图伪造一个错误的证书,有什么方法可以获取有关该证书的详细信息?

在计算机上,使用浏览器(取决于浏览器和版本)我会收到一个证书警告,并且可以选择查看有关证书的详细信息。

我想知道,是否有任何方法可以使用HttpsUrlConnection 获得这个,或者还有其他可能性吗? getServerCertificates()此时将不起作用,因为连接尚未建立,我看不到其他选项..

【问题讨论】:

    标签: android ssl ssl-certificate httpsurlconnection sslexception


    【解决方案1】:

    事实证明,从 Android SDK 22 开始,抛出的异常已经包含有关证书的详细信息。

    我可以看到运行 Android 21 的设备会抛出一个 IOException(主机名未验证),而 Android 22 会抛出一个 SSLPeerUnverifiedException,还提供有关证书的详细信息。

    【讨论】:

      猜你喜欢
      • 2020-02-20
      • 2021-03-01
      • 2019-05-10
      • 2014-01-08
      • 1970-01-01
      • 2019-03-16
      • 2013-09-16
      • 1970-01-01
      • 2020-01-24
      相关资源
      最近更新 更多