

シンプルなランサムウェア対策
ランサムウェアが vssadmin を使ってすべてのシャドウコピーを削除するのをよく見かけます。その要求をインターセプトして、呼び出したプロセスを強制終了できたらどうでしょうか?シンプルなワクチンを作ってみましょう。

私たちは、コンパイル済みの raccine.exe を vssadmin.exe(および wmic.exe)用のデバッガとして登録します。Raccine は、まず親プロセスの PID をすべて収集し、その後すべての親プロセスを強制終了しようとするバイナリです。
長所:
vssadmin.exe や wmic.exe)を置き換える必要がありません。置き換えると整合性の問題が生じたり、パッチ適用のたびに Raccine 化(raccination)が壊れたりする可能性があります短所 / 盲点:
vssadmin.exe delete shadows(または他のブラックリスト対象の組み合わせ)の正当な使用ができなくなりますvssadmin.exe delete shadows を呼び出そうとしたプロセスも強制終了してしまいますvssadmin.exe を呼び出したプロセスツリー内に存在しない方法(例: schtasks 経由)は検知できませんvssadmin.exe(および wmic.exe)の呼び出しがインターセプトされ、デバッガとして raccine.exe に渡されます(vssadmin.exe delete shadows は raccine.exe vssadmin.exe delete shadows になります)悪意のある組み合わせ:
delete と shadows(vssadmin、diskshadow)resize と shadowstorage(vssadmin)delete と shadowstorage(vssadmin)delete と shadowcopy(wmic)delete と catalog と -quiet(wbadmin)win32_shadowcopy またはエンコードされたコマンドのリストの要素(powershell)recoveryenabled(bcedit)ignoreallfailures(bcedit)^ 古いリスト: 対応する YARA ルール を確認してください
Powershell のエンコードされたコマンドのリスト: JAB、SQBFAF、SQBuAH、SUVYI、cwBhA、aWV4I、aQBlAHgA など多数
Raccine なしの Emotet - リンク

Raccine ありの Emotet - リンク(Raccine のインストールに関連するプロセス活動は無視してください)

感染は初期段階で阻止されます。
使用は自己責任で!
Raccine 化されたマシンでは、アンインストールパッチ raccine-reg-patch-uninstall.reg を適用するまで、ブラックリストに登録されたコマンドを使用するコマンドを実行できなくなります。これにより、動作中にその特定のコマンドを実行するさまざまなバックアップソリューションが壊れる可能性があります。その要求をブロックするだけでなく、バックアップソリューションとそれを呼び出したプロセスを含むツリー内のすべてのプロセスを強制終了します。
すべてのプロセス実行を記録する堅牢なセキュリティ監視を導入している場合は、ログを確認して、vssadmin.exe delete shadows、vssadmin.exe resize shadowstorage ...、またはその他のブロック対象のコマンドラインが正当な目的で頻繁にあるいは散発的に使用されているかどうかを確認してください。その場合は Raccine の使用を控えるべきです。
delete と shadows を含む vssadmin.exe の実行のみをブロックし、それ以外の場合はすべてのパラメータを元のパラメータで vssadmin を呼び出す新しいプロセスに渡すバージョンexplorer.exe を削除delete shadowcopy を呼び出す wmic メソッドをサポート、ホワイトリストに登録されたプロセス起動時の出力なし(wmic の出力処理に関する問題を回避)delete shadowstorage の追加チェック、@_hillu によるコードレビュー、アプリアイコンbcdedit.exe /set {default} bootstatuspolicy ignoreallfailures と bcdedit.exe /set {default} recoveryenabled no の追加チェックpowershell.exe と win32_shadowcopy、またはエンコードされたコマンドのリストの追加チェックC:\ProgramData\Raccine_log.txt を作成diskshadow.exe delete shadows コマンドを含むVisual C++ 再頒布可能パッケージと .NET Framework はどちらも、install-raccine.bat を実行すると自動的にインストールされます。
Raccine.zip をダウンロードraccine-installer.bat を実行
バッチインストーラには「アンインストール」オプションが含まれています。
管理者として次の操作を行います:
raccine-reg-patch-uninstall.reg を実行%ProgramFiles%\Raccine フォルダと %ProgramData%\Raccine フォルダを削除reg delete HKCU\Software\Raccine /F を実行taskkill /F /IM RaccineSettings.exe を実行reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /V "Raccine Tray" /F を実行schtasks /DELETE /TN "Raccine Rules Updater" /F を実行アップグレードにはアンインストールと再インストールをお勧めします。アンインストールすると、構成を含むすべてのレジストリキーが削除されます。
Raccine はバージョン 1.2 以降、統合されたシグネチャアップデータを備えています。このプログラム RaccineRulesSync.exe は、予約タスクによって 1 日 1 回実行されるように構成されています。トレイアイコンメニューのオプションを使用して、シグネチャ更新を手動で実行することもできます。
バージョン 1.0 以降、Raccine はプロセスのコマンドラインや親プロセスが悪意があるかどうかを判断するために YARA ルールも使用します。Raccine は 2 つの異なる目的のために 2 セットのルールを使用します。
./yara - すべてのパラメータを含むコマンドラインに適用されるルール。例: WMIC.exe delete justatest./yara/in-memory - インターセプトされたプロセスの親プロセスのプロセスメモリに適用されるルール。例: インターセプトされたプロセス vssadmin.exe を実行している ransomware.exeバージョン 1.1 以降、プロセスとその親の属性を考慮した、より複雑で賢い YARA ルールを可能にするために、外部変数のリストを YARA マッチングプロセスに渡しています。
| Variable | Description | Example Value |
|---|---|---|
| FromRaccine | true | |
| Name | イメージファイル名 | WMIC.exe |
| ExecutablePath | バイナリへの完全なパス | C:\Windows\System32\wbem\WMIC.exe |
| CommandLine | パラメータを含む完全なコマンドライン | WMIC.exe delete justatest |
| Priority | プロセス優先度 | 32 |
| ParentName | 親イメージファイル名 | cmd.exe |
| ParentExecutablePath | 親実行ファイルへの完全なパス | C:\Windows\System32\cmd.exe |
| ParentCommandLine | パラメータを含む親の完全なコマンドライン | C:\WINDOWS\system32\cmd.exe |
| ParentPriority | 親プロセスの優先度 | 32 |
マッチングプロセスはコマンドラインでは次のようになります: