
例:
注意: Strykerは、cpuz141.sysとprocexp152.sysの両方がプログラムと同じディレクトリにあることを前提としています。
自己責任で使用してください。一部の怠惰なAVはこのツールをハックツール/マルウェアとして検出する可能性があります。
CPU-Z (https://www.cpuid.com/softwares/cpu-z.html) の内部ドライバ(CVE-2017-15303に従いバージョン1.41)を使用して、物理メモリの読み書きやCPU制御レジスタの読み取りを行います。
コマンドに応じて、StrykerはDSEFix/TDLとして動作するか、カーネルモードのプロセスオブジェクト (EPROCESS) を変更します。
-loadモードでは、StrykerはSysInternals Process Explorerソフトウェアのサードパーティ署名済みドライバ(バージョン1.52)を使用して、そのIRP_MJ_DEVICE_CONTROL/IRP_MJ_CREATE/IRP_MJ_CLOSEハンドラ内に小さなローダーシェルコードを配置します。これは、Process Explorerのディスパッチハンドラが配置されている物理メモリを上書きし、ドライバのIRP_MJ_CREATE(CreateFile呼び出し)を呼び出してトリガーすることで行われます。トリガーされたシェルコードは、入力ドライバをコードバッファとしてカーネルモードにマッピングして実行し、現在のIRQLはPASSIVE_LEVELになります。
また、わずかな変更で、シェルコードはカーネルモードで小さなコードを単純に実行するために使用できます(このツールでは実装されていません)。
Strykerには完全なソースコードが付属しています。 ソースからビルドするには、Microsoft Visual Studio 2015 U1以降が必要です。ドライバのビルドには、Microsoft Windows Driver Kit 8.1以降が必要です。
Stryker自体の重要なバグ修正以外のサポートはありません。動作の保証は一切ありません。 このプログラムを使用すると、コンピュータがBSODになる可能性があります。コンパイル済みバイナリとソースコードは、役立つことを願って現状のまま提供されますが、いかなる種類の保証もありません。
本ソフトウェアの使用はすべて自己責任で行ってください。
Q: Process Explorerドライバ以外に、シェルコードを実行するために使用できるものはありますか?
A: はい、ただし、シェルコードを格納および実行できるかどうかを慎重に確認する必要があります。
Q: CPU-Zの最新バージョンはどうですか?物理メモリやCPU制御レジスタの読み書きに使用できますか?
A: CPU-ZドライバはCVE-2017-15303に対処するために再設計され、一部の機能は利用できなくなりました。ただし、古いバージョンのCPU-Zでは同じ機能が利用できる場合があります。
Q: CPU-Zと同じ機能を持つ他の類似ドライバはありますか?
A: はい、多数あります。例:WinIO.sys、AsIO64.sys、Asmmap64.sys。これらはすべて、さまざまな方法で物理メモリへの読み書きアクセスを提供します (\Device\PhysicalMemory)。
Q: これはすべてのWindowsバージョンで動作しますか?未リリースのものを含みますか?
A: Windows 7 / 8.1 / 10 (RS3まで) でテスト済みです。将来のバージョンでの動作は期待できません。
Q: Windows 10 NEXTやWindows XX NEXTのサポートは追加されますか?
A: おそらく追加されません。
(c) 2018 Stryker Project