前言
随着移动互联网的兴起,“APP”成了99%的互联网企业主要运营的产品,知名的例如“支付宝”、“美团”、“滴滴”、“抖音”等。用户基数的不断变大,安全性也经历着巨大的挑战。
app越来越多,也离不开我们的生活,而安卓逆向也是近几年才兴起的一个行业,市场饱和度不高,发展前景广阔。
随着app的增加安全是一个很大问题,想要解决安全问题就得用到逆向知识,由此逆向岗位会随着app得的增加会越来越多。
如何学习Android逆向
从上面了解到Android的逆向不管是前景还是岗位需求,还是最为关心的薪资问题都有着非常好的表现。那么我们怎么学习逆向呢?
作为入坑Android逆向两年,我个人的话建议一开始先从AOSP入手, 结合Android系 统的具体行为和源码,穿插着写一些普通的app和简单的xposed插件,先对Android系统有一个大致的了解。
在这过程中需要逐步的了解Java和生成的smali之间的对应关系,比如Enum、Lambda等在编译后是什么样的。然后就可以拿一些普通的app练手 了,遇到不会的就去请教认识的dalao或者 上GitHub看有没有其他项目的实现。
困难的话我感觉最大的是在这个过程中你会遇到很多之前从来没有接触过的东西,包括Android和某些大厂的设计模式等。做逆向就不能像写Python之类的把设备和操作系统都当成是黑箱来调用,而需要深入的去了解很多Android和Java SDK的具体实现。在这个过程中还可能会遇到各种限制,