MITRE ATT&CKからセキュリティ対策を読み解く【第6回 盗み出しと痕跡削除編】
さて、今回で「MITRE ATT&CKからセキュリティ対策を読み解く」をテーマにしたコラムは最終回です。
侵入の最終段階である、盗み出しと痕跡削除についてお話します。
目次
ATT&CK 10
本題に入る前に。2021年10月22日に、ATT&CKバージョン10 がリリースされました。
大きな違いは、version 9 で痕跡データソースについての情報が github のリポジトリへの参照だったものが、新たにATT&CK DataSourceオブジェクト(DSxxxx 番号のついたもの)として取り込まれた点です。
例えば、ファイルアクセスに関するものは、DS0022として定義され、生成・削除・変更などについての痕跡に関する情報、ATT&CKのTechniqueやMalware情報等と関連が表示されるようになりました。
このように、ATT&CKは着々と改良され続けています。
盗み出しと痕跡削除
さて本題です。
企業において、サイバー攻撃を受けたときに大きな打撃となるのは、情報が盗み出され、流出することです。
情報の流出は、影響範囲が自社のみに限らず、他社や個人まで巻き込んでしまう可能性があります。
また、一旦インターネット、ダークWeb上に流出した情報は、削除が非常に難しく、影響が長期化する可能性もあります。
侵入した攻撃者は、探索活動(第4回)により、盗み出す価値のある情報を探します。C&Cサーバーとの通信(第5回)により、より詳細な指令や追加の攻撃ツールを与えられ、組織内ネットワークの深いところまで侵入・探索を広げていく可能性があります。
見つけ出した情報は、侵入先の内部で収集(TA0009)され、攻撃者の手元に盗み出されます。ここで使われるのが盗み出し(TA0010)のためのTechnique です。
また、盗み出しにより目的を達成した攻撃者は、活動の痕跡を削除します。痕跡削除は、ATT&CKでは、防衛回避(TA0005)の一部として扱われています。
痕跡を削除されてしまうと、後からデジタルフォレンジックなどで攻撃者の活動を調べることができなくなってしまいます。
Tactics(戦術) | 概要 |
---|---|
初期アクセス(Initial Access) | ネットワークに侵入しようとしている。 |
実行(Execution) | 悪意のあるコードを実行しようとしている。 |
永続化(Persistence) | 不正アクセスする環境を確保しようとしている。 |
権限昇格(Privilege Escalation) | より高いレベルの権限を取得しようとしている。 |
防衛回避(Defense Evasion) | 検知されないようにしようとしている。 |
認証情報アクセス(Credential Access) | アカウント名とパスワードを盗もうとしている。 |
探索(Discovery) | アクセス先の環境を理解しようとしている。 |
水平展開(Lateral Movement) | アクセス先の環境を移動しようとしている。 |
コマンドアンドコントロール(C&C)(Command and Control) | 侵害されたシステムと通信して制御しようとしている。 |
収集(Collection) | 目標に関心のあるデータを収集しようとしている。 |
盗み出し(Exfiltration) | データを盗もうとしている。 |
打撃(Impact) | システムとデータを操作、中断、または破壊しようとしている。 |
盗み出し、痕跡削除のATT&CK Technique
盗み出し
本ブログでは、英語の「Exfiltration」(直訳は「外部への抽出」)を「盗み出し」としています。
盗み出しの Techniqueのうち、経路に関するものとして、以下があります。
ATT&CK テクニック | 解説 |
---|---|
C2チャネルを介した盗み出し(T1041) | Command and Control(C&C/C2、前回参照)での接続経路からのデータを盗み出し。最も良く使われる。 |
ネットワーク経由の盗み出し(T1011) | 業務用ネットワーク以外のWiFi接続、モデム、セルラーデータ通信、Bluetoothなどのネットワークを介した盗み出し。 |
Webサービスを介した盗み出し(T1567) | Webストレージや、SNSなどを使う盗み出し。組織で利用しているサービスと同じものを使うと、ファイアウォールでブロックされることもなく、正常な通信の中に埋没させ、隠蔽することが可能。 |
代替プロトコルを用いた盗み出し(T1048) | FTP、SMTP、HTTP/S、DNS、SMB、その他のプロトコルを使用した盗み出し。 |
物理メディアを介した盗み出し(T1052) | 隔離されたネットワークからの盗み出しなど、人を介して外部ハードドライブ、USBドライブ、携帯電話、MP3プレーヤ、またはその他のリムーバブルストレージおよび処理デバイス経由で盗み出す。 |
基本的な経路は、ネットワークです。
例外として物理メディア(T1052)がありますが、これには組織内部に入ることのできる人間の協力を得るか、ソーシャルエンジニアリングで騙す、使用している物理メディアを感染させるなどの必要があります。
また、盗み出し過程の制御についてのTechniqueとして、以下が記載されています。
ATT&CK テクニック | 解説 |
---|---|
データ転送量の制限(T1030) | ネットワーク監視での通信量アラートに引っ掛からないように、データを小分けにし、間隔を開けて送信する。 |
スケジュールされた転送(T1029) | データの盗み出しを1日の特定の時間に実行したり、特定の間隔でのみ実行するようにスケジュールする。 |
自動化された盗み出し(T1020) | 収集した情報を自動化されたスクリプトなどで盗み出す。 |
痕跡削除
情報を盗み出した攻撃者は、なるべく活動した痕跡(残留ファイルやログなど)を残さないようにするため、ログや検出のためのメカニズムを止めたり、痕跡を消したりします。
そのためのATT&CK Technique は、防衛の回避(TA0005)Tactics に含まれている、以下の二つが該当します。
ATT&CK テクニック | 解説 |
---|---|
防御機構の棄損(T1562) | セキュリティツールの無効化、Windowsイベントログの無効化、PowerShellコマンドヒストリの無効化、セキュリティシステムによるログやデータ収集をブロックする、など。 |
ホストの痕跡の削除(T1070) | 侵入や攻撃に使ったファイルの削除、活動を検知したログの削除、コマンドヒストリの削除、使用したネットワーク共有の削除、ファイルのタイムスタンプの改竄、など。 |
盗み出し、痕跡削除の検出
盗み出しを検出する方法
ネットワーク通信による盗み出しの検出は、C&C通信(第5回)の検出と共通するものがあります。要約のみ記すと、
-
ペイロード(※)から起動されたプロセス、ペイロードを読み込んだプロセスによる通信を検出。
直接には難しいので、通常は通信を行わないプロセスによる通信を検知する。
※…攻撃者側が持ち込んだ、あるいはそこから派生した暗号解除などをするための実行可能ファイル。 - 通常業務と異なる通信先の検出
Webサービス、クラウドサービスやSNSを使う場合(T1567):
- 業務で利用していないサービスへの接続を検出
- ユーザーの操作と関係ないプロセスからのクラウドサービスへ通信を検出
業務用ネットワーク以外のネットワークや、物理メディアを介する場合:
- 端末に接続されるネットワーク通信可能なデバイスとその状態の検出、端末のネットワーク接続の検出
- リムーバブルメディアの検出、リムーバブルメディアを扱うユーザー、関連するプロセスの検出
これらと共に、通信制御に関するもの:
-
通常業務とは異なる通信パターンの検出
例:-
一定または不定の時間間隔を置いて、特定のマシンやプロセスから同じ通信先に、目立たない量の送信を行う。
TCP接続が続いている場合は、ソースポート番号も同じになるが、送信の都度別の接続とする場合は、ソースポート番号が変わる。 - 特定のマシンから多数の不明な宛先への送信の発生
-
一定または不定の時間間隔を置いて、特定のマシンやプロセスから同じ通信先に、目立たない量の送信を行う。
これらの検出には、通信を行っているデバイス、マシンの中のプロセスまで含む情報が必要なものが多いです。
とは言えログが膨大になるので、ネットワーク境界のスイッチ、FW、UTM等でのログ収集に留まることが多いと思います。
その場合はプロセスの情報を取れないため、マシン単位の通信の傾向を分析するなどの手段が必要になります。
痕跡削除を検出する方法
痕跡削除のうち、防御機構の棄損(T1562)、つまりセキュリティツールの無効化、ログの無効化などは、管理者権限が必要になるので、不審な権限昇格(第3回)を伴うそれらのツール操作のログが残ります。
例えば、Windows監査ポリシーの変更イベント(4715、4719、4817)が発生する可能性があります。
権限昇格ができているということは、それらのログも痕跡削除で消せるのですが、セキュリティツールやログ機能を無効化すると、それらをモニタしているシステム側で異常が検知される可能性があります(ツールの停止、ログが来ない、などの検知)ので、比較的リアルタイムで検出されやすいと言えます。
ホストの痕跡の削除(T1070)による侵入先マシンでのファイルの削除や、タイムスタンプ操作等を検知するには、ファイル操作に対するログが必要になります。
これはログ量が膨大になり、かつ検出も難しいですが、リネーム、削除、属性変更の集中した発生を検知することで疑わしい動きを見つけることができるかも知れません。
Windows にて有効な痕跡削除は、イベントログの削除です。
検知ツールなどもイベントログ、特に監査ログを利用しているものが多いので、それを削除されると後からの調査が非常に困難になります。
イベントログが削除されたとき、監査イベント1102が記録されます。
イベントログの削除は、通常行わない操作なので、このイベントの発生はかなり疑わしい事象です。
しかし、これが検出されたということは、攻撃は終わっている可能性も高いということになります。
攻撃者は、侵入して実行したコマンドの履歴を削除する場合があります。
PowerShellでPSReadLineモジュールを使っている場合、コマンド履歴が保存されますが、そのデフォルトの場所は
%APPDATA%¥Microsoft¥Windows¥PowerShell¥PSReadLine¥ConsoleHost_history.txt |
---|
です。
攻撃者もPowerShellを使う場合がありますので、この履歴の保存をオフにしたり、保存先を変更したり、削除したりという動きをする可能性があります。
それらの操作は通常業務で行うものではないので、疑わしい事象です。
具体的には、PowerShellの監査にて、以下のようなコマンドの実行を検出します。
Set-PSReadlineOption-HistorySaveStyle SaveNothing Set-PSReadLineOption-HistorySavePath 変更する保存先 |
---|
リスク低減・防御
盗み出し、痕跡削除のリスク低減は、以下のようになります。
- 通信先のフィルタ:Firewall/UTMにて、ブロックリストや許可リストにより、接続先を制限する。
- グループポリシーにより、端末へのUSBデバイスなどの追加を制限する。
- 端末に内蔵されている、業務で使用しないデバイスを無効にする。
- 不審な権限昇格(第3回)のリスク低減を実施する:脆弱性パッチの適切な適用と、エンドユーザーへの特権付与をしない、など。
まとめ
盗み出しと痕跡削除は、攻撃の最終段階なので、ここまで行われてしまっていると対策や調査のために打つ手が乏しくなってしまいます。
さらに流出した情報への対策は、社会的、法律的な対応も必要となり、そこから先はATT&CKの範囲外となります。
そのため、ここまで来る前に、第1回から第5回までの範囲内で検出、防御したいところです。
これまでの内容を通じて何度も出てきましたが、端末やマシン内、ネットワーク内における通常業務とは異なるふるまいを検知する、ということが重要になります。
また、そのようなふるまいをさせない防御を張っておくことが予防線となります。
ATT&CKは個々の攻撃Techniqueで実行されるふるまいを記述し、検出や防御について情報を収集、公開し、日々アップデートしているので、これらの情報を包括的に利用することで、セキュリティ向上に役立てることができると思います。