- 定价:¥99.00
- 校园优惠价:¥62.37 (63折) (马上了解)
- 评分:
(已有0条评价)
- 电子书:Android应用安全防护和逆向分析
- 促销活动:
- 我要买:
基本信息

内容简介
计算机书籍
本书全面介绍Android应用的安全防护方法与逆向分析技术,分为四篇:基础篇、防护篇、工具篇、操作篇,共26章。基础篇包括第1~7章,主要介绍移动应用安全的基础知识,包括Android中NDK开发知识、逆向中需要用到的命令、编译之后的apk包含的四类主要文件格式解析等。防护篇包括第8~14章,主要介绍移动应用安全防护的相关技术,包括混淆、签名校验、反调试检测等安全策略,Android应用升级权限、降低权限等,配置文件中的问题,应用签名机制,apk的加固策略,so文件的加固策略等。工具篇包括第15~19章,主要介绍逆向分析常用的工具以及使用场景,包括如何开启设备的总调试开关,反编译利器apktool、Jadx、Xposed、CydiaSubstrate等。操作篇包括第20~26章,主要介绍Android中的逆向分析技巧,包括静态方式和动态方式,介
目录
前言
基础篇
第1章 Android中锁屏密码加密算法分析 2
1.1 锁屏密码方式 2
1.2 密码算法分析 2
1.2.1 输入密码算法分析 2
1.2.2 手势密码算法分析 7
1.3 本章小结 9
第2章 Android中NDK开发 10
2.1 搭建开发环境 10
2.1.1 Eclipse环境搭建 10
2.1.2 Android Studio环境搭建 12
2.2 第一行代码:HelloWorld 14
2.3 JNIEnv类型和jobject类型 18
2.3.1 JNIEnv类型 19
2.3.2 jobject参数obj 19
2.3.3 Java类型和native中的类型映射关系 19
2.3.4 jclass类型 19
2.3.5 native中访问Java层代码 20
前言
我本来不是从事安全逆向工作的,但是一个偶然的机会使我发现逆向研究非常有趣,因为在逆向出别人的App那一刻会觉得无比自豪。
第一次逆向是因为遇到一个问题需要去解决,记得当时想查看一个App的内部资源信息,尝试使用apktool反编译程序,惊奇地发现原来别人的App反编译之后会有这么多东西,逆向真的很有趣。而后在开发中无法实现或者没有相应的资源时就去反编译别人的App,查看对应的代码怎么实现。后来就反编译那些有阻碍的应用,慢慢摸索,克服困难,每研究成功一个案例,便是对自身技能的一次提高。从第一次使用apktool工具,到使用Jadx可视化工具,再到用IDA工具调试,一步一个脚印走过来,经验逐渐丰富,技能也慢慢提升了。
逆向研究需要一种逆向思维,我没有接受过专业训练,只是在业余时间看相关书籍,找几个样本研究,从简单到难,在这个过程中慢慢学到很多技术。本书就是我这几年学习与探索的总结。
本书涉及内容有点多,但是没有一章是多余的,每章内容都是干货。本书包括26章,分为四篇。
基础篇
基础篇包括第1~7章,主要介绍Android技术中与逆向相关的基础知识,为后续章节的学习做准备。
第1章通过对Android中锁屏密码加密算法的分析,带领读者进入安全世界,这方面内容不算复杂,但是需要阅读Android源码来得到算法分析,其中一个知识点是如何通过查看Android源码来帮助解决开发过程中遇到的问题,这是所有Android开发人员必备的技能。通过找到锁屏密码入口,一步一步跟踪最终得到密码加密算法,以及加密之后的内容存放在哪里。这是进入安全逆向分析世界的大门。
第2章主要介绍Android中NDK开发知识。为了安全考虑,现在很多应用把一部分功能做到了Native层,所以如果不知道NDK开发技巧,就无法进行后续的逆向操作。这一章从搭建环境到每个方法的使用,详细讲解了Android中NDK开发的技巧。
第3章主要介绍Android中开发以及逆向需要用到的命令,每个命令都有特定的案例和用法,这些命令不仅仅用于逆向,也能够帮助开发人员提升开发效率,所以了解和掌握这些命令是至关重要的。
第4~7章主要剖析Android中编译之后的apk包含的四类主要文件格式,这部分内容可能有点枯燥,但是至关重要,因为在安全防护或者逆向分析中都有很重要的意义。
防护篇
防护篇包括第8~14章,主要介绍安全防护的相关内容,是本书的核心内容之一。
第8章介绍现在一些应用主要用到的安全防护策略,如混淆、签名校验、反调试检测等,每个安全策略都给出了详细介绍。
第9章介绍Android开发中经常用到的一些权限,介绍如果对这些特殊权限操作不当会带来什么样的安全问题,以及如何预防。
第10章介绍Android中的run-as命令以及如何分析系统安全策略,详细介绍了App、shell、system这三种身份,并介绍了一些技巧,比如如何对应用进行升级权限、降低权限等操作。
第11章讲解Android配置文件中的allowBackup属性引发的安全问题,以及如何应对。本章用一个案例来分析如何导出沙盒数据查看应用中的密码信息,修改密码信息然后再进行还原,全程无需root权限即可完成。
第12章介绍Android中的应用签名机制,讲解应用的签名信息是如何保存的、如何验证的,签名机制的流程,以及如何预防安全问题。
第13章介绍在Android中对apk进行加固的策略,以及如何对恶意者分析apk文件的操作进行防护,还涉及Android中的动态加载机制,并通过动态加载技术实现apk文件的解密功能。
第14章介绍在Android中如何对so文件加固,如何做到安全防护功能。
媒体评论
——周鸿祎,360公司创始人、董事长兼CEO,知名天使投资人
本书作者的技术搏客在CSDN上有超过500万人次的总访问量!
为什么这么多人会关注Android安全技术?因为不仅Android安全技术越来越重要,而且要成为真正的开发高手需要从正反两个方面来学习:从正面学习Android编程类别API,逐层学习App开发,从反面(逆向研究APK代码)学习Android系统如何运行的,其他软件是如何实现特定功能的,这样获得的Android知识更加系统全面。作者在书中有非常详细的案例讲解,也提供了大量的工具源码,是Android开发人员逆向学习研究的极好工具手册,可以帮助Android开发者成为更全面的Android高手。
——蒋涛,CSDN创始人,极客帮基金创始人
Android系统应用面越来越广,从移动手机到智能硬件,都有很高的覆盖率,其引发的安全问题危害也越来越大。作者以实际操作讲解的同时,还特别重视一些原理的介绍,可以帮助读者快速提升Android安全技术水平。
——段钢,看雪学院创始人
安全领域是一个冒险的世界,作者结合自己在这个领域的丰富经验,用生动的案例带领读者在这个世界中探险。本书章节安排精心合理,技术点循序渐进,使用了大量带有标注的配图,清晰且直观,属于难得一见的用心之作。
——泮晓波,顶象技术移动安全实验室负责人、合伙人
本书的作者在信息安全领域的多年经验,加上纯粹的技术分享精神,注定了这是一本值得广大安全爱好者期待的好书,本书完整地向你诠释——掌握了安全技术的底层原理,你就掌握了安全的一切。
——丰生强(网名:非虫),国内知名安全专家
随着移动应用的普及,移动应用的安全也随之成为一个严肃而重要的问题。要解决该问题所需要学习的内容非常多,对初学者而言,一本合适的入门书籍将起到承前启后的重要作用。而本书就恰恰是这样的一本书籍,它既涵盖了入门者所必须掌握的基础知识,又精选了许多安全领域中的典型实例并对它们开展了详细讲解。最后,希望作者能再接再厉,对本书内容进行持续更新。
——邓凡平