デバッグ チェックは、アプリケーションにデバッガーがアタッチされていないかどうかを検出するタイプのチェックです。
たとえば、攻撃者がアプリケーションをリバース エンジニアリングしたり機密データを抽出または操作したりするために、デバッガー環境でアプリケーションを起動した場合には、デバッグ チェックはデバッガーを検出し、アプリケーションに通知したり、攻撃者を妨害したりして対応することができます。つまり、デバッグ チェックはアプリケーションに対する不正なデバッグを検出して対応します。
デバッグ チェックの構成
Dotfuscator でアプリケーションにデバッグ チェックを差し込むには、次のようにします。
-
構成ファイルを使用するか、DebuggingCheckAttribute のアノテーションをソース コードに付けることにより、チェックを構成します。
これらのどちらの方法でも、チェックの動作を決めるさまざまなプロパティを指定できます。
詳細については、[チェック属性]ページの DebuggingCheckAttribute セクションを参照してください。
サポートされないアプリケーションの種類
Dotfuscator は、以下に挙げる .NET アセンブリ以外のすべての .NET アセンブリにデバッグ チェックを差し込むことができます。
- Xamarin アセンブリ
- .NET Core アセンブリ
- .NET 5 以降のアセンブリ
テスト
アプリケーションに差し込まれたデバッグ チェックが、デバッガーの存在にどのように対応するかをテストするには、以下の手順を実行します。