GuLoaderは従来からあるマルウェアダウンローダー型のマルウェアです。
2019年から観測されています。
新しいマルウェアではないのですが、GuLoaderは更新され続けていて手口の巧妙化が進んでいます。
最近のGuLoaderの手口はこんな感じです。
- 3段階分割
多段階に侵入行為を分割して攻撃を展開します。
そのぞれぞれの段階が巧妙です。 - 1段目
VBS(VisualBasicスクリプト)ドロッパーファイルを使用して、2段目のパックされたペイロードをレジストリキーにドロップします。
VBSには永続化機構も含まれます。
次に、PowerShellスクリプトを実行し、メモリ内のレジストリキーから2段目のペイロードを解凍します。 - 2段目
すべての分析防止手法を実行し、Windowsプロセスを作成して、そこにシェルコードを挿入します。
挿入されるシェルコードは見ただけでは処理内容はわからない状態になっています。
シェルコードの最初の40バイトは実行可能なアセンブリ命令で、残りのバイトは暗号化されています。
最初の40バイトはコードの残りの部分を復号化する役割を果たし、実行フローは復号化された部分にジャンプします。
次の段階で、シェルコードは最初の16進数の40バイトを無操作(NOP)命令に置き換えます。これは、研究者によるコードの再デバッグを避けるために行われます。
複数のアンチデバッグ機構も使用されます。
ベクトル化された例外ハンドラーを使用し、例外を監視します。
これにより、ブレークポイントを使用して解析されていることを検出し、実行の継続を判断する機能を実現します。
ソフトウェア割り込みを監視することでデバッグが動作しているかどうかについても検出し対応します。
デバッガーからマルウェアを実行されたら実行が終了する機構も搭載されています。
さらにメモリ全体をスキャンしてマルウェアの動作環境が仮想マシンでないことを確認します。 - 3段目
すべての分析防止手法を再実行し、最終的なペイロードをリモートサーバーからダウンロードして、被害者のマシンで実行します。
プロセスホロウイングで用意した場所を使って攻撃を続けます。
プロセスホロウイングを使うことでEDRでの検出を困難にします。
2段目と同じアンチデバッグ機構を再実行して安全を確認した後、続きを実行します。
暗号化されていたURLを復号化し次のバイナリを取り込みます。
取り込んだバイナリは暗号化されていますのでこれも復号化します。
復号化されて出てくるのは侵入先で使用するマルウェアとなっています。
実に巧妙です。
しかもどんどんと新しい手法を取り込んで変更されていきます。
ある時点のGuLoaderはなんらかのセキュリティソリューションで検出して対応できるかもしれません。
しかし継続的に変化するGuLoaderに果たしてどこまでそのセキュリティソリューションで対応できるでしょうか。
セキュリティソリューションにはいろいろなタイプがあります。
そしてそれらはそれぞれ異なる切り口の対抗機構を提供します。
いろいろなタイプのセキュリティソリューションを組み合わせ、変化していく脅威に対応できる状態を実現することが必要となってきているということかもしれません。
参考記事(外部リンク):Malware Analysis: GuLoader Dissection Reveals New
Anti-Analysis Techniques and Code Injection Redundancy
www.crowdstrike.com/blog/guloader-dissection-reveals-new-anti-analysis-techniques-and-code-injection-redundancy/
この記事をシェア |
---|