詳細コースカタログ: UE4/UE5エンジンFPSゲームリバースエンジニアリングYuque
道具:
デバッグ可能な EAC デバッガーを提供 (無料)
EAC BE に注入できるカーネル層インジェクターの完成品 + ソース コード (無料) を提供します。後でカーネル層インジェクターを教えて作成します。
カーネル層ダンプツールの完成品+ソースコードを提供(無料)、ゲームファイルがidaで直接解析できない問題を解決 // 注:非ダンプSDK、明確に区別してください
カーネル レイヤー ダンプ SDK スクリプトの完成品 + ソース コード (無料) を提供します // 保護されたゲーム ダンプ SDK のサポート
実際のゲーム:
スタンドアロン ゲーム UE4 エンジン (保護されていない)、
ポリゴン UE5 エンジン (EAC)、
GUNDAM EVOLUTION ガンダムエボリューション(EAC)、
スーパーヒューマンUE4エンジン(BE)、
アペックス(EAC)
パブリッククラス:
隠れた c のパーソナルスペース_哔哩哔哩_Bilibili
エフェクトビデオ:
隠れた c のパーソナルスペース_哔哩哔哩_Bilibili
効果画像:
序章:
スタンドアロン ゲームはデモンストレーションとして使用されるものではありません。最初の章のスタンドアロン ゲームは学習の基礎にすぎません。!!
スタンドアロン ゲームはデモンストレーションとして使用されるものではありません。最初の章のスタンドアロン ゲームは学習の基礎にすぎません。!!
スタンドアロン ゲームはデモンストレーションとして使用されるものではありません。最初の章のスタンドアロン ゲームは学習の基礎にすぎません。!!
基本を学んだら、マルチプレイヤー ゲームを直接実行して、プロジェクトを完了させましょう。!!
基本を学んだら、マルチプレイヤー ゲームを直接実行して、プロジェクトを完了させましょう。!!
基本を学んだら、マルチプレイヤー ゲームを直接実行して、プロジェクトを完了させましょう。!!
アプリケーション層からカーネル層まで、合計 7 つの章と数百のビデオがあります。!!
01 UE4 エンジン:
// 01 UE4 エンジンのリンクでは、強固な基盤を築くための UE エンジンの基本的な理解に過ぎません
// 各種描画アルゴリズム + メモリセルフエイミング + サイレントセルフエイミング + 弾丸追跡 + 各種異常機能はすべて 02 UE5 で利用可能
00 必要な前提 // dx内部図面基礎
01 自作のDX11Hookフレームワーク
02 内部描画解像度変更時のクラッシュ問題を解決
03 UE エンジンのソース コードを通じて GName アルゴリズムを分析する
04 IDA ルックアップ GName
05 CE ルックアップ GName
06 C++ で GetName 関数を作成する
07 GName アルゴリズムを検証する
08 IDA が GWorld を発見
09 プレイヤークラスの継承関係
10 GWorld 構造の詳細説明と GWorld 構造の修復
11 すべてのアクタ座標をトラバースする//以前に学んだことを練習する
12 世界座標を見つけて画面座標に転送 CALL
13 世界を呼んで画面を回してCALLして名前を描く
敵のみを描画する 14 個のフィルタ アクタ
15 敵のボーンを見つけてボーンインデックスを描画します
16 UE エンジンのスケルトン アルゴリズムの詳細な説明// 主に UE エンジンのボーン アルゴリズムを説明し、外部ボーンのちらつきを解決します
17 骨のちらつき問題を解決する
18 ボーンの相対座標を求め、ワールド座標に変換します CALL
19 CALL を使用してボーン座標を取得します
20 異なるボーンインデックスの問題を解決するために、ボーン名でボーンを描画します
21 カメラコンポーネントの検索// UEエンジン障害物判定
22 光線探しCALL(障害物判定のCALL)
23 ray CALLパラメータとリペア機能の詳細説明
24 ray CALLを使って障害物判定を行う
02 UE5 エンジン: // 完全なリバース エンジニアリングを実行します。
00 カーネルインジェクターの使用
01 基本的な環境構成
02 内部図面枠を見直す
03 インジェクターに合わせてフレームワークを変更
04 GWorld GName などを検索します。
05 UWorld構造
06 GetName関数
07 UE5の座標はUE4の座標と異なります
08 世界座標を見つけて画面座標呼び出しに転送します
09 すべてのアクター名を描画する
10 プレーヤーのみを描画するプレーヤー配列を検索します
11 チームメイトを描かずに派閥を区別する
12 ボーンの検索とボーン座標の呼び出し
13 ボーンの描画//さまざまな描画アルゴリズム
14 描画メニュー
15 2D アダプティブボックスの描画
16 3D 回転ボックスを描画する
17 2D回転レーダーの描画
18 光線の描画
19 描画方向
20 体力を引き出し、死んだ敵をフィルタリングする
21 UE5 障害物判定
22 メモリセルフポインティングの実現//3種類のセルフポインティング方式
23 ショットコールの分析
24 サイレントセルフエイム実装
25弾追跡の実装
26 照準範囲の実現
27 武器の分析//武器の機能
28 兵器の不拡散の達成
29 無反動武器実装
30 種類の武器は完全に自動化されます
31弾インスタントヒット実装
32 キャラクターのスタミナ無限の実現//キャラクター機能
33 キャラクターの加速的実現
34 ゲームクラッシュ問題を解決する
35 フィーチャーコード検索技術を活用し、「アップデート不要」のゲーム更新支援を実現
03エンジン図:
01 エンジン図面と内部図面の違い
02 ida は仮想テーブルを分析し、エンジン フック関数を迅速に特定します。
03 エンジン描画機能を探す
04 GEngineを探しています
05 エンジンフォントを使用したレンダリング
04 SDK をダンプします:
00 基本環境構築
01 GUObjectArray を見つける
02 TUObjectArray 構造の修復
03 FUObjectItem構造を修正
04 UObject構造を修正
05 すべての UObject 情報をダンプします
06 UEnum構造を修正
07 UFunction 構造を修正
08 構造物の補修
09 FFフィールド構造を修正
10 FProperty構造を修正
11 SDK をダンプ // SDK の学習をダンプする
12 ida を介して UEnum 構造オフセットを分析する
13 ida による UStruct 構造オフセットの分析
14 ida を介して UFunction 構造オフセットを分析する
15 ida を介して FField 構造オフセットを分析する
16 ida を通じて FProperty 構造オフセットを分析します //構造が暗号化されている場合、ce が見つからない可能性があるため、オフセットを見つけるために ida が使用されます
17 ドライバーを使用して読み書きし、ゲームを保護するドライバーをダンプします // ゲームを保護するダンプ ドライバーをサポートするようにダンプ スクリプトを変更します
05 反構造暗号化:
GUNDAM EVOLUTION(ガンダムエボリューション)のドライブダンプはidaでは直接解析できません
GUNDAM EVOLUTION(ガンダムエボリューション)GWorld復号化
GUNDAM EVOLUTION(ガンダムエボリューション) GName解読
GUNDAM EVOLUTION(ガンダムエボリューション)GObject復号化
GUNDAM EVOLUTIONダンプSDK
超人構造の暗号化された対決
// スーパー ヒューマンは、GName などの多数の構造を暗号化しています。ダンプ SDK 構造は基本的にすべて暗号化されています
// また、ゲームファイルは ida による静的解析ができないように暗号化されています
// このパートでは、暗号化アルゴリズムと戦う方法を学ばなければなりません
06 カーネルの基本:
00 のコア前提条件
01 ドライバーが R3 と通信
02 データを読み取るための Cr3 ドライブ
03 データを書き込むための Cr3 ドライブ
04 データを読み取るための Mdl ドライブ
05 データを書き込む Mdl ドライブ
06 ドライバー層はメモリに適用されます
07 ドライバー層がメモリを解放する
08 ドライバー層はページ保護属性を変更します
09補足
07 カーネル リフレクション インジェクション (モジュール インジェクションなし、メモリ インジェクション):
00 カーネルインジェクションに必要な前提条件
01 メモリ拡張DLL
02 再配置テーブルの修理
03 修復インポートテーブル
04 TLSの修復
05 Call ShellCodeのいくつかのメソッド
06 eac などのドライバー保護をバイパスして ShellCode を呼び出す方法
07 シェルコードの組み立て
08 反射注入フィーチャーの消去
09 アペックス(EAC)注入試験