元記事タイトル: Mitigating and eliminating info-stealing Qakbot and Emotet in corporate networks (Windows Security blog)
日本ではまだ(?)見聞きしないですが。最後の方にいくにしたがってWindows Defender Advanced Threat Protectionが超素敵に思えてくる不思議。
ざっくり訳しました。
QakbotとEmotet are 何
- QakbotとEmotetは情報窃取マルウェア(information stealers)でここ数カ月新たな活動をしている
- QakbotとEmotetは技術的には異なるマルウェアファミリーだが挙動において共通点が多くある
- オンラインバンキングの認証情報を盗むことが最終目標である
- キーロガーなどを使ってそれ以外の情報も窃取する
ここ最近の変化
- 個人ユーザーをターゲットにしているとされてきたが、徐々に企業内における感染が増えている
- Qakbot、Emotetはそれぞれ、内部コードが改善されてきている
共通する挙動(キルチェーン)
QakbotとEmotetは、キルチェーンが共通している点が多くある。
※キルチェーンとはマルウェアが目標達成するまでの一連の活動。詳しくはウィキペディアへどうぞ (https://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%AB%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3)
トリガー (Arrival and installation)
- 添付ファイルつきEメールまたはウェブサイトからのダウンロード
- ドロッパーはサンドボックス検知を回避するため10~15分スリープする
- Qakbotの亜種にはエクスプロイトキットを通じてインストールされることがあり、暗号化された設定データを含むDLLファイルとともにインストールされる
永続化(Persistence)
- ドロッパーは新しいexplorer.exeにDLLを挿入(inject)し、自分自身を削除する
- ペイロードがランダムなフォルダにランダムなファイル名で保存される
- 自動実行されるようペイロードを設置、レジストリ値の追加を行う
- マルウェアは自分自身をWindowsサービスとして登録することもある
- スケジュールタスクが定期的にペイロードを実行
制御サーバーとの通信(Command-and-control)
- QakbotとEmotet通信するC&Cサーバーは、ハードコードされているか、ドメイン生成アルゴリズム(DGA、Domain Generation Algorithm)で生成されている
- 情報は暗号化してHTTPまたはFTPで送信する
- 最近のEmotetの亜種は情報窃取や感染を広げるような悪意のあるコードを自身の内部に保持しておらず、C&Cサーバーから追加モジュールをダウンロード、抽出して使用する
情報の窃取(Information theft)
- 入力されたキーを収集する
- 亜種によってはブラウザやネットワーク関連のAPIをフックし情報を収集する
- クッキーや証明書も収集する
横展開・二次感染(Lateral movement)
- アクセス可能なすべてのネットワーク共有、ネットワークドライブ、USBフラッシュドライブなどのリムーバブルドライブ(!)すべてに対して感染を広げる
- カレントユーザーの認証情報や収集した認証情報をつかってデフォルトの管理共有や共有フォルダに感染を広げる
- Active Directoryアカウント列挙で得られたユーザー名や、よく使われるユーザー名に対してブルートフォース攻撃を行う
- SMB(Server Message Block)を使い、他の端末にコピーを設置してリモート実行によりリモートから動作させる
Qakbot、Emotetへの対処法
マルウェアの拡散およびC&Cサーバーとの通信を遮断する
- 感染端末の切り離し(Windows Defender ATPを使えばワンクリック)
- ホストファイアウォール(Windows Defender Advanced Firewall)のルールを作成しグループポリシーで配布する
- 感染の兆候があった場合共有フォルダを無効にするか読み取り専用にする
- 管理共有の削除は副作用もあるので最後の手段と考える
- 不要な権限やアカウントは削除または無効化する
感染端末における活動(自動起動)を阻止する
- GPOでスケジュールタスクのフォルダをロックダウンする
- ロックダウンの手順詳細は元記事参照("2. Prevent the malware from automatically running in affected machines")
- autorunの無効化 (https://support.microsoft.com/en-us/help/967715/how-to-disable-the-autorun-functionality-in-windows)
Qakbot、Emotet、および関連するマルウェアを削除する
- アンチウィルスベンダにサンプルを提出する。スケジュールタスクを確認すれば対象のバイナリがわかる(MS顧客の場合、Windows Defender Security Intelligence submission portalへ)
- 定義ファイルを更新、クラウドプロテクションを有効に(Enable cloud-delivered protection)して影響をうけるすべての端末でフルスキャンを行う
- 検知できていない亜種を探す。探すためにはスケジュールタスクを確認する。またSysinternalsのツールAutorunsも役に立つ
- Windows Defender ATPを使っている場合、SHA1、IPアドレス、URLなどの既知のアーティファクトで探すこともできる
再感染していないかモニタリングする
- 初期アタックベクターを識別する。Windows Defender ATPを使うとタイムラインや前後の流れなどもわかるので活用しましょう
- ネットワークに戻すときは一部のみアクセス可能にするなどしてゆっくりと再接続させる。そして再感染しないかをモニタリングする
- Windows Defender Antivirusでクラウドベースプロテクション、自動サンプル提出を有効にする
その他、Windows10ではWindows Defender Application Guard、Exploit Guard、Atttack Surface Reduction、などなどを活用すると良いという話。割愛。
IoC
- Qakbot、EmotetそれぞれのIoC(ファイル名、レジストリ値、C&CサーバーのIPアドレスなど)は元記事にあるのでそちらでご確認下さいませ
全体を通して、それほど目新しいことは意外となかったけど特定マルウェアファミリーのキルチェーンとその対処法を再整理するのに、良い勉強になりました。
まとめ: ところで読み方は角ボット、エモテット で良いんですかねぇ