サンドボックス
サンドボックステクノロジーについて
サンドボックスは、フル装備のOSの仮想マシン(VM)で疑わしいオブジェクトを実行するマルウェアの検知システムで、そのふるまいを分析することでオブジェクトの悪意のある動作を検知します。VM内でオブジェクトが悪意のある動作を実行した場合、サンドボックスはそれをマルウェアとして検知します。VMは、実際のビジネスインフラストラクチャから分離されています。
サンドボックスは、オブジェクト実行時のふるまいを分析するため、静的分析を逃れたマルウェアに対して効果を発揮します。また、他のふるまい分析の設計と比較して、実際の企業のインフラストラクチャで疑わしいオブジェクトを実行するリスクを伴わないため、サンドボックスはより安全です。
カスペルスキーのサンドボックス
Kaspersky Labでは、数年前に独自のサンドボックスを開発しました。当社のインフラストラクチャにおいて、サンドボックスはマルウェア分析、調査、アンチウイルス用定義データベースを作成するツールの1つです。サンドボックスは、Kaspersky Anti-Targeted Attack PlatformおよびKaspersky 脅威インテリジェンスプラットフォームの一部も成してします。ファイルおよびURLが有害か無害かを評価するのに役立ち、これらの動作に関して検知ルールやアルゴリズムの作成に有益な情報を提供します。
サンドボックスの機能
- サンドボックスは、ハードウェアの仮想化し高速で安定した機能を提供します。
- VMは以下のOSの環境をご利用いただけます。
- Windows OS(Windows XP以降のすべてのバージョンのPC用OS、Windows Server 2003以降のバージョンのサーバーOS)
- Android OS(x86、ARMプロセッサアーキテクチャ)。
- サンドボックスは、疑わしい動作に対してOSで探索されたプロセスのやり取りを監視して、さらに詳細を確認します。
- サンドボックスは、脆弱性攻撃の初期段階から攻撃検知を開始します。ROPチェーン の使用、ヒープスプレー、スタックピボット、セキュリティトークンの変更、メモリ保護の不審な変更など、典型的な脆弱性攻撃のふるまいを検知します。サンドボックスは、標的型攻撃で使用される高度な脆弱性攻撃も検知できます。
実行可能なオブジェクトの種類
- Windows: *.exe、*.dll、.NETオブジェクト、MS Officeファイル、PDFなどあらゆるファイル
- Android:APK(DEX)
- URL:サンドボックスはURLに移動して、次のイベントを検知します:ダウンロードの実行、JavaScriptの実行、Adobe Flashの実行など
マルウェア検知ワークフロー
- サンドボックスは別のセキュリティ製品コンポーネントからオブジェクト(ファイルまたはURL)をスキャンする指示を含むリクエストを受信します:OSおよびオブジェクトを実行する設定、オブジェクトの実行パラメータ、VMにインストールされたその他のサードパーティのアプリケーション、テスト時間の制限など。
- テスト対象のオブジェクトが実行されます。
- サンドボックスは、指定された期間を通じてアーティファクト を収集します。オブジェクトが既知のレピュテーションがある他のプロセス、またはURLとやり取りを行う場合、サンドボックスはそのやり取りをキャプチャします。
- サンドボックスはアーティファクトを分析し、、その判定結果(マルウェアまたは無害であるか)をリクエスト元のシステムに報告します。サンドボックスはオブジェクトのデータを判定結果に追加します(ID、機能、ログ、ふるまいの詳細)。これにより今後の分析でサンドボックスに新たにリクエストをする必要がなくなります。
サンドボックスで収集されるアーティファクト
- アプリケーション実行ログ(パラメータでのAPI関数呼び出し、実行イベント)
- メモリダンプ
- 読み込まれたモジュールのダンプ
- ファイルシステム、レジストリの変更
- ネットワークトラフィック(PCAPファイル)
- スクリーンショット(必要に応じて監査と手動分析に容易にする)
- 脆弱性攻撃のアーティファクト
保護の回避
一般的に今日のマルウェアはサンドボックスを検知・認識をして回避しようと試みます。サンドボックスで実行していることをマルウェアが認識すると、悪意のある動作の実行をスキップし、ディスクからそれ自体を消去や終了したり、その他の回避手法を使用したりします。
サンドボックス監視ハードウェアの設計が単純である場合(API関数フックなど)、不審なプロセスが観察されたことを示すトレースが残ります。そのため、当社では非侵入型の監視手法を実装して、スキャンされたオブジェクトに表示されるトレースを残しません。サンドボックスはCPUとRAMを制御しますが、プロセス操作、メモリ、ディスク上のシステムライブラリを変更せず、メモリに監視のトレースを残しません。
また、当社では新たに生み出される回避テクニックを常に追跡し、当社のサンドボックスがこれらに対抗できるように調整しています。
Evasion A:一部のよく知られたベンダーのサンドボックスは、典型的なサンドボックス環境となっています。マルウェアはこれを認識し、サンドボックスによる検知を回避します。
Counter evasion A:当社のサンドボックスは、VMを開始する前にVM環境をランダム化します。
Evasion B: ユーザーアクティビティが少ないことで、マルウェアはそれが自動的に実行されているサンドボックスであることを認識します。 一部のマルウェアを実行するには、ユーザーがメールのパスワードを入力し、ウィザードをクリックしたり、その他の「人間による」操作が必要です。多くのサンドボックスではこれをエミュレーションしないため、このような操作によるマルウェアの反応を確認することができません。
Counter evasion B:当社のサンドボックスは、ユーザーの動作(マウスの動き、表示されるドキュメントのスクロールなど)をエミュレーションします。さらに当社のサンドボックスでは、マルウェアをアクティブ化するためにユーザーが行う数多くの操作を実行します。
カスペルスキーサンドボックスが検知する攻撃
2016~2017年にインフラストラクチャでカスペルスキー製品のサンドボックスにより検知された新たな標的型攻撃の例:Sofacy(2017年10月)、 Zero.T 2016年10月、11月、2017年4月)、Enfal 2016年9月、10月、11月)、Freakyshelly 2016年10月)、NetTraveller 2016年8月)、 CobaltGoblin 2016年8月)、 Microcin (2016年6月)など。