nod 发表于 2014-3-13 15:39

反编译安卓程序系列教程 BY:崔默晗 吾爱ID NOD

嗯   大家好本人也来吾爱凑凑热闹       俗话说 隔行如隔山玩渗透的我 刚接触不久破解
看到论坛有好多人 求安卓方面的反编译和破解悬赏又是有了不成形的此文    希望各位Cracker大神 多多包涵谢谢
   授人之鱼不如授人之渔
我就先给各位热心的朋友 讲讲基础知识!

                           大家都知道APK文件是用专业软件eclipse编译生成的压缩文件包         
说白了就是个压缩的文件夹,
感兴趣的朋友可以把随意一个APK文件用WINRAR解压一下试试
我拿天天酷跑开刀吧最近大家家都迷上这个游戏了我发现


好的给大家科普一下 基础知识
在反编译之前 大家务必安装JDK 也就是运行环境 (我会给大家分享的)
然后需要用到的软件是APKTOOL已经 编译软件Notepad++ 外加一个单独签名软件
这些我都会分享给大家
大家下载好工具后 安装JDK 之后解压好 安装好这个三个用到的主要工具
之后我们来第一步


(1)复制要反编译的APK到APKTOOL根目录(如图1)
把天天酷跑名字改为123.apk
打开APKTOOL.cmd
如下图         
输入1      回车
如下   
(2)   大家可以看到在根目录下自动生成了一个APK的文件夹 里面即时反编译后的APK文件
给大家再科普几点
AndroidManifest.xml          每一个Android项目都包含一个清单(Manifest)文件--AndroidManifest.xml,它存储在项目层次中的最底层。清单可以定义应用程序及其组件的结构和元数据。  它包含了组成应用程序的每一个组件(活动、服务、内容提供器和广播接收器)的节点,并使用Intent过滤器和权限来确定这些组件之间以及这些组件和其他应用程序是如何交互的。
其实大家主要记住他几点就可以他是存放包名和版本号的,其他的我以后的课程给大家详细讲解
res文件夹顾名思义 resource 资源的缩写


smali
            Smali,Baksmali分别是指安卓系统所使用的一种。dex格式文件的汇编器,反汇编器。



其语法是一种宽松式的Jasmin/dedexer语法,而且它实现了.dex格式所有功能
剩下的就是assets了 用来存放资源文件
LIB文件夹里面的是
动态数据库文件,动态数据库文件是在你程序运行时需要的时候才动态加载到程序中,支持你的程序
好了概念就是这些了 第一节我教大家修改天天酷跑的名字
大家依次打开RES/values找到strings.xml
用 之前安装好的 NOTEPAD++打开告诉大家个小技巧 右键 选择用NOTEPAD打开更方便
打开后可以看见类似于这样的代码
    <string name="unipay_tenpay_change_thru_notnow">暂时不用</string>
    <string name="unipay_tenpay_change_thru_now">立即更新</string>
    <string name="unipay_tenpay_change_thru_now1">更新</string>
    <string name="app_name">天天酷跑</string>


没错 修改天天酷跑即可改成你要修改的名字   

之后保存重新打开刚才的 APKtool

输入3   回车
这时候CMD里面会显示以下
 正在回编译中...
Checking whether sources has changed...
Checking whether resources has changed.
Building apk file...
。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。
按任意键返回目录
之后按下回车 会在APK文件夹中生成回编译好的文件
显示123(未签名).APK
我们需要打开我们的签名工具(PS 为什么不要APKTOOL自带的签名工具呢 ,因为APKTOOL的签名组建及其不稳定而且 我们下节课还要继续讲这个问题,先卖个关子)
打开AndroidResEdit打开AndroidResEdit.exe程序加载的可能会慢一些
等待出现页面 点击左上角签名 选择刚才的 123(未签名).APK点击开始签名
生成的文件就是我们修改名字成功的文件啦!

好了 第一课就到这里我稍后会更新第2课 感谢大大们支持
工具链接: http://pan.baidu.com/s/1c0iUoms 密码: bi1p
JDK 链接: http://pan.baidu.com/s/1gdh2nCZ 密码: vncg








                           






                           

nod 发表于 2014-3-13 16:53

z6810753 发表于 2014-3-13 16:42
要是能系统总结一下各种类型的apk破解方法就好了,比如网络验证的 这个最难!另外有些被加密了,反编译之后 ...

您如果需要的话我有之前师兄录得教程关于您说的方面的 发短信给我 我给您发过去

z6810753 发表于 2014-3-13 16:42

要是能系统总结一下各种类型的apk破解方法就好了,比如网络验证的 这个最难!另外有些被加密了,反编译之后只有com文件夹,里面只有shell文件包,只有两个没用的smali文件,望大神能够详细指导~

february 发表于 2014-3-13 16:10

跟上直播了,期待楼主的后续教程

花生土豆 发表于 2014-3-13 16:18

来赞一个,我要多多向各位前辈学习

z6810753 发表于 2014-3-13 17:02

nod 发表于 2014-3-13 16:53
您如果需要的话我有之前师兄录得教程关于您说的方面的 发短信给我 我给您发过去

真的嘛?那太好了,不过不是低调大神的那三个吧?z6810753@126.com

az7754521 发表于 2014-3-13 17:06

强烈要求支持希望续作!

ylf 发表于 2014-3-13 19:48

您如果需要的话我有之前师兄录得教程关于您说的方面的 发短信给我 我给您发过去
haha,这教程好,给我来一份2444799169@qq.com,多谢啦!

李少忠 发表于 2014-3-13 19:49

表示没看懂~~

华爱鸾 发表于 2014-3-13 20:24

麻烦发我一份!!谢谢!jinhua918@qq.com
页: [1] 2 3 4 5
查看完整版本: 反编译安卓程序系列教程 BY:崔默晗 吾爱ID NOD