情報に基づいて このページ 、Windowsは実際に、ユーザーがcertmgr.msc
を起動してTrusted Root Certification Authorities > Certificates
に移動したときに表示されるものよりもはるかに多くのルートCA証明書を信頼します。
記事によると、実際の信頼されたルートCA証明書は、certmgr.msc
でユーザーに表示されるものだけでなく、ローカルマシンのWindowsによって維持される証明書信頼リストにあるすべてのものです。
私のWindows 7マシンでは、「CTLInfo.exe」ツール(その記事の作成者が提供)が343のルートCA証明書の出力をリストしていました。これは間違いなく、現在自分のユーザーアカウントでTrusted Root Certification Authoritiesストアにある36をはるかに超えています。
これらのいくつかを以下に示します。
さらに詳しく調べてから、以下の手順(上記の記事のコメントから抜粋)に従って、Windows Updateサーバーから信頼されたルートCA証明書を含むSST(Microsoftシリアル化された証明書ストア)ファイルを生成しました。
certutil -generateSSTFromWU roots.sst
roots.sst
ファイルをダブルクリックすると、certmgr.msc
で開くはずです。または、.sst拡張子がマシン上の他のソフトウェアによって開かれるように構成されている場合は、同じコマンドプロンプトで次を実行できます:start Explorer.exe roots.sst
上記の手順で取得したSSTファイルには、343のルートCA証明書も含まれています。その一部を以下に示します。
作成者ツールを使用して証明書を確認するか、または2番目の方法を使用して別のリストに証明書を生成するかどうかは、おそらくそれほど重要ではありません(ただし、後者のオプションは、証明書を操作するための柔軟性を提供します)。
更新1:答えの1つは、ローカルマシンアカウントの下に、300か所欠けている大量の証明書が表示されるはずであると述べています。
そこで、次の手順を使用して、コンピューターのローカルコンピューターアカウントにある証明書の量を確認しました。
mmc
と入力します。これにより、空のMicrosoft Management Console
が表示されます。File
メニューからAdd/Remove Snap-In
を選択します。Available snap-ins
でCertificates
を選択し、Add
をクリックします。Computer Account
を選択します。Local Computer
を選択します。Finish
をクリックします。結果を見ると、ローカルコンピュータの下に表示される信頼されたルートCA証明書の数は37です。今日これはたまたま、ユーザーアカウントの下にリストされている量とまったく同じです。この質問を投稿しました。
実際、[ローカルコンピューター]に表示されている信頼されたルートCA証明書は、[ユーザーアカウント]に表示されているものと同じようです。しかし、そうでなかったとしても、これら2つのグループの合計は74にすぎません。 343証明書の大部分はまだ表示されていません。
結論としては、343の証明書の無駄な過半数は、この方法でも表示されないということです。
更新の終了1
とにかく、マイクロソフトが信頼する343のルートCA証明書を見ると、それらのほとんどは、ここ米国では私にも適用されないようです。
または、チュニジアや中国などのサーバーへの暗号化された接続が必要な場合は、それらが適用される可能性があります。一方、IEを使用してそのようなサーバーへの暗号化された接続を作成する場合、必要なルートCAが既に私のマシンのCTLにあるため、ブラウザーはおそらくそれほど文句を言わないでしょう。
更新2:SSTファイル内のすべての信頼できるCAを、ローカルコンピューターまたは現在のユーザーの下に表示される証明書とは別にすると、明示的に禁止するのが難しくなると思いましたそれらのいずれか。たとえば、Googleが受け入れを停止することを計画しているルートCA(言及 ここ )は、上記の手順で生成されたSSTでMicrosoftからまだ提供されているようです。
ただし、開いたSSTファイルでルートCA証明書を表示するだけで、certmgrに表示されるTrusted Root Certification Authorities
グループにすぐに追加されることに気付きました。したがって、certmgrを更新した後、新しいルートCAをUntrusted Certificates
グループにドラッグできます。
ただし、これは、表示される証明書ごとに個別に行う必要があります。
更新終了2
だから私がこれについて尋ねたかった質問は:
certmgr.msc
を介してすべての信頼されたルートCA証明書を表示しないという事実から、潜在的なセキュリティ問題はありますか?
- 将来的にそれらを使用する可能性がある場合(私のWebブラウジングのニーズに応じて)、Windowsはすべての343ルートCA証明書を表示しないのはなぜですか?
これは、Windowsが証明書をグループ化してcertmgrに表示するために使用する論理証明書ストアと物理証明書ストアの副作用である可能性があります。 certmgrのノードの1つを右クリックして[表示]> [オプション...]を選択すると、デフォルトの[論理証明書ストア]ではなく、[証明書の目的]でグループ化された証明書の表示に切り替えることができます。これにより、より多くの証明書が表示されますが、信頼されていない証明書を確認するのはより困難です。
- Windowsがcertmgr.exeを介してすべての信頼されたルートCA証明書を表示しないという事実から、潜在的なセキュリティ問題はありますか?
信頼できない証明書がUntrusted Certificates
にリストされていることを確認するためにより多くの努力を払わなければならないこと。たとえば e-Guven証明書に関するこのMozillaブログ を読んでいて、Windowsでuntrustedに設定されていることを確認したいとします。その場合は、最初にそれをcertmgr(またはローカルマシンの証明書)に表示してから、信頼できないグループに移動する必要があります。
この答えを出すとき、私はCERTLMと書いた[...]これが300の組み込みのルートが表示される場所です。
これは明らかに間違っていたことが判明しました。ごめんなさい。
私は、Windowsのルート証明書メカニズムの「オンラインにする」部分は、長い間、定期的な更新を行わなかった場合にのみ実際に機能するものだと想定していました。
うーん、ダメ。
それは私の完全にパッチされたWin10マシンでも同じです。ローカルでは82の証明書のみ。しかし、340何かがオンラインです。ええと。
古くて間違った元の投稿は以下に保存されています。
Windowsは、以下のルートの合計を使用します
更新1
- 将来的にそれらを使用する可能性がある場合(私のWebブラウジングのニーズに応じて)、Windowsはすべての343ルートCA証明書を表示しないのはなぜですか?
私はそれを推測することができるだけです。奇妙なデザインの決定だと思います。
- Windowsが
certmgr.exe
を介してすべての信頼されたルートCA証明書を表示しないという事実から、潜在的なセキュリティ問題はありますか?
はい。それは不必要に複雑であり、セキュリティにとって決して良いことではありません。