情報セキュリティにおける「未知の攻撃」とは?定義と対策技術を徹底解説
未知の攻撃とは何か
「未知の攻撃(Unknown Attack)」とは、機械学習ベースの分類器が学習データセットにおいて一度も扱ったことのない、まったく新しい種類の攻撃ラベルを指します。例えば、分類器がDoS攻撃について一切学習していない状態で、テストデータセットにDoS攻撃が含まれていた場合、その攻撃は分類器にとって「未知の攻撃」となるのです。
このような未知の攻撃に対して強固な多層防御を提供する技術として、ソフトウェアフォールトアイソレーションやプログラム解析による侵入検知などが挙げられます。
これらの技術に共通する重要な特徴は、プログラムが正常に動作していることに依存しないという点です。つまり、これらは第一線の防御手段ではなく、仮にプログラムが侵害・改ざんされた場合に備える「第二の防御層」として機能します。もちろん、こうした防御システム自体にも脆弱性が存在しうるものの、攻撃が成功するためには、アプリケーション本体と第二防御層の両方が同時に突破されなければなりません。バグは継続的に修正されていくため、単一のバグが発見・悪用される可能性に比べて、2つのバグが同時に発見され悪用される可能性ははるかに低いと言えます。
ソフトウェアフォールトアイソレーション(SFI)
最初の技術であるソフトウェアフォールトアイソレーション(SFI:Software Fault Isolation)は、Wahbeらによって考案された手法で、言語に依存しない形で、動的にロードされる任意のプログラムに対してJavaのようなサンドボックス環境を構築するアプローチです。JVMベースのシステムとは異なり、ソース言語やコンパイラの種類に関わらず適用できる点が大きな特徴です。唯一の意味論上の制約は、フォールトアイソレーションされたモジュール内では動的コード生成が許可されないことです。
SFIシステムは、各モジュールに対して専用の独立したメモリ領域を割り当て、大規模なプログラムの一部として隔離します。さらに静的検査によって、静的に判定可能なすべてのジャンプ命令がモジュール内部および許可された外部関数へのみ発生することを保証します。これこそがサンドボックスの基本的なメカニズムとなっています。
プログラム解析による侵入検知(IDS)
2つ目の技術は、WagnerとDeanによって初めて提案・実証された、ホストベースのプログラム解析による侵入検知システム(IDS)です。このIDSは、プログラムの静的解析を実施し、関数呼び出しやシステムコールに関する抽象的かつ非決定的なオートマトンモデルを生成します。
プログラムの実行中、システムは実際のシステムコールのパターンを、オートマトンの実行コピーと常時照合します。もしプログラムがモデルに違反するシステムコールを実行しようとした場合、システムは「侵入者によってプログラムが汚染された」と判断します。
サンプル入力やルールセットに基づく従来の侵入検知手法とは異なり、この手法はゼロ誤検知率(偽陽性ゼロ)が保証されている点が画期的です。これにより無駄なアラームが排除され、IDSはシステムコールの遮断、不正プログラムの強制終了、管理者への警告といった自動対応を即座に開始できます。
このゼロ誤検知率は、IDSのプログラム的な性質に由来します。このIDSは、プログラムを通るすべての正当な実行経路を表現するモデルを保持しており、検出された逸脱がプログラム自身のコードによって引き起こされたものではなく、ウイルスや攻撃者によって挿入されたコードによるものであることを確実に判別できるのです。
-
AESに対する暗号解読攻撃の種類とは?情報セキュリティの観点から徹底解説
AES(Advanced Encryption Standard)は現在広く採用されている共通鍵暗号方式ですが、その安全性を検証するためにさまざまな暗号解読(クリプトアナリシス)攻撃が研究されてきました。ここでは、AESに対して知られている代表的な攻撃手法を詳しく解説します。 1. 線形暗号解読攻撃(Linear Cryptanalysis) 線形暗号解読攻撃は、暗号の構成要素に対するアフィン近似を発見することに基づく手法です。関数ブロックの入力と出力の間に存在する高確率の線形関係を利用しようとします。 ブロック暗号への適用では、平文パターンの線形集合と暗号文パターンの線形集合を、鍵ビットの
-
DESへの主な攻撃手法とは?差分解読・線形解読・関連鍵・総当たり攻撃を徹底解説
DES(Data Encryption Standard)に対しては、これまでにさまざまな暗号解読攻撃が研究されてきました。本記事では、代表的な4つの攻撃手法——差分解読法、関連鍵解読法、線形解読法、そして総当たり攻撃——について、それぞれの仕組みと特徴をわかりやすく解説します。 1. 差分解読法(Differential Cryptanalysis) 差分解読法は、暗号文における統計的な分布やパターンを観察し、そこから使用された鍵に関する情報を推測することを主な目的とした攻撃手法です。 この手法は、入力(平文)の差分が暗号化後の出力(暗号文)の差分にどのように対応するかを比較分析する暗号学