署名されていないSSL証明書は、SSL証明書なしよりも悪い扱いになるのはなぜですか?


19

署名されていないまたは自己署名されたSSL証明書があるサイトを表示すると、ブラウザから警告が表示されます。ただし、同じブラウザでも、セキュリティで保護されていないページ間で資格情報を送信できます。

自己署名証明書は、証明書がない場合よりも扱いが悪いのはなぜですか?

回答:


16

このシステムが壊れていると感じる人はたくさんいます。

SSL証明書が無効な場合にブラウザが警告を発する理由は次のとおりです。

SSLインフラストラクチャの当初の設計目的の1つは、Webサーバーの認証を提供することでした。基本的に、www.bank.comにアクセスすると、SSLにより、応答するWebサーバーが実際に銀行に属していることを証明することができます。これにより、詐欺師がDNSを操作したり、別の方法を使用して悪意のあるサーバーに応答させたりするのを防ぎます。

SSLの「信頼」は、信頼できるサードパーティ(VeriSignやThawte Consultingなどの企業)が証明書に署名することで提供されます。直接信頼を作成する個人または別の方法。ただし、実際にはそれがかなり緩いことを示す証拠があります-署名済みSSL証明書を取得するために必要なのは、多くの場合、800の数字と少しの演技スキルです)。

したがって、SSL証明書を提供するWebサーバーに接続しているが、信頼できる第三者によって署名されていない場合、理論上は、別の組織に属するサーバーのふりをしている詐欺師と通信している可能性があります。


実際には、自己署名証明書は一般に、サーバーを実行する組織が署名証明書の代金を払わないことを選択したことを意味します(必要な機能によっては非常に高価になる場合があります)、または構成するための技術的な専門知識がありません(一部の小規模ビジネスソリューションでは、自己署名証明書のワンクリックメカニズムを提供していますが、信頼できる証明書を取得するには、より技術的な手順が必要です。

個人的には、このシステムは壊れており、暗号化を提供しないサーバーと通信することは、自己署名証明書を使用してSSLを提供するサーバーと通信するよりもはるかに危険だと考えています。ブラウザがこのように動作しない理由は3つあります。

  1. 暗号化されていない通信はインターネットの標準であるため、ブラウザで警告をクリックして暗号化を提供していないWebサイトを表示すると、すぐにイライラして警告が無効になります。
  2. クライアントへの悲惨な警告のため、実稼働Webサイトで自己署名証明書を見るのは異常です。これにより、自己永続的なシステムが確立されます。自己署名証明書は、まれであるため疑わしい、疑わしいため、まれです。
  3. これは私の響き皮肉ですが、SSL証明書(署名のオフ多額の経費を作るために立つ企業があるベリサイン・咳が)、彼らは(IT用語の意味「長いと広告を退屈」)および他の出版物をホワイトペーパーを使用するので、署名されていない証明書は危険であるという考えを強化するため。

5
自己署名ではなく、CA署名付き証明書で得られる信頼チェーンがないと、接続しているサーバーが本物かどうかを確認する方法がありません。自己署名証明書は、ユーザーが送信しているデータが送信先に到達していることを確認する手段を提供しないという意味で危険です。セキュアなトランザクションを行う際に「https」を探すことを学ぶようになったため、SSLの主な利点の1つを失っているため、無効な証明書または自己署名証明書に関する大きな警告は100%保証されます。
MDMarra

「壊れた」とは言いません。Firefox Certificate Patrolアドオンは、デフォルトよりも証明書の適切な実装と信頼の管理にはるかに近いと思います。それでも、デフォルトは信頼ネットワークを完全に無視するよりも優れています。
-Slartibartfast

4
@MarkM-私の考えでは、認証はSSLの主な利点と見なされるべきではありません。バックアップするデータがありませんが、暗号化されていない接続を介して転送されたデータからはるかに多くのセキュリティインシデントが発生すると思います(例として、パスワードが盗まれたFacebookセキュリティエンジニア-彼らはwifiネットワークからパスワードを盗みました、Facebookのログインは暗号化されていないため)比較的複雑な実装であるMitMまたは偽装攻撃を使用します。SSLでの暗号化よりも認証に重点を置いているのは、先ほど述べたように、まさにこの状況を引き起こすものです。
jcrawfordor

1
@MarkM-正当な懸念事項であるオーバーヘッドは間違いなくありますが、特に自己署名証明書にはCAが使用されないため、無署名証明書の使用はCAに負担をかけません。また、十分なパワーを備えた組織にとっては、心配する必要はありません。Gmailやその他のサービスでは、Googleがデフォルトでhttpsになっていることを考慮してください。認証がなければ、SSLの有用性が低下するという点を理解しています。現在のモデルはうまく設計されていません。本当に必要なのは、標準の暗号化されたプロトコルと、より安全な使用のための認証されたプロトコルです。
ヒンクル

5
私のポイントの大きな意味、およびNRHinkleはこれを直接言ったが、暗号化と認証を別々の目標と考え始め、それらを別々に達成できるようにする必要があるということです。現在、SSLシステムの基本的な欠陥は次のとおりです。1)暗号化と認証は密接に結びついていると考えています。1つを達成するには、もう1つを達成する必要があります。1つだけを提供することは「疑わしい」です。2)認証は、限られた数の主に営利目的のCAから取得する必要があります。一般的に、CAは非常に高価(Verisignなど)または非常に怪しい(NameCheapなど)
jcrawfordor

6

ページからページへの資格情報の送信は、基本的にHTTP POSTを実行しています。安全性の低いページへの投稿が警告をトリガーする場合、ユーザーは無意味な警告によって攻撃されます。

セキュリティで保護されたチャネルを使用することは、転送を保護するプログラマーの意図を示します。この場合、自己署名証明書の警告を使用することは非常に正しいことです。


十分に公平です。
dag729

実際、Netscape Navigatorの少なくとも古いバージョンでは、暗号化されていないPOSTごとに警告ポップアップ表示されたことを思い出します。私は彼らがそれを取った理由だと思うので、もちろん、誰もが...、5分後にそれらを無効に
sleske

4

コメントできないので、user40350の正しい情報を補完するこの情報を投稿します。

ただし、同じブラウザでも、セキュリティで保護されていないページ間で資格情報を送信できます。

実際にはそうでもありません。ほとんどのブラウザは、最初に試してみると、セキュリティで保護されていない接続を介してデータを送信しようとしているような警告を表示しますが、それをオフにして再び表示されないようにすることができます。

ミロAの書き込み:

ページからページへの資格情報の送信は、基本的にHTTP POSTを実行しています。POSTを介した検索語などの送信と比較して、資格情報の送信に関して特別なことはありません

パスワードフィールドは、たとえば特別なhtmlタグであるため、これも間違っています。その上、「ユーザー名」や「パスワード」などのラベルも、彼らの機密性の多くを裏切っています。ブラウザがこの種の情報を考慮することは完全に実行可能です。


3

https://プロトコルによって保護されている接続は、ブラウザーによって「保護されている」ことが示されます。たとえば、小さな南京錠が表示されたり、URLの一部が緑色でマークされたりします。

したがって、ユーザーは、訪問しているページが実際に自分が入力したURLからのものであり、他人からのものではないことを信頼することになっています。

彼がhttps://を使用していない場合、ユーザーは入力されたデータが保護されておらず、ユーザーが閲覧しているサイトが偽装されている可能性があることを知っているはずです。

自己署名証明書は確認しません-繰り返しますが、閲覧されたページが偽装されていないことを期待しているため、追加のセキュリティは提供されません。


1

信頼できる(信頼する機関によって署名された)証明書と信頼できない証明書を区別する必要があります。そうしないと、相対的な免責を伴う自己署名証明書を使用して、誰かが(たとえば)銀行になりすます可能性があります。

潜在的なリスクが比較的高いため、この場合、微妙な警告よりも直接警告が望ましいです。人々はhttpsリンクをクリックしても、誰かが接続を監視している途中に座っているとは思わないかもしれません。証明書が信頼されていないという兆候が微妙な場合(緑のアイコンの代わりに赤など)、人々は簡単にだまされ、SSLの利点を失います。


ユーザーのコンピューターへのアクセス権があり、証明書を変更している場合、とにかく銀行になりすますことは簡単ではありませんか?ユーザーのコンピューターが変更されていない場合、WebブラウザーはWebページのURLを変更して自分が銀行であると主張することはできません。似たようなURLを取得しても、そのWebサイトの証明書を取得でき、ユーザーはWebページの署名者を気にせずに、httpsであることがわかり、URLが銀行のURL
ドミトリー

SSLの利点は、Webサイトが自分が誰であるかを信頼できないことです(サードパーティのアプリケーションが証明書を変更したり、銀行がハッキングされる可能性があるため、これは不可能です)。むしろ、あなたとサイトがそれを考えている人との間のコミュニケーションはあなたとあなたの間だけであり、他の誰もそのコミュニケーションを理解できないと信じてください。証明書を持たないことは、誰と話しているかは関係ないので、自己署名証明書を持っていることよりも悪いです。重要なことは、あなたが言っていることを他人が傍受できないことです。
ドミトリー

ユーザーとしてだけでなく、Verisignが誰であり、なぜ私はそれらを信頼する必要があるのか​​を本当に知っていますか?証明書の販売に対する彼らの関心は、あなたが彼らに送った情報の悪用について証明書所有者に責任を負わせることよりも高いのではないでしょうか?
ドミトリー

0

多くの正当な理由がリストされています。ここにもう1つあります。

ある安全なWebページが別のWebページから要素を埋め込む場合を考えてください。攻撃者は、外部Webページに対する要求(たとえば、タイミングを見ると、最初に来る必要がある)と内部要素に対する要求を検出できます。彼はMITMとして自分自身を内部要素に挿入し、自己署名証明書を使用し、ページの一部を制御できます。SSLを使用し、信頼できる証明書を使用しない内部要素に対して警告が表示されない限り、外部ページのセキュリティが侵害されます。

これが現実的な例です。私がベンダーであり、「PayPalで支払う」リンクがあるとします。あなたはそれをクリックし、私は知っています。PayPalにリダイレクトし、正当で安全なPayPalページを取得します。あなたのネットワークを監視している場合、PayPalからの最初のリクエストであることを知っており、その後すぐにパスワードを送信します。そのsubmitため、PayPalの代わりに自己署名証明書を使用して、メールアドレスとパスワードを含むMITM を作成します。

内側のページの証明書が自己署名されている場合、警告しないことで外側のページのセキュリティがどのように損なわれるかわかりますか?そのため、リンクからの自己署名証明書について警告する必要があります。

そしてもちろん、https手動で入力する場合は、警告する必要があります。あなたはそれが安全であると期待しているからです。


-1

中間者攻撃がhttps:// Webサイトで実行された場合、警告は平均的なユーザーにとって何か間違ったことを示しているだけです。したがって、HTTPSセキュリティの非常に重要な部分です。

良い質問は、なぜ部分的に安全でない暗号化がHTTPを介して可能な例ではないのかということです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.