Regshot

この記事をシェア

概要

Regshotはレジストリやファイルのスナップショットを取得することができるツールです。スナップショットの保存・比較機能をデフォルトで有しており、プログラムの実行時にどのような変更が加えられたのかを手軽に確認することができます。

Regshotのスナップショットには、以下の要素が記録されます。

  • レジストリキー(削除・追加)
  • レジストリの値(削除・追加・変更)
  • フォルダー(削除・追加・属性変更)
  • ファイル(削除・追加・属性変更)

RegshotはGNU General Public Licenseの条件のもとで配布されたフリーソフトウェアであり、sourceforge.netなどの配布サイトから無償でダウンロードすることが可能です。

マルウェア解析における利用方法

マルウェアの活動の中で、Windowsシステムの設定変更やファイルの追加・書き換えが行われることはよくあります。Regshotを用いてマルウェア実行前後のスナップショットを比較し、マルウェアがどのような操作を加えたか把握することは、マルウェア解析の第一歩になります。

それでは、Regshotを用いたマルウェア解析の具体的な手順を紹介します。

  • Regshotの起動
  • 1回目のスナップショット取得
  • マルウェアの実行
  • 2回目のスナップショット取得
  • スナップショットの比較

詳細な手順

1.Regshotの起動
Regshotを起動すると、以下のような画面が表示されます。

Regshotのメニュー(右下のプルダウンから日本語化済み)

Regshotのメニュー(右下のプルダウンから日本語化済み)

スナップショットの取得前に、ログの保存形式、監視するフォルダー、保存先の3項目を設定します。監視するフォルダーに何も指定しなかった場合、レジストリの変更は記憶されますが、ファイルの操作は記憶されません。ファイルを監視する際は、忘れず設定しておきましょう。
今回は監視するフォルダーとしてDesktopを指定しています。

2.1回目のスナップショット取得
マルウェアの実行前に1回目のスナップショットを取得します。「1回目」ボタンを押してから、「実行後セーブする」を選びます。

Regshotのメニュー(1回目のボタンクリック後)

Regshotのメニュー(1回目のボタンクリック後)

「実行!」を選んだ場合スナップショットを比較したもののみが出力されますが、「実行後セーブする」を選べばhiv形式で個々のスナップショットを出力することが可能です。また、「ロード」から既存のスナップショットを比較対象として使用することもできます。
マルウェアには解析環境を検知する仕組みが組み込まれていることがあるため、スナップショット取得後にRegshotを一度終了させることで、より実際の環境に近い挙動を確認することができます。

3.マルウェアの実行
今回は疑似検体として、Desktopにwarning.txtを作成するプログラムを用意しました。

疑似検体のソースコード

疑似検体のソースコード

Regshotを終了させた後に、マルウェアを実行します。実行後は、他の操作をなるべく行わないようにして、Regshotを再起動します。

4.2回目のスナップショット取得
Regshotを再度起動し、「1回目」ボタンから「ロード」を選び、2.で作成したスナップショットを読み込みます。すると、「2回目」ボタンがクリックできるようになるため、「実行!」を選んでスナップショットを取得します。

5.スナップショットの比較
「比較」ボタンを押すことで、1回目のスナップショットと2回目のスナップショットの比較結果が出力されます。この比較結果の保存先や保存形式は、1.で設定したものになります。

Regshotの比較結果(一部)

Regshotの比較結果(一部)

追加されたファイルの欄に、C:\Users\User\Desktop\warning.txtが表示されています。このことから、warning.txtはマルウェアによって追加された可能性が高いと判断できます。

この記事をシェア
サイバーセキュリティ
情報局の最新情報を
チェック!