このトピックでは、MFC の潜在的なセキュリティ上の弱点について説明します。
潜在的なセキュリティの弱点
MFC を使用すると、ユーザーは、ボタンやアイコンの外観など、アプリケーション ユーザー インターフェイスの外観をカスタマイズできます。 MFC では、ユーザー定義ツールもサポートされています。このツールを使用すると、ユーザーはシェル コマンドを実行できます。 アプリケーションのカスタマイズされた設定がレジストリのユーザー プロファイルに保存されるため、セキュリティの脆弱性が発生します。 レジストリにアクセスできるすべてのユーザーは、これらの設定を編集し、アプリケーションの外観や動作を変更できます。 たとえば、コンピューターの管理者は、ユーザーのアプリケーションで (ネットワーク共有からでも) 任意のプログラムを実行させることで、ユーザーを偽装できます。
対処方法
レジストリの脆弱性を閉じるには、次の 3 つの方法のいずれかをお勧めします。
そこに格納されているデータを暗号化する
レジストリではなく、セキュリティで保護されたファイルにデータを格納します。
これらの最初の 2 つの方法のいずれかを実現するには、 CSettingsStore クラスからクラス を派生させ、そのメソッドをオーバーライドして、レジストリの外部に暗号化またはストレージを実装します。
アプリケーションでカスタマイズを無効にすることもできます。