Android逆向学习路线
2023-1-29 13:35:40 Author: HACK安全(查看原文) 阅读量:11 收藏

原文:https://bbs.kanxue.com/thread-275616.htm

一、前置知识为什么学习安卓逆向
兴趣爱好 就业 副业 爬虫工程师 学习安卓逆向需要准备什么 学安卓逆向的前置知识 逆向分为:安卓逆向,win逆向 逆功能:破解内购道具,去广告等等 逆协议:比如,某APP注册的时候有一个Sign的加密。这时候app逆向逆的是协议(让爬虫爬到app的数据) 被逆向的APP:大厂,中厂,小厂,小APP,灰APP...... 需要学习的内容: Java语言:基础语法,面向对象,接口,反射机制等 Android应用开发,四大组件( activity,service,provider,broadcast),界面控件,消息事件处理、网络通信等 java层逆向:smali汇编与静态逆向分析,动态调试(双IDA调试) native层逆向(SO库(linux下的so类似win下的dll):C/C++语言:数据类型,语法糖,指针,实现过程。ARM汇编(寄存器,指令码,立即值,常量) HOOK与注入技术框架(xposed(java、Android Studio)、Frida(python、JavaScript)) APP协议分析(抓包) 加壳与脱壳 沙箱 unicorn/unidbg 硬件配置 电脑: 主流电脑配置即可,内存尽量大,主频尽可能高 如果有条件的话,电脑安装虚拟机装linux系统 手机: 安卓手机 如果有条件上谷歌的亲儿子(nexus或者pixel),国产的手机推荐红米9A(经济实惠,缺点就是cpu是arm 32的,未来无法调试arm64的程序,入门足够了) 暂时没有真机可以先用模拟器一段时间 夜神模拟器(最新支持Android 9)、雷电模拟器、逍遥模拟器 但尽量还是使用真机,安卓模拟器存在兼容性的问题,有些app无法在模拟器上运行,因为模拟器是基于x86的架构,而有些app只认v7或者v8架构的cpu。

文章来源: http://mp.weixin.qq.com/s?__biz=Mzg2NjU0MjA0Ng==&mid=2247487136&idx=1&sn=f2832719ee31e09070e9dc3cf1d48741&chksm=ce480611f93f8f07c18e6573a23f352a3a4e4b775d087b835cb7e96776739c7d3c335061a001#rd
如有侵权请联系:admin#unsafe.sh