2020.12.17   MSS

ランサムウェア を検知するSIEM分析ガイド

SPiDER TM V5.0はセキュリティ監視経験とビックデータのが集約された統合セキュリティ管理ソリューションで検知からログ/ネットワークパケット分析まで一元化された監視環境を構成し、監視業務の機敏性と効率性を高め、同時にインフラ全般に対しての可視性を確保します。

1.概要

2017年に過去最大規模のサイバー攻撃が世界的に発生した。日本企業もその攻撃を受け企業活動に影響が出るほどであった。その為、国内でも大々的に報道されていた。
海外では医療サービスや公共機関への影響もあり、この攻撃を受け「 ランサムウェア 」という言葉を多くの人が知ることとなった。
不正コード(マルウェア)の中でランサムウェアによる攻撃は多くを占めるようになり、企業をターゲットにしたランサムウェアは増加している。

ランサムウェアについて:http://cyberfortress.jp/2020/07/09/blog-about-ransom/

2. ランサムウェア に感染したPCの共通行為の分析(Process, Network, DNS問い合わせ)

ランサムウェア に感染したPCやサーバはどのような行為をするのか?一般的にランサムウェアに感染したPCやサーバは新しいプロセスを実行させ、その後、ファイルを暗号化、外部C&Cサーバと通信するなど共通の行為を行う。TeslaCrypt, Locky, Wannacry3つのランサムウェアの共通行為を確認して、このような行為をWindowsイベントログとファイアウォールのログ収集を通じて検知する方法を調べてみよう。

Wannacry RansomWare

1) プロセス作成

ランサムウェア

2) 外部C&Cサーバと通信

ランサムウェア

3) DNS問い合わせ

ランサムウェア

4) SMB脆弱性によるネットワークSCANトラフィック発生

ランサムウェア

TeslaCrypt RansomWare

1) プロセス作成

ランサムウェア

2) 外部C&Cサーバと通信

ランサムウェア

3) DNS問い合わせ

ランサムウェア

Locky RansomWare

1) プロセス作成

ランサムウェア

2) 外部C&Cサーバと通信

ランサムウェア

3) DNS問い合わせ

ランサムウェア

3.【Wannacry】ランサムウェアの感染時点で発生する共通のネットワークトラフィック(FireWall&DNS)症状

FW(Firewall)トラフィック症状

ランサムウェア

ランサムウェアに感染したPCは、外部C&Cサーバと通信のために長時間連結されたセッションが発生する。このような長時間セッションを制御するためにファイアウォールのセッションタイムアウト設定はTCP3600秒、UDP30秒、ICMP30秒、IP600秒がデフォルトの設定とされている。つまり、トラフィックがないと強制にセッションを切る。
下記の図を見るとhttpsプロトコルから使用するデフォルトポートの443ポートから8864秒の間、内部ユーザーが海外にアクセスしているトラフィックが確認できる。
「検索:log:fw AND duration:[600 TO *] AND protocol:6 NOT (d_country:JP OR d_country:”-“)」

ランサムウェア

ISP通信事業者によってBlackListで登録される場合ルータやファイアウォールから既に遮断されて繰り返してアクセス試しが発生し、SYN(S+)パケットが持続的に発生しうる。
「検索:log:fw AND tcp_flag:S+ NOT (d_country:JP OR d_country:”-“)」

DNS問い合わせ症状

ランサムウェア

JS(JavaScript), VB(VisualBasic)形式の不正コードのファイルは通常Drive by Download方法で不正コードファイルの流布元にアクセスして実行ファイルをダウンロード(Dropper)し、実行する。そうしてユーザーPCを感染させた後、暗号化をする。
「検索:log:dns AND s_ip:192.168.1.99(感染したPC)」

4. Windowsイベントログ分析を通じてランサムウェアの行為分析

Windowsイベント収集

WindowsOS基盤のシステムから攻撃者の攻撃経路を把握するためには、Windowsイベントログが必要である。Windowsイベントログは外部からシステムアクセスとアカウント設定変更、不法S/Wのインストール及び実行など侵入/被害時点で発生した様々な情報が保存されている。Windowsイベントログの種類は大きく応用プログラム、システム、セキュリティログの3つで、サービスによってAD, DNSログなどが追加で発生する。それではWindowsログを通じて外部の侵入者が当該システムにログインした瞬間からランサムウェアがインストールされて実行されるまでどのような痕跡が残るか調べてみよう。

Windowsイベントログ分析:Wannacry

ランサムウェア

Windowsサーバに誰かがログインに成功した痕跡を探すためにはイベントID「4776」を探せばいい。アカウントログオンイベント監査ID4776ではログインしたアカウントとコンピューター名などログイン成功情報を確認することができる。
下記の図を見るとWin2012nameサーバにAdministratorアカウントでログインが成功されたことが確認できる。
「検索:origin:192.168.1.112 AND event_id:4776」

ランサムウェア

ログオンイベント監査ログではユーザログオン/ログオフまたはネットワークアクセスの各インスタンス監査を残し、ID「4624」で検索すると成功したログインのアカウントとworkgroup, computer name, 呼び出しプロセス、認証情報などログインに成功にした各種情報を確認することができる
Win2012nameサーバのLEESEHOワークグループにAdministratorアカウントがKerberos認証でログインに成功したことが確認できる。
「検索:origin:192.168.1.112 AND event_id:4624」

ランサムウェア

プロセス追跡監査を通じてプロセスの有効化/終了及び間接的なオブジェクトのアクセスなどイベントに対しての詳細な追跡情報を確認することができる。つまい、管理者も知らないうちに実行される新規プロセスと終了されるプロセスに対して確認ができる。イベントID4886と4869を通じて新規プロセスの作成と終了されるプロセスのモニタリングができる。「図3-16」のようにtaskse.exeプロセスと@WanaDecryptor@.exeなどのプロセスが有効されていることが確認できた。
「検索:origin:192.168.1.112 AND event_id:4688」

Windowsイベントログ分析:TeslaCrypt

ランサムウェア

イベントID4688と4689を通じて簡単に検索でき、「図3-17」のようにTeslaCryptランサムウェアのファイルである「80.exe」が最初に実行された後、「wlmdr.exe」と「conhost.exe」、「cmd.exe」が連続で実行されたことが確認できる。

ランサムウェア

80.exeが実行されるとリソースモニタリングツールであるプロセスエクスプローラー「procexp64.exe」を強制終了させることがログを通じて確認できる。

ランサムウェア

ランサムウェアがファイルを暗号化させた後、感染事実を知らせるためにノートパッドとインターネットエクスプローラーを自動実行させる行為も確認できる。

5. 検知方法

外部C&Cサーバと長時間セッション及びSYNパケット検知ルールを設定

ランサムウェアに感染した後の共通行為を把握して検知できるルールを設定する。
ルール説明:海外向けのトラフィックの中で送信先のIPアドレスがブラックリストIPの場合検知またはSYNパケットを検知

1) 検知条件(オブジェクト設定)

オブジェクト通信方法送信先国TI(脅威情報)セッションTCP FALGE
説明内部→外部海外有害IP長期間セッションSYNパケット
フィールドd_directiond_countryd_ipduration(秒)Tcp_flage
演算子/値= / OUTNot in / JP, –= / gm クエリ> / 3600= / s

2) 検知ルール

ランサムウェア

単一アラートの「直接入力」を利用したWindowsイベントID検知設定

一つのフィールドから検知したり、オブジェクトで定義することが難しい条件はクエリ形式で直接入力すれば良い。設定方法は[フィールド名 = ‘データ値’]フィールドの属性が文字列であれば「”」を使う。
例)  文字列のフィールド「s_ip = ‘1.2.3.4’」、数字属性のフィールド「d_port = 3389」
例) 「(event_id = 4668) or (event_id = 4776)」

ランサムウェア
ランサムウェア

収集されたWindowsイベントからは非認可ログイン監視のためにイベントID「4776」と、プロセス追跡監視を通じて不正コードの感染モニタリングイベントIP「4688」などは直接入力を利用して簡単に設定できる。「security」 という「sublog」タイプからはイベントIDが「4668」の場合を検知する設定である。
通常実行されるプロセス以外に変なプロセスが実行される場合を検知するのであれば、リスト化DBを利用して評判検知を活用すると簡単に区別して検知ができる。

ランサムウェア

条件定義フィールドと直接入力フィールドはAND関係で動作する。条件定義で作っていたオブジェクトがあれば再び使うこともできて、直接入力からはイベントIDに対しての直接クエリだけ入力してもいい。
条件定義と直接入力は一つの検知条件設定として考えて、オブジェクトを使用するか直接クエリを使用するかは便利性の方で考えれば良い。

6. 結論

ランサムウェアが感染したPCやサーバの行為分析のためにSIEMを活用してWindowsイベントログ、プロセス、ポートとネットワークセキュリティログを活用する方法を調べてみた。
つまり、OS侵入→特定パスにファイル作成→プロセス実行→ポートOpen→外部C&Cと通信する一連の過程をSIEMを通じて簡単に分析ができる。また、ログさえ収集できればどんなフィールドでも制限なく柔軟に検知できる。
SIEM構築もしくは、監視運用の過程からどのような脅威の行為を検知/分析するかを事前定義後、それに合うログ収集対象を選定することはとても大事な流れである。このような流れでSIEMシステムはそのサイトに最適化される。

<次世代SEIM SPIDET TM のご紹介>

【参考】Windowsセキュリティ監査イベントの説明

既存のEvtは、Vista以降からはEvtxで使用されていて、ログファイルのヘッダー及び構成に変更はあるがEvt IDに4096を足すとEvtx形のイベントIDになる。

アカウントログオンイベント監査:アカウントの有効性を検査するコンピューターではなく、他のコンピューターのログオン/ログオフの監査有無を決定する。

Evt IDEvtx ID内容
6804776ログイン成功
6814777ログイン失敗

ログオンイベント監査:ユーザーログオン/ログオフまたは、ネットワークアクセスの各インスタンスの監査有無を決定する。成功監査はログオン試しが成功した場合作成されて、この項目は侵入検知の際、活用できる。

Evt IDEvtx ID内容
5284624成功的なログイン
5294625知らないアカウントか間違ったパスワードを利用したログイン試し
5384634ログオフ

プロセス追跡監査:プロセスの有効化/終了及び間接的オブジェクトのアクセスなどイベントに対しての詳細な追跡情報を監査する有無を決定する。Windows XP SP2及びサーバ2003 SP1以上からプロセス監査を使用するとWindowsファイアウォール構成要素の動作モード及びステータスに対しての情報も記録する。

Evt IDEvtx ID内容
5924688新規プロセス作成
5934689プロセス終了
5944690オブジェクトに対してヒントの重複
5954691オブジェクトに対して間接的なアクセス

Written by CYBERFORTRESS, INC.

サイバーフォートレス CYBERTHREATS TODAY 編集チーム

サイバーフォートレスは、サイバーセキュリティ対策を提供するセキュリティ専門企業です。

セキュリティ対策や、最新のセキュリティ脅威、サイバー攻撃のトレンドなど、当社が研究開発や情報収集した内容をもとに、最新のセキュリティ脅威・セキュリティ対策についてお伝えします。

関連記事

よく読まれている記事