概要 (ゲームの安全性評価)
Seraph は 2023 年 11 月 22 日に 3 つのベータ版をオープンします。ダモクレス チームは 11 月 24 日にゲームのセキュリティ分析と評価を実施しましたが、評価結果は満足のいくものではありませんでした。 1 つ目は、プロジェクト パーティがコード内に大量のログ情報を保持しており、ログ情報からプロジェクト パーティが韓国チームではなく中国チームであり、ゲームが Lua をロードするために Unity を使用していることが推測できます。 、Lua コードを保護せず、またはリバース エンジニアリングの難易度を向上させるために Lua JIT などの手段を使用してソース コードを保護すると、ゲームのダンプにはフック ロード関数のみが必要になります。記憶からソースコードを取り出します。ただし、このゲームは ARPG ゲームです。このタイプのゲームには、当然のことながら不正行為に対する利点があります。つまり、ほとんどのデータがサーバー経由で同期されるため、ゲームのセキュリティ問題がある程度軽減されます。

ゲームの背景
Ø 評価用ゲームバージョン:v0.0.0.6
Ø ゲームタイプとゲームエンジン: ARPG、Unity
Ø ゲームプレイで考えられる問題:
テレポート
アクセラレーション(動作の加速、スキルの解放の加速)
自動的に電話を切る
倍率変更
無敵バフの修正(キャラクターがソウルクリスタルやその他の出力を増加させるバフを持続できるようにする)
ゲームのセキュリティ分析
ゲームコードの保護
1. エンジンごとに解析モードが異なるため、ゲーム EXE を入手した後、まずゲームで使用されているエンジンを特定する必要があります。基本的なゲーム情報を特定することで、ゲームが Unity を使用して開発されたものであると判断できます。

2. ゲーム ディレクトリ内の GameAssembly.dll と global-metadata.dat によって、ゲームが il2cpp コンパイル モードを使用していることが判断できるため、iL2Cppdumper を通じてソース コードが復元されます。


ただし、ゲームに関連するコード ロジックが dump.cs ファイル内に見つからなかったため、ゲームは C# で開発されず、lua を介してロードされたと推測しました。そのため、コードを介してゲームのloadbuff 関連関数をフックして、ゲームの実際のソースコードが到着しました。


そして、ゲームのソースコードでいくつかの興味深いコメントを見つけました。



分析の結論:
Seraph はゲーム コード保護のスコア 0 を獲得しました。これは、まったく保護されていないことを意味します。 Lua で開発された従来のゲームでは、カスタマイズされた Lua インタープリターがよく使用され、ある程度のコード保護のために LuaJit が使用されます。 Seraph にはサウンド コードの保護メカニズムがないため、悪意のあるプレイヤーがコードを解析するための敷居とコストは非常に低くなります。チートが出現した場合、それは通常のプレイヤーにとって不公平であり、ゲームの経済モデルに影響を与える可能性があります。
ゲームの基本的なアンチチート
1. 基本的な不正行為検出に関しては、主に Lua ファイルを置き換えることにより、ゲームが外部ロジックを読み込んで実行しているかどうかを判断します。
2. CE を介してツール DLL を挿入した後、ゲームのログ ファイルの下にサードパーティのログが出力されるかどうかを確認します。

3. Lua ロジックを変更してゲーム内のクリティカル ヒット率やその他のデータを変更すると、それが有効になり、ゲーム内でチェックが行われないことがわかりました。 (属性データの変更は、より直観的に表示するためだけに行われます。このフィールドは通常、サーバーに保存され、ローカルで変更しても効果はありません。)


分析の結論:
Seraph の不正行為防止機能のスコアは 0 です。悪意のあるユーザーがいる場合、彼らは自由に不正行為を行うことができます。 2. Lua のゲームへのリロードのみをテストする主な理由は、この動作が Lua ゲームの不正行為の基礎となるためです。この点がうまく機能しない場合、不正行為対策の他の側面はさらに悪化するだけです。
ゲームロジックの問題
ゲームのソースコードを入手したため、解析の過程でロジック層のセキュリティ解析は実施しましたが、ロジック層については主に以下の点についてセキュリティテストを実施しました。 :
キャラクターの初期化中の属性の改ざん: (この部分には機密性の高い属性があまりないことが判明し、収入を増やすことはできません)

2 つ目は、アクティブな攻撃中のスキル関連の改ざんです: (この部分は表示のみを目的としており、実際のダメージ検証には関与していないことがわかりました)

最後に、モンスターが攻撃されたときのロジックの変更があります (この変更には実用的な意味がないことがわかりました。このモジュールの開発の主な目的は、記録用のイベントをトリガーすることであり、実際の計算には関与していないと推測されます)。

分析の結論:
Seraph はランダムに改ざんした 3 点では効果がありませんでした。これは、Seraph のダメージ計算と表示が別々に実行されているか、計算がサーバーによって実行され、安全性が保証されていることを証明しています。スコアは 3 点と 0 です。 。
ただし、ダメージ判定の一部はローカルに保存されるため、不正行為の余地がまだあります。
ゲーム RPC 分析
ゲームはプロトコル インタラクションに protolbuf を使用しており、Web3 関連のインタラクションでもこのソリューションが使用されています。現時点では、この部分は詳細にテストされていません。ProtoBuf 部分は将来的に詳細にテストされる可能性があります。

WEB3セキュリティ分析:
概要:
現在、Seraph はトークンを発行していません。Mint コントラクトは、代理店契約を使用した従来の NFT721 コントラクトです。総供給量は 3225 です。Mint であってもクロスチェーンであっても、ロール制御があり、チェーン上のセキュリティは制御可能です。

ゲーム内の経済システムのセキュリティ:
現時点では、Seraph における金の採掘の主な方法は、ソウル ボックスを構築するかどうかにかかわらず、サーバーによって判断され、主にセキュリティが制御されます。後で、Damocles がすべてのリクエストを分類し、ブラックボックス テストを実行する可能性があります。

ダモクレスについて
Damocles labs は、Web3 業界のセキュリティに焦点を当てて、2023 年に設立されたセキュリティ チームです。その業務内容には、契約コード監査、ビジネス コード監査、ペネトレーション テスト、GameFi コード監査、GameFi 脆弱性マイニング、GameFi プラグイン分析などが含まれます。 GameFi アンチチート。
当社は今後もWeb3セキュリティ業界に尽力し、できる限り多くの分析レポートを出力することで、プロジェクト関係者やユーザーのGameFiセキュリティに対する意識を高め、業界のセキュリティ発展を促進してまいります。
ツイッター: https://twitter.com/DamoclesLabs
ディスコード: https://discord.gg/xd6H6eqFHz
