ファイルレスマルウェアとは何か?そして、それを防ぐにはどうすればよいのか? - TechRepublic

ファイルレスマルウェアとは何か?そして、それを防ぐにはどうすればよいのか? - TechRepublic

フィッシングメールに騙されて、悪意のあるマクロや悪意のあるサイトへのリンクを含む添付ファイルを開いたり、感染したアプリケーションをダウンロードしたりすると、ウイルス対策ソフトウェアは、そのファイルをディスクに保存したり開いたりする際にスキャンできます。また、ファイルアクティビティの痕跡も残り、被害状況を確認する際に確認できます。こうした対策を回避するため、攻撃者は「ファイルレス」マルウェアを使い始めています。ファイルレスマルウェアとは、メモリ内で直接攻撃を実行するマルウェアや、ウイルス対策ソフトウェアがスキャンできるファイルを保存せずに悪意のあるコードを実行するために既にインストールされているシステムツールを使用するマルウェアです。(:ファイルレスマルウェアに関するこの記事は、無料のPDFファイルとしてダウンロードできます。)

これは、DNSクエリのテキストレコードを介してマルウェアペイロードをダウンロードするSharpshooterのように、ユーザーを騙してメモリから直接.NETバイナリを実行するスクリプトを実行させることを意味する可能性があります。あるいは、EternalBlue脆弱性を悪用し、カーネルメモリにDoublePulsarバックドアをインストールする悪意のあるネットワークパケットを送信することを意味するかもしれません。また、悪意のあるペイロードをファイル拡張子のハンドラーとしてレジストリに保存し、その拡張子を持つ通常のファイルを開いたときに実行されるようにすることを意味する可能性もあります。例えば、Kovterはこれを利用してMimikatzをダウンロードし、資格情報を盗みました。ペイロードを文字列にエンコードされたDLLに格納し、PowerShellコマンドで実行し、WMIリポジトリに悪意のあるPowerShellコメントをインストールして、定期的に実行されるように設定しました。悪意のあるコードは、デバイスのファームウェアやBadUSBなどの周辺機器に存在する可能性もあります。そうすることで、ペイロードはメモリ内で実行され、再起動、Windowsの再インストール、ディスクの再フォーマットを行っても、繰り返し実行される可能性があります。

参照:特別レポート:サイバー戦争とサイバーセキュリティの未来(無料PDF)(TechRepublic)

ファイルレス技術は非常に高度になる場合があり、従来のウイルス対策ソフトウェアでは検出が困難です。しかし、高度なマルウェア攻撃のすべてがファイルレスというわけではなく、「ファイルレス」という言葉を乱用しても組織の防御には役立たないと、タンメイ・ガナチャリヤ氏はTechRepublicに語りました。ガナチャリヤ氏はMicrosoft Defenderの脅威研究チームを率いており、新たな脅威を分析し、それらを検知するためのモデルを構築しています。「ファイルレスという言葉はあまりにも使い古されており、真のファイルレス脅威を指す言葉から、今では少しでも高度なものなら何でもファイルレスと呼びたがるようになり、ややバズワード化しています」と彼は言います。

この用語の神秘性を解き明かすため、脅威調査チームはファイルレス攻撃を、PCへの侵入方法とホスト場所に基づいて分類し始めました。ファイルレス攻撃に利用される「エントリポイント」とマルウェアホストの組み合わせは10種類以上あります。中には、非常に高度なものもあり、標的型攻撃ではほとんど利用されません。一方、コモディティ化が進み、システム上で仮想通貨マイニングを実行しようとするような一般的な攻撃で頻繁に利用されるものもあります。しかし、これらは大きく3つのグループに分けられます。

「タイプ1は真のファイルレス攻撃です。攻撃はネットワーク上またはデバイスから実行され、ペイロードはメモリ内で処理され、ディスクへのアクセスはほとんど発生しません」とガナチャリヤ氏は述べています。EternalBlueとBadUSBは真のファイルレス攻撃であり、しかも稀なケースです。「これらはまさに最も高度な攻撃ですが、ファイルレス攻撃と呼ばれる攻撃のほとんどはこのグループには属しません。この種の攻撃とエクスプロイトはますます困難になっているため、コモディティ化は困難です。」

タイプ2はもう少し一般的だとガナチャリヤ氏は言います。タイプ2の攻撃は確かにファイルを使用しますが、直接ファイルを使用するわけではないため、やはりファイルレス攻撃に分類されます。「JavaScriptやPowerShellなど、攻撃を開始するためにスクリプトが使用されるケースを考えてみてください。MBRを標的とし、マシンを完全に使い物にならなくして起動できないようにしようとするものもいくつか確認されています。しかし、ほとんどの場合、レジストリやWMI、そしてPowerShellなどの様々なメカニズムを利用して、システムに既に存在するツールを活用し、セットアップアクティビティをシーケンス処理します。」

これは「環境寄生型」と呼ばれ、標準的なウイルス対策ツールでは検出が困難です。正規のツールは警告を出さない上に、マルウェアが保存するファイルは難読化されており、ジャンクデータで満ちており、簡単に改変して新たな攻撃を仕掛けられるからです。レジストリやWMIリポジトリといったWindowsの主要部分を削除することはできないため、ファイルを削除してもクリーンアップできません。

最も一般的なファイルレス攻撃は実際にはファイルを使用しますが、それらのファイルから直接攻撃を実行するわけではありません。「タイプ3は、マクロを含むドキュメントファイル、Javaファイル、Flashファイル、さらには特定のファイルをドロップするEXEファイルなど、明らかにファイルから始まりますが、その後の永続化はファイルレスです」とガナチャリヤ氏は述べています。「ペイロードがドロップされると、ペイロードはメモリ内に留まるか、レジストリに留まってそこから実行されることで永続化を実現します。」

タイプ3の攻撃の多くはメール経由で発生しますが、ウイルス対策ソフトでファイルをスキャンしても、添付ファイルは明らかに悪意のあるものとして検出されません。「通常、EXEファイルを添付するのではなく、マクロを含む文書を添付します。この文書は別のファイルにリンクしており、そのファイルがペイロードをダウンロードします」とガナチャリヤ氏は説明します。VBAコードにはウイルス対策ソフトがスキャンできるバイナリはありませんが、攻撃をダウンロードして実行するPowerShellスクリプトを読み込むことができます。

ファイルレス攻撃の検出方法

ファイルレス攻撃を検知するためにファイルをスキャンすることはできないため、メモリをスキャンして悪意のある動作を検知する必要があります。「メモリに注入されたモジュールをスキャンする必要があります。ディスクには一切触れないからです。また、ペイロードであれシェルコードであれ、メモリにロードされる内容を確認できる必要があります」とガナチャリヤ氏は言います。「確認し、停止させ、関連するプロセスを強制終了させる必要があります。」これをブートセクターまで拡張することで、ブートセクター攻撃から保護することができます。

動作監視は、悪意のある行為を行うマルウェアを検出します。これには、3種類のファイルレスマルウェアすべてが含まれます。ガナチャリヤ氏:「動作監視は実にあらゆるマルウェアに適用されます。なぜなら、ファイルレスであるものはすべて、エンドツーエンドでファイルレスであるか、ファイルレスの永続性を実現しているかに関わらず、悪意のある活動を示唆する動作を示すからです。ランサムウェアであれば、ファイルを暗号化する必要がありますが、そうでなければ真のランサムウェアではありません。情報窃取型マルウェアであれば、ファイルや情報を盗む必要があります。つまり、常に検出すべき動作が存在するのです。」

スクリプトに依存するファイルレス攻撃を検出するには、Windows 10 マルウェア対策スキャン インターフェイス (AMSI) を使用して実行時にスクリプトの動作をチェックする Microsoft Defender などの製品を探します。

「スクリプト攻撃、PowerShell攻撃、そしてVBScriptベースの攻撃が増加するにつれ、セキュリティ製品にとって、JavaScriptのようなものを難読化する何百万、何十億、何兆もの方法に対処することが極めて困難になりました」とガナチャリヤ氏は指摘する。「JavaScriptを難読化し、全く似ていない同じ脅威の亜種を作るのは非常に簡単です。しかし、JavaScriptを実行するには、スクリプトエンジンがコードを難読化し、実行する命令列を作成する必要があります。」

どのウイルス対策ソフトウェアでも AMSI に接続してそのシーケンスを確認できます。2018 年 9 月時点では、Office マクロも含まれます。

「JavaScript ファイル、PowerShell スクリプト ファイル、または Office マクロ コードを扱い、難読化されたコンテンツを推論しようとする代わりに、スクリプト エンジンがそのコンテンツの実行を開始すると、インストールされたウイルス対策ソフトウェアと連携して、一連のイベントが悪意のある動作を表しているかどうかをインラインで確認できるようになります」と Ganacharya 氏は説明します。「これにより、JavaScript マルウェア、PowerShell マルウェア、あらゆるスクリプトベースのマルウェアに対する検出の耐久性が極めて高まりました。JavaScript が難読化されるさまざまな方法に対処するという、いたちごっこから解放されたからです。エンドユーザーのマシンを遅くする、あらゆるスクリプト言語用の強力なパーサーを構築する必要もありませんでした。いずれにせよ実行する必要があるマシン上のスクリプト エンジンを活用するだけで済みました。そして、何が起こっているかを把握し、適切なタイミングで停止することで、マルウェアそのものが起動されるのを防ぐことができました。」

参照:ダークウェブ:ビジネスプロフェッショナル向けガイド(無料PDF)(TechRepublic)

Microsoft Defenderは既にAMSIを通じて多くのファイルレスマルウェアからユーザーを保護してきました。SharpshooterのJavaScriptは非常に難読化されているため、コードを読んでも何をするのかは分かりません。しかし、スクリプトが実行を開始すると、関数を呼び出し、アプリケーションを起動するパラメータを渡していることは明らかです。

Defender は、この夏、Asteroth 情報窃盗プログラムを使用した、より最近の非常に高度な攻撃も阻止しました。この攻撃は南米をターゲットとし、図で示すことさえ難しい手順で、Windows の既存のツールのみを使用して認証情報、キー操作、その他の機密情報を盗もうとしました。

Ganacharya氏の概要は次のとおりです。「このマルウェアは、Windowsの一部として出荷された既存のコンポーネントを活用してWindowsを管理し、エンドユーザーのマシンに大量の新しいコンテンツをインストールすることなく、それらを順番に使用しようとします。つまり、リンクされたファイルを含むZIPファイルが添付されたメールです。このZIPファイルはBATファイルを取得し、WMICを実行します。そして、Excelファイルをダウンロードします。Excelファイルには高度に難読化されたJavaScriptが含まれています。そして、このExcelファイルが再びWMICを実行し、さらに別のExcelファイルをダウンロードします。そして、Bitsadminを使用してペイロードをダウンロードし、Certutilを使用してそのペイロードをデコードします。このペイロードは最終的にDLLとなり、それを読み込み、挿入することで、最終的に悪意のある動作を実行しようとします。」

Defenderは、この攻撃で使用されたすべての手法に対する動作検出機能を備えています。「実際には、これらの攻撃を最初の段階でブロックしましたが、最初の段階だけでなくすべての段階を検出できることを示すために、アンチウイルスソフトを監査モードにして実行したところ、すべての段階で動作検出が行われたことがわかりました」とガナチャリヤ氏は述べています。「最終的に、この攻撃の標的となったWindows Defender搭載マシンすべてを、最初の感染者から順に保護することができました。」

Defenderなどのエンドポイント検出・対応ツールはファイルレス攻撃を阻止しており、Microsoft Defender Advanced Threat Protectionで攻撃がどのように検知されるかを確認できます。また、攻撃対象領域縮小ルールを設定して、使用していない機能を無効にすることも重要です。例えば、ランサムウェアの多くが悪用するOfficeアプリによる他のプロセスへのコード挿入などです。

「Officeアプリが子プロセスを作成するのは、一般的な動作ではありません。ごく一部の企業では、非常に複雑なマクロコードを書く必要があり、そのために子プロセスの作成が必要なのですが、そういった企業はやめるべきです!」とガナチャリヤ氏は警告する。「しかし、ほとんどの組織ではこの機能を有効にする必要はありません。特に、営業、人事、マーケティングといったエンジニアがあまりいない部門ではなおさらです。」

Lockyランサムウェアは、PowerShellを実行する隠し関数を含むOfficeファイルを添付したメールメッセージを使用してシステムに感染しました。「Officeアプリによる子プロセスの作成をブロックする攻撃面の縮小ルールを有効にしていれば、ソリューションが後半の3つの段階で発生するすべての事象に対処できる必要はありません。攻撃を非常に早い段階で阻止し、ネットワークへの被害を最小限に抑えることができます」とガナチャリヤ氏は述べています。

「攻撃対象領域縮小ルールを有効にするだけで、過去 1 年ほどで特定されたゼロデイ攻撃のほとんどを阻止できます。」

こちらもご覧ください

  • ビジネスにおける破壊的なマルウェア攻撃を防ぐ方法:7つのヒント(TechRepublic)
  • サイバーセキュリティのプロになる方法:チートシート(TechRepublic)
  • 注意すべき危険なアプリの脆弱性10選(TechRepublic ダウンロード)
  • Windows 10 のセキュリティ: ビジネスリーダー向けガイド (TechRepublic Premium)
  • オンラインセキュリティ101:ハッカーやスパイからプライバシーを守るためのヒント(ZDNet)
  • 2019年のベストパスワードマネージャー(CNET)
  • サイバーセキュリティとサイバー戦争:さらに必読の記事(FlipboardのTechRepublic)
Tagged: