ホームページ  >  記事  >  運用・保守  >  Androidでdexファイルを動的にエクスポートする方法は何ですか

Androidでdexファイルを動的にエクスポートする方法は何ですか

WBOY
WBOY転載
2023-05-30 16:52:511785ブラウズ

1. ida ポート リスニングを開始します

1.1 Android_server サービスを開始します

Androidでdexファイルを動的にエクスポートする方法は何ですか

1.2 ポート フォワーディング

Androidでdexファイルを動的にエクスポートする方法は何ですか

1.3 ソフトウェアがデバッグ モードに入ります

Androidでdexファイルを動的にエクスポートする方法は何ですか

2.ida が切断されました

2.1attach 添付プロセス

Androidでdexファイルを動的にエクスポートする方法は何ですか

2.2 3 つの項目を分割します

Androidでdexファイルを動的にエクスポートする方法は何ですか

#2.3 プロセスを選択

Androidでdexファイルを動的にエクスポートする方法は何ですか

2.4 モジュールを開く

アートを検索

Androidでdexファイルを動的にエクスポートする方法は何ですか

追記: 知識がほとんどありません

システムは Android より先に機能します4.4 は libdvm.so

にあります Android 5.0 以降、システム関数は libart.so

にあります 2.5 Openmemory() 関数を開きます

libart で Openmemory 関数を検索します.so そしてそれに従ってください。

Androidでdexファイルを動的にエクスポートする方法は何ですか

PS: ちょっとした知識

一般に、この関数にはシステム dex がロードされますが、後で説明する問題があります。 。

2.6 次のブレークポイント

Androidでdexファイルを動的にエクスポートする方法は何ですか

3. 次のブレークポイントまでプログラムを実行します

3.1 jdb フォワード実行プログラム

Androidでdexファイルを動的にエクスポートする方法は何ですか

3.2 IDA 操作

が正常に切断され、切断した場所まで実行されることを確認します。

Androidでdexファイルを動的にエクスポートする方法は何ですか
#3.3 dex の場所を確認する

レジスタ ウィンドウを開くと、R1 が dex であることがわかります

Androidでdexファイルを動的にエクスポートする方法は何ですか
次に、Hex ウィンドウで R1 を開きます。


Androidでdexファイルを動的にエクスポートする方法は何ですか#dex ファイルのバイナリ構造を見ると一目瞭然です。理解できない場合は、前の dex ファイル分析を参照してください。

3.4 キー情報の抽出

1 つ目のキー情報: アドレス オフセット: 0xF35CA328

Androidでdexファイルを動的にエクスポートする方法は何ですか##2 つ目のキー情報: ファイル オフセット: 70 35 01 00、0x00013570 に変換


## 16 進加算器を使用して追加します、F35DD898Androidでdexファイルを動的にエクスポートする方法は何ですか


4. dump

Androidでdexファイルを動的にエクスポートする方法は何ですか4.1 スクリプトを使用して dump

static main(void){ auto fp, begin, end, dexbyte; / /ファイルを開くか作成します fp = fopen( "d:\\dump.dex", "wb"); //dex ベース アドレス begin = 0xF34C6320; //dex ベース アドレス dex ファイル サイズ end = begin 0x00013570; for (dexbyte = begin; dexbyte

4.2 スクリプト ダンプの実行


スクリプトを入力したら、[実行] をクリックします。

4.3 ダンプの成功Androidでdexファイルを動的にエクスポートする方法は何ですか

以上がAndroidでdexファイルを動的にエクスポートする方法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。