web-dev-qa-db-ja.com

2015年にWindows 98 / IE5がHTTPSサイトに接続できないのはなぜですか?

最近、Windows 98 Second Editionの古いインストールCDを見つけて、少し懐かしさを探して、VirtualBoxにインストールしました。 Win98SEにはIE 5.0が同梱されており、そのブラウザでWebをブラウジングすることは、想像していたよりも途方もない体験でした。

何を試しても、IEに接続できず、-any HTTPSサイトに接続できませんでした。なぜそうなのか不思議に思いました。出荷されたすべての信頼できるCA証明書は期限切れですか?デフォルトのTLS/SSLアルゴリズムはすべて過去16年間で段階的に廃止されましたか?IE高度暗号化パックが必要でした(すごい、それ以来ずっと私はそれについて考えました)。

これがその時代の他のオペレーティングシステム(Mandrake 6!)に影響を与えるのか、またはコアの問題が何らかの形でWindows固有であるのか、私は興味があります。

34
smitelli

主な問題は、おそらくIEがSSL 2.0をサポートしたいと考えているため、最初のメッセージ(ClientHello)をSSL 2.0形式で送信することです。後のプロトコルバージョン(SSL 3.0およびすべてのTLSバージョン)のClientHelloとの共通点はほとんどありません。これにより、ブラウザはSSL 2.0を認識しているサーバーに接続できましたが、ClientHelloそれでもクライアントはより近代的なものを使用する準備ができていることを文書化します。

ただし、最新のサーバーはSSL-2.0 ClientHello形式をサポートしなくなりました。彼らがまだその形式を受け入れていた一時的な期間がありましたが(実際に接続でSSL 2.0を使用することを許可していなかったとしても)、今では完全にサポートを中止しました。特に、SSL-2.0 ClientHello形式には、SNIなどの拡張機能を追加する余地がありません。そのため、このようなサポートを中止したいという欲求が説明されています。

その他の問題は次のとおりです。

  • IE 6.0はTLS 1.0をサポートしていますが、デフォルトでは無効になっています。 IE 5がTLS 1.0をサポートしていたかどうかはわかりませんが、いずれにしてもデフォルトでは有効になっていませんでした。しかし、最新のサーバーの多くはSSL 3.0も拒否します(POODLE 、@ etherealfluxで示されているように)。

  • クライアントコードは、そのアルゴリズムの標準化以前から使用されているため、AESについては何も知りません。 RC2、3DES、場合によってはRC4に基づく暗号スイートを使用しようとします(RC4はIEの宿敵であるNetscapeのプロパティであるため、確認が必要になるため、IE 5は使用しません) 。これらのアルゴリズムは、今日のサーバー管理者の間ではあまり人気がありません...

  • 最近のサイトでは、かなり大きな暗号化キーを使用しています。通常、RSAは少なくとも2048ビットのキーを使用します。古いWindows + IEでは、処理できるRSAキーのサイズがさらに制限される場合があります。特に、2000年以前の 暗号化に関する米国の輸出規則 に準拠するWindows + IEは、RSA鍵の最大サイズ1024ビットに制限できました。同じ組み合わせでは、3DESまたは56ビットを超える対称鍵を持つものの使用も拒否されますが、2015年のまともなサーバーは128ビット未満のものは受け入れません。

Linuxベースのシステムの場合、中心的なSSL実装はありません(多くの場合、OpenSSLライブラリがありますが、MicrosoftのSChannelやCryptoAPIほど普及していません)。したがって、すべてのブラウザには独自のルールがあります。 2000年以前は、これはNestcape Navigator(UTF-8で何かを検出するとsegfaultを実行するもの)を意味していました。たぶん初期のKDEベースのブラウザがSSLを実行できたのでしょうか?その場合、おそらくOpenSSLを使用し、thatは正しい構成で一部のサーバーに接続できるはずです(特にSSL- ClientHelloの2.0形式)。

37
Thomas Pornin

他にも理由があるかもしれませんが、頭に浮かんだものをいくつか挙げます。

  1. SSL/TLS接続(ハンドシェイク)を確立すると、クライアントは暗号スイートのリストをサーバーに送信します。サーバーの責任は、使用されるものを選択することです。適切な暗号がない場合、接続は終了します。
  2. SNI-サーバー名表示拡張。 AFAIKこれは、XPのIE6以前ではサポートされていません。

正直なところ、IE5がTLSをサポートしているかどうかもわかりません。

6
bayo

あなたはおそらく正しいです。ほとんどのWebサイトは現在、古いSSLプロトコルの使用を禁止しています。SSLv3.0は [〜#〜] poodle [〜#〜] 攻撃の一部であったことを思い出してください。ブラウザーが無効になっているプロトコルのみをサポートしている場合は、それほど遠くないでしょう。

ウィキペディアのページには SSL/TLS に関する優れたチャートがあり、さまざまなバージョンのブラウザーでデフォルトでサポートされているプロトコルを示しています。最も重要なのは、Internet Exploder 6はTLS 1.0までしかサポートせず、デフォルトで無効になっていることです。これは、ブラウザがSSL v3.0を使用しようとしていることを意味します。

信頼できる証明書のステータスを確認できるはずです。非常に長い年月が経過したので、私は有効期限が切れたことを期待しています。ただし、OSが古すぎるため、Google検索はその方法についてあまりアドバイスをしません。

2
etherealflux

考えられる原因は、IE5が使用できる暗号条件をサポートするサーバーが多くないことです。 IEのリリース時には、SSLのみがサポートされ、TLSはサポートされていませんでした。

SSL 1.0が公開されることはありませんでした。 SSL 2.0および3.0は廃止されました。世の中に出回っているサーバーがそれらをサポートすることができたとしても、それらはほとんどの人気のあるウェブサイトのためのサーバー上で見つけられないでしょう。

TLS 1.0標準は1999年まで定義されていませんでした。また、Microsoftは標準にタイムリーに対応しないことで長い間悪名高くなっています。おそらくIE 5.0または5.01(バグ修正版)がパッケージ化されており、暗号化が不足しています。暗号化されたバージョンは5.5でした。OSのバージョンにはパッケージ化されていませんが、互換性があります。しかし、あなたはまだ自由で平文ではありません。128ビットTLS 1.0のみをサポートしますIEはデフォルトで無効になっています。

さらに、EV証明書、SHA-2証明書、ECDSA証明書もサポートされていません。 TLS 1.0とIE5時代の暗号化スーツを備えた128ビットの証明書を持つサーバーを実際に見つけることは非常にまれです。

2
Bacon Brad

インストールOpera Windows 98と互換性があり、10.10を使用しています。

メニューバーにアクセスします。

ツール->干渉=>詳細タブ

[セキュリティ]、[セキュリティプロトコル...]ボタンの順に選択します。

ポップアップウィンドウには、SSL 3を有効にするためのチェックボックスがあります。

成功! HTTPSを使用するGoogleのサイトが再び機能します。

2
Leslie