UnityのAssetビューワと復号

ゲーム解析

Assetビューワ

Releases · Perfare/AssetStudio
AssetStudio is a tool for exploring, extracting and exporting assets and assetbundles. - Perfare/AssetStudio

Perfare氏が開発したAssetStudioが超便利だったので本記事でもオススメしておきます。

暗号化されていないAsset(unity3d)であればこれで何でも読み込めます。

カードデータを読み込んだところ

TextAssetの復号

TextAssetの復号キーはゲームごとに違う上に、実行ファイルに刻まれているのでいくら外部ファイルを眺めてもわかりません。

44氏によればAssembly-CSharp.dllに刻まれているらしいので見てみることにしました。

実はAssembly-CSharp.dllってUnity製ゲームの(特にソシャゲ)全てを司るファイルなのですが、結構杜撰な仕組みになっていたりするのでソースコードがほとんどそのまま読めたりします。

いろいろ読み込むすべはあるのですが、手っ取り早いのは.NET reflectorを使う方法でしょう。

体験期間があるのでちょっと調べるくらいならこれで問題ありません。

.NET reflector

読み込むとこのように何から何まで見えてしまいます。

バトガの暗号化はCipherというところで行われているので、そこのサブルーチンを見てみましょう。

PUBLIC_KEY_STRING

なにやらくっそ長いPUBLIC_KEY_STRINGが定義されているんですが、これが鍵でいいんですか?

いや、でもこれ公開鍵だから違いますよね?

多分、暗号化したファイルの正当性チェックとかに使うんだと思う、多分。

sKEY, sIV

一応これも載っていたけど、このまま使って良いのかどうかわからない。

DK, DI, ADI

libmisc.soに載っているのでそれを読み込むだけ。

ただ、バトガで調べると何故かキーにスペースが入っているんだけどこれはこれでいいのだろうか?

コードを書いてみた

ここまでやって飽きた

キーを記述してそれらのクラスを継承した親クラスをつくって、そのクラスからDecryptを呼び出せばいけそうな気がする。

問題はキーが合っているかということと、暗号化素人なのでこれでいいのかどうかがさっぱりわかってないところである。

まあ少なくとも44氏のようにModAPKをインストールして直接アプリに復号させるよりは手間が省けるはずである、多分。

プログラムは書きたいんだけど、気分次第っていう感じ。

ファイルさえあればいつでも復号はできるので、ね。

暗号の本はサイモン・シン氏の著書がすっごい面白いのでおすすめです。

コメント

  1. 匿名 より:

    別件で恐縮なのですがガチホコカウントマップの各ステージリンクが切れているのは工事中なのでしょうか?
    いつも参考にさせていただいていたので復活していただけると嬉しいです。

    • me より:

      ガチホコカウントマップはHP移行のときにリンクが切れてしまって、直したのですがまた切れてほったらかしにしていました(笑)

      再度修正したのでご確認ください。

    • 匿名 より:

      見れました!ありがとうございます!めちゃくちゃ参考にしてます。今度、お小遣いたまったら必ずお礼します!

  2. 匿名 より:

    音声取得の一環でSoundのBGMも取得しましたが、ホシノキズナとMelodyRingだけTextAssetファイルだったので、暗号化されているということですかね?
    頂いた素晴らしいツールと初期ファイル集のおかげである程度予想立て(Fiddlerとかわからない;)で取得できております。
    本当にありがとうございます。

    • me より:

      台湾版だと暗号化されていないのでTextAssetにならずに取得できると思います!

      バージョンを調べるのが面倒ですが、そちらも手かもしれません。

    • 匿名 より:

      ありがとうございます。
      台湾版のURLが不明なのでちょっと難しそうです。
      無理なとこは諦めて、ライン入力で録音しようかと思います。(ボイスドラマも含めて)

    • me より:

      台湾版のURLはこんな感じなのでもしよければどうぞ。

      “https://img.bgirl.so-net.tw/asset_bundles/iOS/”

    • 匿名 より:

      台湾版URLありがとうございます!
      おかげさまでバージョン部分は同じ「0.0.1」で2つとも無事取得できました。
      ツール含め感謝しかない・・・。

    • me より:

      いえいえ、お役に立てたようで何よりです。

タイトルとURLをコピーしました