結構前の記事でapkファイルを解凍して、中身のAndroidManifest.xmlをデコンパイルする方法を調べてみたが、前回の方法では何が書かれているのかを知ることはできても、元のXMLファイルを復元することはできなかった。 今回は、いくつかのツールを利用することでAndroidManifest.xmlに限らず、各種のバイナリ形式となっているXMLファイルを復元したり、dex形式になっているJavaのバイナリコードをJavaソースコードへ復元する方法をまとめる。 まずは解凍 対象のAPKファイルをzipファイルとして解凍し、下記のファイルおよびディレクトリを得る。 META-INF res AndroidManifest.xml classes.dex resources.arsc バイナリXMLをテキストXMLへコンバート AndroidManifest.xmlや、res/layout
![Androidアプリをリバースエンジニアリングする方法](https://cdn-ak-scissors.b.st-hatena.com/image/square/0766295c4ddbd01fe0c80dcc8e78db9e0f2ea978/height=288;version=1;width=512/https%3A%2F%2Fblogger.googleusercontent.com%2Fimg%2Fb%2FR29vZ2xl%2FAVvXsEiKwoTdhc2ThNqCg-AqWrBLaTSIW32du5lu2IKXqFTEgA5NPY5aJ3gVhpZfieSolBtNfuSDbwpTyoiSUkANbwNivr9qzWvfscqmh13ug1u0yuzmxSkQuPwd6fWLMLv7PDThqrWmTEZsKUQ%2Fw1200-h630-p-k-no-nu%2Fjdgui.png)