androidアプリのリバースエンジニアリング
DESCRIPTION
アンドロイドアプリをリバースエンジニアリングして、セキュリティについて考えよう。TRANSCRIPT
![Page 1: Androidアプリのリバースエンジニアリング](https://reader038.vdocuments.pub/reader038/viewer/2022100603/559237141a28ab52158b46b8/html5/thumbnails/1.jpg)
株式会社xtone勉強会
2012/12/27
高谷 秀一
![Page 2: Androidアプリのリバースエンジニアリング](https://reader038.vdocuments.pub/reader038/viewer/2022100603/559237141a28ab52158b46b8/html5/thumbnails/2.jpg)
アジェンダ
APKとは
APKの中身
APKから画像を取り出す
APKからXMLファイルを取り出す
APKからソースを取り出す
使用ツール
![Page 3: Androidアプリのリバースエンジニアリング](https://reader038.vdocuments.pub/reader038/viewer/2022100603/559237141a28ab52158b46b8/html5/thumbnails/3.jpg)
APKファイルとは
Androidアプリの本体です。
![Page 4: Androidアプリのリバースエンジニアリング](https://reader038.vdocuments.pub/reader038/viewer/2022100603/559237141a28ab52158b46b8/html5/thumbnails/4.jpg)
APKファイルの中身は
APK ≒ ZIP です。
![Page 5: Androidアプリのリバースエンジニアリング](https://reader038.vdocuments.pub/reader038/viewer/2022100603/559237141a28ab52158b46b8/html5/thumbnails/5.jpg)
APKから画像を取り出す
unzip hoge.apk
![Page 6: Androidアプリのリバースエンジニアリング](https://reader038.vdocuments.pub/reader038/viewer/2022100603/559237141a28ab52158b46b8/html5/thumbnails/6.jpg)
APKからXMLファイルを取り出す
java -jar AXMLPrinter2.jar hoge.xml
![Page 7: Androidアプリのリバースエンジニアリング](https://reader038.vdocuments.pub/reader038/viewer/2022100603/559237141a28ab52158b46b8/html5/thumbnails/7.jpg)
APKからソースを取り出す
dex2jar classes.dex
jar xvf classes_dex2jar.jar
jad -o -r -s java -dsrc **/*.class
![Page 8: Androidアプリのリバースエンジニアリング](https://reader038.vdocuments.pub/reader038/viewer/2022100603/559237141a28ab52158b46b8/html5/thumbnails/8.jpg)
使用ツール
http://code.google.com/p/android4me/
http://code.google.com/p/dex2jar/
http://java.decompiler.free.fr/
http://www.varaneckas.com/jad/
http://code.google.com/p/apk2java/
![Page 9: Androidアプリのリバースエンジニアリング](https://reader038.vdocuments.pub/reader038/viewer/2022100603/559237141a28ab52158b46b8/html5/thumbnails/9.jpg)
補足
必ずリバースできるわけじゃないので、複数のツールを組み合わせて使った方
がいいですよ。