乐易论坛-乐易网易语言培训教程火山PC视窗中文编程交流论坛

 找回密码
 立即注册

手机号登录

用手机号号登陆

微信登录

微信扫码,快速开始

QQ登录

用QQ账号登陆

办理VIP,定制软件,报名培训联系QQ[重磅]2024年实地培训高清培训目录火山PC版乐易模块使用教程
请牢记揰掵佲的QQ号1615457736 1615457734 其他都是骗子有了火山,易语言是否还有必要学习吗?易语言0基础入门课程
火山PC视窗0基础入门课程易语言外挂0基础入门课程火山PC视窗火山HOOK入门课程
易语言误报处理课程QQ空间POST课程2022年火山PC易语言POST系列课程
Android逆向Jeb动态调试0基础课程QQ邮箱网页POST课程WeChat个微Hook实战课程
百日Js加密分析实战课程(无密下载)QQ群POST课程h5游戏WebSocket逆向视频
JavaScript加密特训课程易语言汇编快速入门课程破解实战系列课程
[2024年]火山PC0基础x64位游戏内存辅助开发教程手游模拟器脚本0基础课程易语言加密防破解0基础入门课程
广告位招租联系QQ1615457736  
查看: 23583|回复: 25

[图文教程] Android软件安全与逆向分析

[复制链接]

[图文教程] Android软件安全与逆向分析

[复制链接]
已绑定手机
已实名认证
揰掵佲
等级头衔

等級:乐易运营组

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分成就
易币
贡献
主题
精华
金钱
积分
33884
注册时间
2014-8-2
最后登录
1970-1-1

勋章墙

2016-1-13 11:31:20 | 显示全部楼层 |阅读模式

据统计90%查看本帖的人,都已经注册本站了哦

您需要 登录 才可以下载或查看,没有账号?立即注册

×
名称:Android软件安全与逆向分析
作者:丰生强
时间:2013.5.22 23:00

不错的安卓逆向分析资料哟,出自看雪名人只手。以下是课程目录:

目 录
第1 章 ANDROID 程序分析环境搭建................................1
1.1 Windows 分析环境搭建...................................... 1
1.1.1 安装JDK..................................................1
1.1.2 安装Android SDK..........................................3
1.1.3 安装Android NDK..........................................5
1.1.4 Eclipse 集成开发环境.....................................6
1.1.5 安装CDT、ADT 插件........................................6
1.1.6 创建Android Virtual Device...............................8
1.1.7 使用到的工具.............................................9
1.2 Linux 分析环境搭建........................................ 9
1.2.1 本书的Linux 环境.........................................9
1.2.2 安装JDK..................................................9
1.2.3 在Ubuntu 上安装Android SDK..............................10
1.2.4 在Ubuntu 上安装Android NDK .............................11
1.2.5 在Ubuntu 上安装Eclipse 集成开发环境.....................12
1.2.6 在Ubuntu 上安装CDT、ADT 插件............................13
1.2.7 创建Android Virtual Device..............................13
1.2.8 使用到的工具............................................15
1.3 本章小结..................................................15
第2 章 如何分析ANDROID 程序...................................16
2.1 编写第一个Android 程序....................................16
2.1.1 使用Eclipse 创建Android 工程............................16
2.1.2 编译生成APK 文件........................................19
2.2 破解第一个程序............................................20
2.2.1 如何动手?..............................................20
2.2.2 反编译APK 文件..........................................20
2.2.3 分析APK 文件............................................21
2.2.4 修改Smali 文件代码......................................26
2.2.5 重新编译APK 文件并签名..................................26
2.2.6 安装测试................................................27
2.3 本章小结..................................................28
第3 章 进入ANDROID DALVIK 虚拟机..............................29
3.1 Dalvik 虚拟机的特点——掌握Android 程序的运行原理...........29
3.1.1 Dalvik 虚拟机概述.......................................29
3.1.2 Dalvik 虚拟机与Java 虚拟机的区别........................29
3.1.3 Dalvik 虚拟机是如何执行程序的...........................34
3.1.4 关于Dalvik 虚拟机JIT(即时编译)........................36
3.2 Dalvik 汇编语言基础为分析Android 程序做准备...............37
3.2.1 Dalvik 指令格式.........................................37
3.2.2 DEX 文件反汇编工具......................................39
3.2.3 了解Dalvik 寄存器.......................................40
3.2.4 两种不同的寄存器表示方法——v 命名法与p 命名法............42
3.2.5 Dalvik 字节码的类型、方法与字段表示方法.................43
3.3 Dalvik 指令集.............................................44
3.3.1 指令特点................................................45
3.3.2 空操作指令..............................................45
3.3.3 数据操作指令............................................46
3.3.4 返回指令................................................46
3.3.5 数据定义指令............................................46
3.3.6 锁指令..................................................47
3.3.7 实例操作指令............................................47
3.3.8 数组操作指令............................................48
3.3.9 异常指令................................................48
3.3.10 跳转指令...............................................48
3.3.11 比较指令...............................................49
3.3.12 字段操作指令...........................................50
3.3.13 方法调用指令...........................................50
3.3.14 数据转换指令...........................................51
3.3.15 数据运算指令...........................................51
3.4 Dalvik 指令集练习——写一个Dalvik 版的Hello World...........52
3.4.1 编写smali 文件..........................................52
3.4.2 编译smali 文件..........................................54
3.4.3 测试运行................................................54
3.5 本章小结..................................................55
第4 章 ANDROID 可执行文件.....................................56
4.1 Android 程序的生成步骤....................................56
4.2 Android 程序的安装流程....................................59
4.3 dex 文件格式..............................................66
4.3.1 dex 文件中的数据结构....................................66
4.3.2 dex 文件整体结构........................................68
4.3.3 dex 文件结构分析........................................71
4.4 odex 文件格式.............................................80
4.4.1 如何生成odex 文件.......................................80
4.4.2 odex 文件整体结构.......................................81
4.4.3 odex 文件结构分析.......................................83
4.5 dex 文件的验证与优化工具dexopt 的工作过程.................88
4.6 Android 应用程序另类破解方法..............................91
4.7 本章小结..................................................93
第5 章 静态分析ANDROID 程序...................................94
5.1 什么是静态分析............................................94
5.2 快速定位Android 程序的关键代码............................94
5.2.1 反编译apk 程序..........................................94
5.2.2 程序的主Activity........................................95
5.2.3 需重点关注的Application 类..............................95
5.2.4 如何定位关键代码——六种方法..............................96
5.3 smali 文件格式............................................97
5.4 Android 程序中的类.......................................100
5.4.1 内部类.................................................100
5.4.2 监听器.................................................102
5.4.3 注解类.................................................105
5.4.4 自动生成的类...........................................108
5.5 阅读反编译的smali 代码...................................110
5.5.1 循环语句...............................................110
5.5.2 switch 分支语句........................................115
5.5.3 try/catch 语句.........................................121
5.6 使用IDA Pro 静态分析Android 程序.........................127
5.6.1 IDA Pro 对Android 的支持...............................127
5.6.2 如何操作...............................................128
5.6.3 定位关键代码——使用IDA Pro 进行破解的实例...............132
5.7 恶意软件分析工具包——Androguard ..........................135
5.7.1 Androguard 的安装与配置................................135
5.7.2 Androguard 的使用方法..................................137
5.7.3 使用Androguard 配合Gephi 进行静态分析..................144
5.7.4 使用androlyze.py 进行静态分析..........................148
5.8 其它静态分析工具.........................................152
5.9 阅读反编译的Java 代码....................................152
5.9.1 使用dex2jar 生成jar 文件...............................152
5.9.2 使用jd-gui 查看jar 文件的源码..........................153
5.10 集成分析环境——santoku ..................................154
5.11 本章小结................................................156
第6 章 基于ANDROID 的ARM 汇编语言基础逆向原生! .............157
6.1 Android 与ARM处理器......................................157
6.1.1 ARM 处理器架构概述.....................................157
6.1.2 ARM 处理器家族.........................................158
6.1.3 Android 支持的处理器架构...............................159
6.2 原生程序与ARM 汇编语言——逆向你的原生Hello ARM ...........160
6.2.1 原生程序逆向初步.......................................160
6.2.2 原生程序的生成过程.....................................162
6.2.3 必须了解的ARM 知识.....................................164
6.3 ARM 汇编语言程序结构.....................................166
6.3.1 完整的ARM汇编程序......................................166
6.3.2 处理器架构定义.........................................167
6.3.3 段定义.................................................168
6.3.4 注释与标号.........................................,,,,169
6.3.5 汇编器指令.............................................169
6.3.6 子程序与参数传递.......................................170
6.4 ARM 处理器寻址方式.......................................170
6.4.1 立即寻址...............................................170
6.4.2 寄存器寻址.............................................171
6.4.3 寄存器移位寻址.........................................171
6.4.4 寄存器间接寻址.........................................171
6.4.5 基址寻址...............................................171
6.4.6 多寄存器寻址...........................................171
6.4.7 堆栈寻址...............................................172
6.4.8 块拷贝寻址.............................................172
6.4.9 相对寻址...............................................172
6.5 ARM与Thumb 指令集........................................173
6.5.1 指令格式...............................................173
6.5.2 跳转指令...............................................174
6.5.3 存储器访问指令.........................................175
6.5.4 数据处理指令...........................................177
6.5.5 其它指令...............................................184
6.6 用于多媒体编程与浮点计算的NEON 与VFP 指令集..............185
6.7 本章小结.................................................186
第7 章 ANDROID NDK 程序逆向分析..............................187
7.1 Android 中的原生程序.....................................187
7.1.1 编写一个例子程序.......................................187
7.1.2 如何编译原生程序.......................................188
7.2 原生程序的启动流程分析...................................194
7.2.1 原生程序的入口函数.....................................194
7.2.2 main 函数究竟何时被执行................................198
7.3 原生文件格式.............................................199
7.4 原生C 程序逆向分析.......................................200
7.4.1 原生程序的分析方法.....................................200
7.4.2 for 循环语句反汇编代码的特点...........................204
7.4.3 if...else 分支语句反汇编代码的特点.....................208
7.4.4 while 循环语句反汇编代码的特点.........................211
7.4.5 switch 分支语句反汇编代码的特点........................215
7.4.6 原生程序的编译时优化...................................218
7.5 原生C++程序逆向分析......................................222
7.5.1 C++类的逆向............................................222
7.5.2 Android NDK 对C++特性的支持............................225
7.5.3 静态链接STL 与动态链接STL 的代码区别...................227
7.6 Android NDK JNI API 逆向分析.............................232
7.6.1 Android NDK 提供了哪些函数.............................232
7.6.2 如何静态分析Android NDK 程序...........................233
7.7 本章小结.................................................235
第8 章 动态调试ANDROID 程序..................................236
8.1 Android 动态调试支持.....................................236
8.2 DDMS 的使用..............................................237
8.2.1 如何启动DDMS...........................................237
8.2.2 使用LogCat 查看调试信息................................238
8.3 定位关键代码.............................................240
8.3.1 代码注入法——让程序自己吐出注册码.......................240
8.3.2 栈跟踪法...............................................244
8.3.3 Method Profiling.......................................247
8.4 使用AndBug 调试Android 程序..............................250
8.4.1 安装AndBug.............................................251
8.4.2 使用AndBug.............................................251
8.5 使用IDA Pro 调试Android 原生程序.........................254
8.5.1 调试Android 原生程序...................................255
8.5.2 调试Android 原生动态链接库.............................256
8.6 使用gdb 调试Android 原生程序.............................260
8.6.1 编译gdb 与gdbserver ...................................260
8.6.2 如何调试...............................................262
8.7 本章小结.................................................264
第9 章 ANDROID 软件的破解技术................................265
9.1 试用版软件...............................................265
9.1.1 试用版软件的种类.......................................265
9.1.2 实例破解——针对授权KEY 方式的破解.......................265
9.2 序列号保护...............................................271
9.3 网络验证.................................................272
9.3.1 网络验证保护思路.......................................272
9.3.2 实例破解——针对网络验证方式的破解.......................273
9.4 In-app Billing(应用内付费) ............................277
9.4.1 In-app Billing 原理....................................277
9.4.2 In-app Billing 破解方法................................280
9.5 Google Play License 保护.................................281
9.5.1 Google Play License 保护机制...........................281
9.5.2 实例破解——针对Google Plag License 方式的破解...........283
9.6 重启验证.................................................284
9.6.1 重启验证保护思路.......................................285
9.6.2 实例破解——针对重启验证方式的破解.......................285
9.7 如何破解其它类型的Android 程序...........................296
9.7.1 Mono for Android 开发的程序及其破解方法................296
9.7.2 Qt for Android 开发的程序及其破解方法..................301
9.8 本章小结.................................................309
第10 章 ANDROID 程序的反破解技术.............................310
10.1 对抗反编译..............................................310
10.1.1 如何对抗反编译工具....................................310
10.1.2 对抗dex2jar...........................................311
10.2 对抗静态分析............................................312
10.2.1 代码混淆技术..........................................312
10.2.2 NDK 保护..............................................315
10.2.3 外壳保护..............................................316
10.3 对抗动态调试............................................316
10.3.1 检测调试器............................................316
10.3.2 检测模拟器............................................317
10.4 防止重编译..............................................318
10.4.1 检查签名..............................................318
10.4.2 校验保护..............................................319
10.5 本章小结................................................320
第11 章 ANDROID 系统攻击与防范...............................321
11.1 Android 系统安全概述....................................321
11.2 手机ROOT 带来的危害.....................................321
11.2.1 为什么要ROOT 手机.....................................321
11.2.2 手机ROOT 后带来的安全隐患.............................322
11.2.3 Android 手机ROOT 原理.................................322
11.3 Android 权限攻击........................................329
11.3.1 Android 权限检查机制..................................329
11.3.2 串谋权限攻击..........................................333
11.3.3 权限攻击检测..........................................336
11.4 Android 组件安全........................................339
11.4.1 Activity 安全及Activity 劫持演示......................340
11.4.2 Broadcast Receiver 安全...............................343
11.4.3 Service 安全..........................................345
11.4.4 Content Provider 安全.................................346
11.5 数据安全................................................347
11.5.1 外部存储安全..........................................347
11.5.2 内部存储安全..........................................348
11.5.3 数据通信安全..........................................350
11.6 ROM安全.................................................351
11.6.1 ROM的种类.............................................352
11.6.2 ROM的定制过程.........................................352
11.6.3 定制ROM 的安全隐患....................................359
11.6.4 如何防范..............................................360
11.7 本章小结................................................361
第12 章 DROIDKONGFU 变种病毒实例分析.........................362
12.1 DroidKongFu 病毒介绍....................................362
12.2 配置病毒分析环境........................................363
12.3 病毒执行状态分析........................................364
12.3.1 使用APIMonitor 初步分析...............................365
12.3.2 使用DroidBox 动态分析.................................369
12.3.3 其它动态分析工具......................................373
12.4 病毒代码逆向分析........................................376
12.4.1 Java 层启动代码分析...................................376
12.4.2 Native 层启动代码分析.................................381
12.4.3 Native 层病毒核心分析.................................393
12.5 DroidKongFu 病毒框架总结................................404
12.6 病毒防治................................................406
12.7 本章小结................................................406

回复即可下载0~_~0

游客,如果您要查看本帖隐藏内容请回复

游客,如果您要查看本帖隐藏内容请回复



回复

使用道具 举报

ab1582379419
等级头衔

等級:编程菜鸟

Rank: 2

积分成就
易币
贡献
主题
精华
金钱
积分
107
注册时间
2016-11-30
最后登录
1970-1-1

勋章墙

2017-1-1 22:26:25 | 显示全部楼层
sghfj哈哈!又更新了,收藏了.哈哈!又更新了,收藏了.
回复

使用道具 举报

已绑定手机
wojiushiquanye
等级头衔

等級:顶级Vip

Rank: 14Rank: 14Rank: 14Rank: 14

积分成就
易币
贡献
主题
精华
金钱
积分
213
注册时间
2017-2-1
最后登录
1970-1-1

勋章墙

2017-5-25 16:41:24 | 显示全部楼层
谢谢大大  非常感谢感激不尽
回复

使用道具 举报

已绑定手机
已实名认证
易学霸
等级头衔

等級:顶级Vip

Rank: 14Rank: 14Rank: 14Rank: 14

积分成就
易币
贡献
主题
精华
金钱
积分
607
注册时间
2016-1-16
最后登录
1970-1-1

勋章墙

2016-2-12 01:30:12 | 显示全部楼层
这个牛了,不知道看不看得懂,最近用得着
回复

使用道具 举报

已绑定手机
Bill-ck
等级头衔

等級:编程起步

Rank: 5Rank: 5

积分成就
易币
贡献
主题
精华
金钱
积分
630
注册时间
2015-11-12
最后登录
1970-1-1

勋章墙

2016-1-13 12:46:27 | 显示全部楼层
66666666666下载看看
回复

使用道具 举报

已绑定手机
卟懂
等级头衔

等級:顶级Vip

Rank: 14Rank: 14Rank: 14Rank: 14

积分成就
易币
贡献
主题
精华
金钱
积分
766
注册时间
2014-11-14
最后登录
1970-1-1

勋章墙

2016-1-14 13:04:04 | 显示全部楼层
下载看看.......
回复

使用道具 举报

不堪回首
等级头衔

等級:编程起步

Rank: 5Rank: 5

积分成就
易币
贡献
主题
精华
金钱
积分
1038
注册时间
2014-12-12
最后登录
1970-1-1

勋章墙

2016-1-16 17:31:12 | 显示全部楼层
好定咱。。。
回复

使用道具 举报

已绑定手机
归零
等级头衔

等級:顶级Vip

Rank: 14Rank: 14Rank: 14Rank: 14

积分成就
易币
贡献
主题
精华
金钱
积分
9273
注册时间
2015-11-10
最后登录
1970-1-1

勋章墙

2016-1-17 10:40:21 | 显示全部楼层
回复即下载,谢谢
回复

使用道具 举报

已绑定手机
花好月圆夜
等级头衔

等級:顶级Vip

Rank: 14Rank: 14Rank: 14Rank: 14

积分成就
易币
贡献
主题
精华
金钱
积分
993
注册时间
2015-12-10
最后登录
1970-1-1

勋章墙

2016-1-22 13:31:11 | 显示全部楼层
66666666666下载看看
回复

使用道具 举报

已绑定手机
kafeimao176
等级头衔

等級:编程入门

Rank: 4

积分成就
易币
贡献
主题
精华
金钱
积分
699
注册时间
2016-1-31
最后登录
1970-1-1

勋章墙

2016-3-24 11:03:14 | 显示全部楼层
谢谢楼主分享
回复

使用道具 举报

已绑定手机
1530787462
等级头衔

等級:编程入门

Rank: 4

积分成就
易币
贡献
主题
精华
金钱
积分
493
注册时间
2015-11-14
最后登录
1970-1-1

勋章墙

2016-3-28 23:22:53 | 显示全部楼层
感谢
回复

使用道具 举报

money1314
等级头衔

等級:编程学徒

Rank: 3Rank: 3

积分成就
易币
贡献
主题
精华
金钱
积分
308
注册时间
2016-3-3
最后登录
1970-1-1

勋章墙

2016-5-24 10:46:45 | 显示全部楼层
支持学习一下~~~
回复

使用道具 举报

如果懒得打字,请选择右侧内容快捷回复 提醒:以任何方式进行『恶意灌水』的行为,进行封号处理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

热点推荐上一条 /5 下一条

QQ|网站地图|手机版|小黑屋|乐易论坛-乐易网 | 湘ICP备19007035号

拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表乐易立场!

娄底市乐易网络科技有限公司声明:乐易原创培训课程版权均为我公司所有,未经许可,不得擅自翻录,盗版,破解本站课课程,我们将保留法律诉讼的权利

GMT+8, 2024-5-6 18:50 , Processed in 0.073358 second(s), 86 queries .

Powered by Discuz! X3.4

Copyright © Tencent Cloud.

快速回复 返回顶部 返回列表