zirconium
Call of Duty: Black Ops 2 Zombies(Plutonium モッド対応)向けの DLL インジェクション式ゲームチートです。
免責事項:
- このプロジェクトは、私が BO2 で育ったことと、リバースエンジニアリングの良い標的でもあったために存在します。これは14年前の実質的に死んでいる AAA ゲームですが、大きなゲームエンジンをリバースエンジニアリングするための、比較的モダンなアプリケーションでもあります。
- 私はチートを推奨しません。これを使用してあなたが当然のように BAN されても、私は責任を負いません。使用は自己責任でお願いします。
プレビュー:


機能:
- ゴッドモード
- ゾンビから見えない状態
- ESP
- エイムボット
- 三人称視点 FOV
- ノースプレッド
- ノーリコイル
- テレポート
- 以下の設定が可能:
- お金
- 弾薬
- グレネード/クレイモア/モンキーボムなど
- ジャンプ力
- 重力
- 速度
ビルド:
git clone --recurse-submodules https://www.github.com/robertmotr/zirconium.git
cd zirconium/codebase
cmake -B ../cmake-build -G "Visual Studio 17 2022" -A Win32
cmake --build ../cmake-build --config Release
DLL は ../build/Release/zirconium.dll に生成されます。
使用方法:
- ゲームを起動し、ゾンビマッチにロードする
- Xenos injector を使用して、プロセスリストから
plutonium-bootstrapper-win32.exe を見つけて選択する
zirconium.dll を DLL としてロードし、インジェクションする
- 私はデフォルトのネイティブインジェクションオプションのみを使用・テストしています。マニュアルマッピングなどの他の方法が機能するかどうかはわかりません。世の中にある無数の DLL インジェクターの実装についても同様です。
クレジット:
unknowncheats.me で大量のオフセットをリバースエンジニアリングしてくれたすべての人々に感謝します :)
遭遇した興味深い発見:
- マルチプレイヤーサーバーの PDB ファイルが存在し、クライアントと多くの共通関数を共有しています(Plutonium の変更を含む)。これは IDA での進捗を PDB と照合することでリバースエンジニアリングを高速化するのに役立ちますが、ある程度までです。
- Plutonium は Themida を使用していますが、.text セクションの特定の部分のみが難読化されています。アンチデバッグを回避するには、x64dbg で ScyllaHide の Themida プロファイルを使用するだけです。リバースエンジニアリングを困難にするような狂った Themida 機能はすべて使用していないようです。
- Plutonium は .text セクション(おそらく他のセクションも)のチェックサムを実行し、元のコードに対してバイトが変更されていないことを検証します。つまり、.text セクション内のいかなる変更もチェックサムを変更します。関数をフックする最良の方法は、ハードウェアブレークポイント(https://en.wikipedia.org/wiki/X86_debug_register)を使用し、フックしたい関数のベクタード例外ハンドラーにジャンプさせることです。これによりチェックサムが維持され、検出されません。
- DX11 は .text セクション外の DLL であるため、検出されずに
IDXGISwapChain::Present をフックするためにハードウェアブレークポイント + VEH を使用する必要がない可能性があります。当初、私はこの関数をトランポリンフックする方法を解明するために1年間断続的に費やしました(CMakeLists.txt のビルドフラグを切り替えれば今でも使用できます)が、チェックサムを発見した後、それを放棄してすべてのフックにハードウェアブレークポイントを使用する方針に切り替えました。
TODO:
- リリース前にコードをきれいに見せるために claude に掃除を頼んだら、ただのゴミに変えられてしまった... いつか元のコードに戻したい
- エイムボットのスムージング/エイムボットオプションの追加
- スピンボット
- サイレントエイム
- エンジンチャムス
- マジックワンド/ゾンビパイル(?)
完了済み:
- Releases に実行ファイルをアップロード
- 三人称視点
- ロギングのリファクタリング
- ログレベルに基づく色付きテキスト
- 奇妙な再帰的テンプレートソリューションの削除
- ログレベルの追加とレベルに基づく条件付きロギング
- ビルドシステムを VS から cmake に移植
- エイムボット
- DLL のアンインジェクトオプションと状態のリセット
- より良いデバッグタブ
- テレポート
- ゴッドモード
- ESP