本稿は「2021年 年末蔵出し企画」として、ScanNetSecurity編集部が過去取材した多数の素材の中から、まだ未掲載となっていた選りすぐりの記事をピックアップしてお届けします。
マルウェアの中には、攻撃検知を回避するため、実行中のプロセスメモリを悪用してコードを実行するものがある。これがやっかいなのは、メモリは、そのアプリケーションやプロセスが終了すると、その領域は開放され再利用されて痕跡が残らないことだ。
これに対抗するため、実行中または特定のプロセスイメージ(メモリのスナップショット)や異常・強制終了時のコアダンプを解析する手法がある。プロセスメモリを解析してマルウェアや悪意のある動作を検知するソリューションやフォレンジック手法が存在する。
プロセスメモリに悪意を忍ばせるしくみはどうなっているのか。また、それはどうやって検知できるのか。対フォレンジックマルウェアとの攻防について、フリードリヒ アレクサンドラ大学( FAU )の研究グループによるレポートを元に紹介する。レポートは、Black Hat USA 2020 で発表されたものだ。
●仮想メモリ管理の概要
現在の OS はマルチタスク(プロセス)が原則である。膨大なメモリ空間を持っているとはいえ、多数のプロセスを並行して実行させるため、ページングという仮想メモリ技術によって物理メモリを管理している。各プロセスは、専用の目盛り空間(一般にサイズは固定)を持ち、OS のプロセススケジューリング機能によって、実行時に実メモリに配置され CPU を利用する。このとき配置される実メモリ空間がページと呼ばれる領域で管理される。
マルウェアの中には、攻撃検知を回避するため、実行中のプロセスメモリを悪用してコードを実行するものがある。これがやっかいなのは、メモリは、そのアプリケーションやプロセスが終了すると、その領域は開放され再利用されて痕跡が残らないことだ。
これに対抗するため、実行中または特定のプロセスイメージ(メモリのスナップショット)や異常・強制終了時のコアダンプを解析する手法がある。プロセスメモリを解析してマルウェアや悪意のある動作を検知するソリューションやフォレンジック手法が存在する。
プロセスメモリに悪意を忍ばせるしくみはどうなっているのか。また、それはどうやって検知できるのか。対フォレンジックマルウェアとの攻防について、フリードリヒ アレクサンドラ大学( FAU )の研究グループによるレポートを元に紹介する。レポートは、Black Hat USA 2020 で発表されたものだ。
●仮想メモリ管理の概要
現在の OS はマルチタスク(プロセス)が原則である。膨大なメモリ空間を持っているとはいえ、多数のプロセスを並行して実行させるため、ページングという仮想メモリ技術によって物理メモリを管理している。各プロセスは、専用の目盛り空間(一般にサイズは固定)を持ち、OS のプロセススケジューリング機能によって、実行時に実メモリに配置され CPU を利用する。このとき配置される実メモリ空間がページと呼ばれる領域で管理される。