
TrickBotは、従来から確認されているモジュール型マルウェアです。
これまでも何度も変種が確認されていますが、また新たなTrickBotの変種が観測されています。
今回の変種では、従来のHTTP通信ではなくDNSトンネリングを用いて検知を回避する方式になっています。
内容を見てみましょう。
- 高度な難読化
- 文字列の暗号化や、APIをハッシュ値から動的解決(Get_API_By_Hash)する技術を使い、静的解析を妨害します。
- タスクスケジューラ + NTFS ADS による永続化
- Wireshark autoupdate #数字 などの偽装タスクを作成し、5分おきに自動実行します。
- 重複生成を防ぐため、タスク名と自パスをBase64化してNTFS代替データストリーム(ADS)の $TASK や $FILE に隠蔽・保存します。
- DNSトンネリングによるC2通信
- 送信: XOR暗号化+16進数化したデータを63文字ごとに分割し、悪性ドメイン(例: .westurn[.]in)のサブドメインとして外部へ送信します。
- 受信: C2サーバーは指示データを大量のAレコード(IPアドレス群)の中に隠して返します。各IPの上位6ビットをインデックスとして利用し、リゾルバによる並び替え順序の崩れを復元します。
- 感染後の脅威
- システム情報の窃取のほか、PowerShell実行、モジュール追加、プロセスインジェクション(Process Hollowing / Process Doppelgänging)など多岐にわたる攻撃を実行します。
この脅威に対応するための防御や検出には次のような手段が有効です。
- DNS監視: 63文字に近いランダムな16進数サブドメインを含む大量のクエリや、大量のAレコードを返す不自然な応答を検知・遮断する。
- 直通DNSの制限: 外部(ポート53)への直接通信をブロックし、社内指定のDNSリゾルバを強制する。
- 端末監視 (EDR): アプリアップデートを装う不審なスケジューラタスクや、実行ファイルへの異常なADS($TASK, $FILE)付与を監視する。
今回の変種に見られるように、攻撃者は正規プロトコル(DNS)やシステム機能(タスクスケジューラ、ADS)を巧妙に悪用して潜伏を試みます。
特に「直接的な外部DNS通信(ポート53)の遮断」や「DNSクエリの異常検知」は即座に効果を発揮する対策です。
既存のネットワーク設定や端末監視ルールを見直し、最新のTTPs(技術・戦術・手順)に対応したセキュリティ運用を維持していきましょう。
Inside a TrickBot Variant Using DNS Tunneling for C2
https://www.fortinet.com/blog/threat-research/inside-a-trickbot-variant-using-dns-tunneling-for-c2
| この記事をシェア |
|---|