Android逆向学习知识体系(二)

第一阶段:Android 基础知识回顾:

回顾Android 开发编程,深入理解Android系统原理和层次结构,深入分析Handler源码和原理;

回顾Java,C/C++,Kotlin 在Android开发中必用的语言,了解几种语言的混淆后的特性;

回顾Android IPC和JNI的底层原理和热更新技术

回顾Native开发要点,使用C++结合NDK完成Android Native开发;

回顾Android开发中常用的 AMS、PMS、WMS原理;

回顾Android开发中 Google的MVVM框架:DataBinding+LiveData+ViewModel;

回顾Android开发中 Google的MVP框架:Dagger2;

回顾Android开发网络架构:Okhttp3+RxJava2+Retrofit2+Rxdownload4+Rxcache+Glide;

Android 逆向基础知识:

 

熟悉Android逆向工具的使用,如apktool,IDA,dex2jar,JEB,AndroidKiller,Androguard等;

深入分析APK中包含的各文件格式,分析Android系统源码中解析APK的相关代码;

学习和熟悉smali语言(重点);

仿微信写一个APP,并利用工具逆向出apk内的代码,并对比源码分析。

入门知识总结和实战(逆向入门):

知识梳理,常用工具安装,adb命令与Linux常用命令,常见登录逻辑分析;

分析ELF可执行程序,调式ELF可执行程序;

ARM汇编与寄存器,ARM反汇编速成,ARM指令机器码,常用ARM指令集;

反编译ELF文件与ObjDump,ELF文件解析与readelf,ELF文件解析与010Editor,深入分析ELF文件结构;

IDA静态分析,IDA动态调式;

简易计算器实现及分析(练习);

字符串加密与解密,冒泡排序算法分析;

关键android_server文件检测,IDA调试端口检测;

ELF可执行程序加载so库,DEX解析与dexDump,DEX解析与010Editor;

实现自己的Dex解析工具与GDA(练习);

Androidkiller动态调试smali代码插件,AS+smalidea调式smali代码;

Log注入实现免注册,如何定位关键代码,去除java层签名验证,去除广告和弹窗(实战);

推荐阅读《Android系统源代码情景分析》;

Android 基础算法和安全协议:

 

密码学,对称加密算法,非对称加密算法,散列函数;

数字签名,数字证书,SSL证书检测,协议与安全协议;

了解服务器端与客户端通信协议分析;

使用Charles抓登录封包和验证码,协议构造与Java层MD5算法,动态调式smali代码与sign字段;

协议构造类与SO层DESCBC算法,协议关键字段SIGN与SO层MD5算法,动态调试协议字段,动态调式协议关键字段SIGN;

协议关键字段pwad和sign,动态调式协议字段拼接与MD5加密,分析so层OpenSSLSHA1算法;

封包加密与反编译失败,使用方法跟踪分析加密;

java层逆向分析,分析so层TEA算法;

练习:抓取验证码和登录封包,分析协议关键字段与RSA算法,证书与RSA原理及源码分析;

对称加密AES、PBE与CRC算法,数字签名RSA、DSA算法;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值