目的は、特定のプロファイルについて、ハードディスクに保存されている特定の証明書のみを信頼することです。したがって、認証局は必要ありません。
成功せずに試しました:
cert9.db
プロファイル内cert9.db
を0バイトにし、Firefoxが変更しないようにすべての許可フラグを削除します3つの測定値すべてがCAの再表示につながりました(ただし、必ずしもcert9.db
、少なくともそのファイルへの書き込み権限を削除した場合。ただし、Firefoxの証明書マネージャーにはまだあります)。
CAはどこから来たのだろうか。 Firefoxは、それらを見逃した場合、インターネットからそれらを読み取りますか?私はそれらが再び現れるとは全く思っていませんでした。
どうすればその動作を防ぐことができますか?
Firefoxは、TLSなどのセキュリティ関連機能にMozillaの [〜#〜] nss [〜#〜] ライブラリを使用します。 NSSには独自のCAストアが組み込まれており、FirefoxがデフォルトのCA証明書を取得するために使用します。
から MozillaのFAQ :
プリロードされたCA証明書は、次のファイルに含まれています。
- Windows:libnssckbi.dll
- Unix、Linux、およびその他の* nixバリアント:libnssckbi.so
- Mac OS X:Contents/MacOS/libnssckbi.dynlib
したがって、Firefox自体の一部であるため、すべてのCA証明書を削除することはできません。
から MozillaのFAQ :
ルート証明書がMozilla製品にデフォルトで含まれている特定のCAを信頼しない場合、証明書を無効にする方法は2つあります。
- そのルート証明書の信頼ビットをオフにします。
- ルート証明書を削除します。
- デフォルトのルートストアにあるルート証明書を削除することは、そのルートのすべての信頼ビットをオフにすることと同じです。したがって、ルート証明書が証明書マネージャーに再表示されても、そのルート証明書の信頼ビットを変更してすべてオフにしたかのように扱われます。
重要:この変更は永続的な影響を及ぼし、ルート証明書の信頼ビットはユーザーだけが再度変更できるようになります。この変更は、Mozillaソフトウェアの新しいバージョンにアップグレードしても影響を受けません。変更がブラウジングエクスペリエンスに悪影響を与える場合に信頼ビットをオンに戻すことができるように、変更するルート証明書をメモしておくことを強くお勧めします。
したがって、すべてのCA証明書を信用しないには:
about:preferences#privacy
View Certificates...
をクリックしますAuthorities
Delete or Distrust...
をクリックしますOK
をクリックして確認しますFirefoxを再起動すると、すべてのデフォルトの証明書が再表示されます。
デフォルトの証明書は削除できないため、Firefoxはそれらを信用しないだけであり、他の証明書の検証に使用できないという影響があります。 CA証明書を選択し、Edit Trust...
をクリックすると、信頼できない場合は何もチェックされないことを確認できます。
不信感は、証明書が引き続き証明書マネージャーに表示されることを除いて、証明書自体を削除するのと同じ効果があります。
詳細情報: 信頼設定の変更
FirefoxにはいくつかのCAがコードに組み込まれているようです。
から CA/FAQ :
これらのプリロードされたルートCA証明書は、Mozillaおよび関連ソフトウェアとともに、残りのソフトウェア実行可能コードとともにユーザーのシステムにインストールされた共有ライブラリの形式で配布されます。したがって、ソフトウェアの新しいバージョンがリリースされたときに更新できます。
プリロードされたCA証明書は、次のファイルに含まれています。
- Windows:libnssckbi.dll
- Unix、Linux、およびその他の* nixバリアント:libnssckbi.so
- Mac OS X:Contents/MacOS/libnssckbi.dynlib
これらが削除しようとしている証明書である場合、それらはコードに組み込まれており、(そもそも)どの.db
ファイルにも保存されていないため、答えは否定的です。これらのファイルをハッキングしようとするかもしれませんが、成功したとしても、Firefoxの新しいリリースごとにハッキングを繰り返す必要があります。
おそらくWindowsにのみ実装されていますが、オペレーティングシステムからの証明書がストアに入力される原因となる可能性のある別の設定を見つけました:security.enterprise_roots.enabled
。
このabout:config
設定が現在どのように実装されているかについての情報はありませんが、記事からはまだ進化していることが明らかです。あなたのケースに設定されているかどうかをテストすることをお勧めします。
Mozillaの記事から CA:AddRootToFirefox :
バージョン49以降、Firefoxは、ユーザーまたは管理者によってWindows証明書ストアに追加されたCAを自動的に検索してインポートするように実験的に構成できます。これを行うには、設定 "security.enterprise_roots.enabled"をtrue。このモードでは、FirefoxはTLSWebサーバー認証用の証明書を発行することが信頼されているCAの
HKLM\SOFTWARE\Microsoft\SystemCertificates
レジストリの場所(APIフラグCERT_SYSTEM_STORE_LOCAL_MACHINE
に対応)を検査します。このようなCAはすべて、Firefoxによってインポートおよび信頼されますが、Firefoxの証明書マネージャーに表示されない場合があることに注意してください。これらのCAの管理(信頼構成など)は、組み込みのWindowsツールまたはその他のサードパーティユーティリティを介して行われると予想されます。このような変更をFirefoxで有効にするには、設定をオフにしてから再度オンにするか、Firefoxを再起動する必要があることにも注意してください。この機能が進化するにつれて、これは使いやすさのために自動的に処理される可能性があります。