web-dev-qa-db-ja.com

コンピューターのCA証明書が偽装されていないことをどのようにして知ることができますか?

私の知る限り、ブラウザにはいくつかのCAの証明書が含まれています。 http://gmail.com にアクセスすると、サイトはGmailだと言って、自分のコンピューターにあるCAの1つによって署名された証明書を公開します。 CAがこの主張を支持して以来のふりをしています。

しかし、オフィスのコンピュータで、雇用主がマシンに独自のCA証明書を設定し、中間者攻撃を行った場合はどうなりますか?

  1. 私の雇用主はすべてのマシンに偽のCA証明書をGooglee Corp.として保存しています(タイプミスに注意)
  2. アクセス http://gmail.com
  3. プロキシは要求をキャッチし、応答をプロキシします。
  4. プロキシは、Googlee Corpによって署名されたカスタム証明書を返します。
  5. 私のコンピューターにインストールされているCA証明書が要求を裏付けているため、私のコンピューターは証明書が有効であると想定しています。
  6. ブラウザは、Gmailへの安全な接続を使用していることを示しています。

ありがとう。

6
vtortola

むかしむかし、ルート証明書を紙の本と照合することができます: http://www.cl.cam.ac.uk/research/security/Trust-Register/

最近では、できるだけ多くの独立したソースを確認してみてください。たとえば、仮想マシンの異なるオペレーティングシステムに異なるブラウザーをインストールし、それらが互いに一致するかどうかを確認します。

雇用主について特に心配している場合は、職場のルートCAのリストを印刷して持ち帰り、自宅のマシンと比較してください。 (またはその逆の場合は、自宅から印刷物を持ち込みます。)許可されていない場所で作業している場合、新しい証明書を受け入れるように指示されていないだけでなく、とにかく監視されることに驚いています。

NSAがあなたの仕事と家の両方を危険にさらしていると思います、そしてあなたがクリーンインストールのためにあなたにCD-ROMを焼くように頼んだ誰もがNSA =植物、あなたはより大きな問題を抱えています(そして、あなたがそれを考えるのが正しいなら、それよりもさらに大きな問題です。)

編集:忘れたもの- 証明書のピン留め(ドラフト標準) 。これにより、証明書が使用されている場合に警告が表示されます。 http://gmail.com 予期しない方法で変更されるため、MITM攻撃について警告する場合があります。 Googleでどのように機能するかの説明: https://www.imperialviolet.org/2011/05/04/pinning.html

そして [〜#〜] dane [〜#〜] 。それは実際にあなたができることではありませんが、それが採用された場合、そのような攻撃を警告するかもしれません。参照 https://www.imperialviolet.org/2011/06/16/dnssecchrome.html

8
armb

誰か(誰でも)があなたのマシンへのroot/adminアクセス権を持っている場合、それはもはやあなたのマシンではありません。技術的には、ルート証明書の一部(またはすべて)を、公開鍵が異なる正確なコピーに自由に置き換えることができます。

偽造を検出する唯一の方法は、各ルート証明書のフィンガープリントを既知の適切なバージョン(おそらく別の信頼できるコンピューターから取得したもの)と照合して検証することです。

また、Webサイトに接続するたびに信頼チェーン全体を手動で検証しない限り、信頼されたルートストア内のすべての証明書を検証する必要があります。それ以外の場合は、単一のルートを使用して、CA名とは関係のない中間証明書とリーフ証明書に署名できます(たとえば、「MicrosoftルートCA」というラベルの付いたルートを使用して、Thawteからのものであると主張する中間CA証明書に署名できますそして、その中間証明書を使用して、www.gmail.comのWebサーバー証明書を検証します。

6
Stephane

言及すべきことの1つは、Google Chromeは、Googleが所有するすべてのサイト(GMail、YouTube、Google +、およびすべての検索サイト)が非常に特定の証明書を提示することを期待しています。信頼できるものだけでなく、 Google自体がこれらのサイトを提供していることを認識しているものです。MITMされている場合、証明書は一致せず、Chromeが警告します。この方法は「証明書のピン留め」と呼ばれます。珍しいことではありません(もちろん、さまざまなソフトウェアがさまざまな証明書をピン留めします)。証明書ストアに移動し、GMailからの証明書をインストールして、リストされている他の証明書を受け入れないように指定することによって、自分で行うこともできます。あなたが別のことを言うまでドメイン。

この場合、コンピューターはbelongsを雇用主に提供するため、雇用主がそれを回避するのは比較的簡単です。 IEのみのオフィスを強制するための手順を実行するだけです。また、グループポリシーにより、Windowsドメインコントローラーは任意の証明書をプッシュ(および他の証明書を取り消しまたは取り消し)できます。要するに、それが雇用主のネットワークであり、雇用主のコンピュータである場合、職場でのプライバシーへの期待に関して、雇用主がそれを行うことを許可されていないことはほとんどありません。

4
KeithS

信頼はどこかから始めなければなりません。システム上のルートCA証明書は、その信頼の始まりです。それらを検証する方法はありません。それらを複数の場所から入手して、彼らが主張する会社からのものであることを確認することを試みることができますが、最終的にそれらをインストールすることは、あなたが信頼すべきだと言う人を信頼するという宣言であり、それは信仰の飛躍です。

2
AJ Henderson

コンピューターが信頼するCAを悪意のあるユーザーが制御している場合(たとえば、コンピューターにルートCAとしてインストールされていたため)、その攻撃者は、表記が似ている名前ほど粗雑なものに依存する必要はありません。彼は詳細がすべて "gmail.com"である偽の証明書を作成し、VeriSign、Food&Drug Administration、および教皇によって認定されていると主張することができます。ルート証明書は、本当に信頼のルートであるため、「ルート」と呼ばれます。

あなたが外部検証を取得しようとしました。たとえば、Googleの本社に電話をかけ、システム管理者に話すように依頼して、証明書の「拇印」を電話で伝えることができるかどうかを確認できます。次に、それを自分の側にあるものと比較できます。これは反則を検出します。ただし、これは、電話が「本質的に安全」(最良の場合はかなり疑わしいアサーション)であり、実際にそのような要求に応答するのに十分な空き時間とユーモアを備えたGoogleのシステム管理者であると想定しています。

より根本的な問題は、一部の攻撃者がコンピュータに不正なCAを植え付けた場合、彼がそこで停止したと信じる理由はほとんどないということです。トラストストアを操作するには、管理者権限が必要です。同じ攻撃者がキーロガーや他の種類のマルウェアをインストールする可能性があります。通常のソフトウェア更新が署名されているため、後でそれを実行することもできます。不正なCAを使用すると、攻撃者は厄介なコードでいっぱいの偽の更新に偽署名する可能性があります。

したがって、通常の知識では、ルートCAが操作された疑いがある場合、オペレーティングシステムの完全なフォーマットと再インストールを除いて、実際にマシンをサルベージすることはできません。ウイルスは、BIOSや一部の周辺機器のファームウェアなどのフラッシュ可能な部分にインストールされています。

2
Tom Leek

パーティーの後半...この指紋ツールを使用できます:

https://www.grc.com/fingerprints.htm

そこに行き、興味のある任意のWebサイト(URL)を入力し、表示された指紋をブラウザーに表示されたものと比較します。

フィンガープリントが一致しない場合、雇用主のプロキシが接続を傍受します。

プロキシを実行している組織自体が信頼できる認証局であるか、マシンのルート証明書が操作されている場合、これはおそらく機能します。証明書はWebサイトの一致する名前で発行されますが、同じフィンガープリントを持たないためです。

これを回避するには、雇用者はブラウザーを操作して、実際に使用している証明書とは異なるフィンガープリントを表示する必要があります。この場合でも、雇用者のネットワークに「クリーン」/ライブOSを搭載したマシンでテストし、表示された証明書を比較できます。

0
Marcel