Android逆向分析《前言》
看到这个标题,不熟悉的同学可能会有一个疑问,逆向分析分析什么鬼?呵呵,其实就是反编译。其实很早也有接触反编译,但是没有在工作中进行运用,也就没有过多深入。今天又重新开始这个话题,也是前几天在面试时,有一家公司提到这个。他们的产品有用到,具体什么产品也就不多说了。
好了,废话不多说了,下面开始我们的逆向分析之旅。
一,学习目的
刚刚所提到的也算是一个引子吧,呵呵。我们最终学习还是要有目的。可能平时做android开发的小伙伴,在遇到漂亮的应用和应用中一些炫酷的功能时,就会想他是怎么实现的,我能否实现,或许你可以自己实现,但是如果你无法实现时,这时我们的反编译技术,就会帮助我们来破解这些应用帮助我们来学习他们是怎样实现的。这样我们就可以copy别人的功能到我们自己的项目中,听起来是不是很酷。但也不是绝对的因为有些应用是做了代码混肴和加固,所以这个就需要你不断地的去学习和研究别人的代码是如何实现的。
本人能力有限,所以在后面文章有哪里如果说的不对和更好的实现,欢迎大家进行指正和交流。
二,学习工具
工欲善其事,必先利其器。所以在正式开始之前先准备好的自己兵器。
这里之对工具进行简单的罗列和介绍,具体的使用会在后面文章结合反编译实战的时候进行讲解。
首页第一个apktool,这个工具是对apk文件进行解码和重新编译的工具。
第二个是dex2jar,这个是在代码在代码混肴后进行站转换成java文件所使用的。
第三个是jd-gui,把第二个工具中转换成的java包进行可视化查看
第四个signapk 这个工具是针对重新编译后apk包进行签名,这样才能被安装到的手机
好的,工具大概就这些。最后在附上连接
链接: http://pan.baidu.com/s/1jHNMIs2 密码: n8bg
三,总结
总的来说反编译技术或者叫逆向分析,在项目中还是有很大的作用。在一些有实力的公司,会有专门的职位和工程师来负责这个。逆向分析可以发现你的应用所暴露出的不安全的部分,进行相关的安全处理,我想谁也不想自己辛苦做出来的东西,轻易被别人获取。
我想这也是这篇和后面等文章出现的目的吧。ok,后面我根据时间,来陆续的完善android逆向分析学习之旅的文章。能力有限,和大家共同学习和进步。谢谢!
网友评论