プロセス・ホローイング(Process Hollowing)は、Windows環境においてマルウェアがセキュリティソフトに検知されないよう、正規のプロセスの内部に悪意のあるコードを注入して実行する手法です。この技術では、まず正規のプロセスを作成し、その内部に悪意のあるコードを挿入して置き換えることで、マルウェアがあたかも正規のプロセスとして実行されているように見せかけます。
プロセス・ホローイングは、アンチウイルスソフトや監視システムを回避するための「インジェクション技術」の一つで、マルウェアがシステム内で正規プロセスに偽装し、悪意のある活動を行うために用いられます。
プロセス・ホローイングの仕組み
プロセス・ホローイングでは、以下の手順で正規プロセスに見せかけたマルウェアを実行します。
- 正規プロセスの作成 マルウェアは、まずWindowsのシステムプロセスや正規のアプリケーション(たとえば「explorer.exe」など)を生成します。この段階では、プロセス自体はまだ正規のものです。
- プロセスの中断とメモリ領域の解放 作成された正規のプロセスを一時的に中断させ、そのメモリ領域を解放します。これにより、正規のコードが消去され、空のメモリ領域が用意されます。
- 悪意のあるコードの挿入 解放されたメモリ領域にマルウェアのコードを挿入します。プロセスのメモリ領域には悪意のあるコードが存在することになりますが、プロセス名や実行ファイルは正規のものとして見せかけられたままです。
- プロセスの再開とマルウェアの実行 挿入が完了したプロセスを再開させることで、悪意のあるコードが実行されます。このプロセスは、セキュリティソフトから正規プロセスとして認識されるため、マルウェアが検出されにくくなります。
こうして、マルウェアがシステム内で正規のプロセスとして動作し、外部から見れば「explorer.exe」や「svchost.exe」など、通常のWindowsプロセスとして振る舞うため、セキュリティソフトや監視ツールは容易に検出できません。
プロセス・ホローイングの目的とリスク
主な目的
- 検知回避:プロセス・ホローイングは、正規のプロセスに偽装することで、アンチウイルスやセキュリティ監視ソフトによる検知を回避し、システム上で悪意のあるコードを実行します。
- 持続的な攻撃:システムの再起動やセキュリティソフトのチェックを回避しながら、システムに持続的に感染して、長期間スパイ活動や不正行為を行います。
- 権限の悪用:標的の正規プロセスが高権限で動作する場合、マルウェアもその権限を利用し、システムの深部にアクセスしたり、他のプロセスを侵害したりすることが可能です。
主なリスク
- 情報漏洩:正規プロセスに偽装したマルウェアがデータを収集し、外部に流出させることで、個人情報や企業情報が漏洩するリスクがあります。
- システムの乗っ取り:プロセス・ホローイングを用いて、システム全体の管理権限を取得し、攻撃者がシステムを遠隔操作するリスクがあります。
- 攻撃の拡散:一度プロセス・ホローイングに成功すると、同一ネットワーク内の他のデバイスにマルウェアを拡散させ、さらなる感染拡大が生じることがあります。
- システムパフォーマンスの低下:悪意のあるプロセスがシステムリソースを消費することで、システムのパフォーマンスが低下し、正常な動作に支障が出ることもあります。
プロセス・ホローイングへの対策
プロセス・ホローイングは、従来のファイルベースの検知手法をすり抜けるため、エンドポイントセキュリティとメモリ内の動作監視が重要です。
1. EDR(Endpoint Detection and Response)の導入
EDRは、エンドポイントでのプロセス挙動をリアルタイムで監視し、異常なプロセスの生成や不審なメモリ操作を検出するためのツールです。プロセス・ホローイングによる不正なプロセスの作成も早期に発見可能です。
2. メモリスキャン機能を備えたアンチウイルスソフトの使用
メモリ内の不審なコードを検出するメモリスキャン機能が備わったアンチウイルスソフトを使用することで、プロセス内に挿入された悪意のあるコードを検出できる可能性が高まります。
3. 権限管理とアクセス制御の強化
システム内で不要な高権限のプロセスが生成されないよう、権限管理を徹底し、悪意のあるコードがアクセスしにくい環境を構築します。
4. 定期的なOSやソフトウェアの更新
Windows OSやアプリケーションの脆弱性がプロセス・ホローイングに悪用されることが多いため、定期的なセキュリティアップデートを適用し、脆弱性を修正することが効果的です。
5. 挙動監視ツールの導入
不正なプロセス生成や異常なメモリ操作などの挙動を常時監視するツールを導入し、正規プロセスに偽装したマルウェアの活動を早期に発見します。
まとめ
プロセス・ホローイングは、Windowsの正規プロセスを利用してマルウェアを隠蔽する高度な検知回避技術です。プロセス内に悪意のあるコードを挿入し、正規のプロセスとして偽装することで、セキュリティソフトから検知されることなく悪意のある活動を行うことができます。EDRの導入やメモリスキャンの活用、権限管理の強化といった対策を通じて、プロセス・ホローイングによるリスクを最小限に抑え、安全なシステム環境を維持することが重要です。