こころ

この前、マルウェアの勉強をしたけど、調べてる途中で「ファイルレスマルウェア」って言葉を初めて知ったんだ。マルウェアとは何が違うんだろう?

と思って、ファイルレスマルウェアについて調べることにしてみたよ。

ファイルレスマルウェアとは

ファイルレスマルウェアとは、実行ファイルがディスク上に保存されず、メモリ上で実行されるマルウェアです。

従来のマルウェアは、メールの添付ファイルを開いたり、悪意のあるWebサイトにアクセスすることで感染します。マルウェアのほとんどが実行(exe)ファイルと呼ばれるもので、プログラムそのものとなっており、ディスクに保存され、それが実行されることによって不正行為を働きます。セキュリティ対策ソフトは、メールに添付されるファイルやWebサイトからダウンロードされるファイルをチェックし、実行ファイルは特に疑わしいものとして検査します。

しかし、近年実行ファイルを使用しない(ファイルレス)タイプのマルウェアが増加してきました。最終的な実行ファイルはディスク上に作成されず、PowerShell等でコードが実行(メモリ上にロード)されます。ディスク上にファイルを作らないことから「ファイルレス・マルウェア」と呼ばれています。実行ファイルではないため、シグネチャ(メソッド名/パラメータの型/数/順序/戻り値の型等で構成された、メソッドを識別するための情報)がなく、従来型のセキュリティ対策ソフトではほぼ検知が出来ません。

こころ
セキュリティ対策ソフトでほぼ検知が出来ない…
だったらどうやって対策すれば…

ファイルレスマルウェアの攻撃方法

1攻撃方法

ファイルレスマルウェア攻撃では、デフォルトのWindowsツール、特に「PowerShell」と「Windows Management Instrumentation(WMI)」を使用して、他のマシンに展開するなどの悪意のある活動を行います。正規のプログラムが悪用されている為、ファイルレスマルウェアの攻撃は、ほとんどのセキュリティプログラムや熟練のセキュリティアナリストによっても検出されにくくなっています。

2PowerShellとWMIが悪用される理由

PowerShellとWMIが攻撃者の標的対象にされているのは理由は主に以下が挙げられます。

  • すべてのWindowsマシンに標準インストールされている
  • コマンドを実行できる(例えば、PowerShellを使って複数のマシン間のタスクの自動化が可能)
  • 多くのIT担当者の日常業務に組み込まれているため、従業員の使用を禁止することがほぼ不可能とされている
  • PowerShellとWMIは正規のプログラムなので、実行するコマンドも正当なものとみなされてしまう
3感染経路
「ファイルレス」マルウェアと言われていますが、感染自体はファイルを通して行われます。PowerShellなどを悪用するマルウェアはスパムメール等で撒かれます。
4攻撃方法の一例

スパムメールに、PowerShell・WMI等の不正コードが含まれており、攻撃指示を出します。不正コードは、起動されるとメモリ上にロードされ、その際にPowerShell・WMIを使って起動。 終了条件のないプログラムをバックグラウンドで起動すると、意図的にプログラムを停止しない限り、OSシャットダウンまで動作し続けてしまいます。

ファイルレスマルウェアが従来型のソリューションで検知できない理由

1実行ファイルが無い

ファイルレスマルウェアは実行ファイルがないため、シグネチャベースでのウイルス対策ソフトでは検知ができません。現在多く確認されている攻撃手法は、「.lnk」等のWindows ショートカットファイルの拡張子を持つファイルを起点にし、内部に仕込ませたスクリプトを実行させてプロセスを呼び出し、そこにマルウェアを生成。こうしたファイルやプロセスは、シグネチャベースのセキュリティ対策ソフトでは検査対象としていませんでした。

2正規プロセスとの区別が難しい
PowerShellとWMIはWindowsの正規のプログラムなので、実行する悪意あるコマンドも正当なものとみなされてしまいます。仮に大量にコマンドが実行されていたとしても、そもそもPoweShellの使用頻度が高いこともあり、実行の量だけを見て疑わしいかどうか判断することが非常に困難です。
3コードの難読化
セキュリティ対策ソフトによる検出を回避するため、攻撃者は常にコードの難読化を行います。

ファイルレスマルウェア対策

1メールの添付ファイルをうかつに開かない
前述の感染経路通り、「ファイルレスマルウェア」といってもファイルを媒体として感染します。ファイルレスマルウェア入りのファイルがスパムメールやフィッシングメールの形で届く場合もありますので、添付ファイルを開くときには厳重に注意しましょう。
2Microsoft Officeのマクロ攻撃
Microsoft Officeのマクロを使った攻撃は、マクロをオフ(無効)にしておくことで防ぐことができます。
3アプリケーションやOSの脆弱性を無くす
アプリケーションやOSの脆弱性をなくすため、アップデートを必ず実施すること。
4出口対策
不正操作されてしまった場合に情報を持ち出されないように、外部との通信を制限しておきましょう。
5PowerShellの無効化
PowerShellの場合、無効化するという手段もありますが、正規のプロセスで必要とする部署もある為、関係部署と連携しながら決めておきましょう。

こころ
脆弱性の危険を突かれないよう、サポート切れのOSのアップグレードもとても大事だね。セキュリティ対策ソフトでほぼ検知が出来ないといっても、基本的なマルウェア対策をしていれば、ファイルレスマルウェアも防ぐことが出来る。着実なマルウェア対策を実行していこう!
おすすめの記事