【友盟+】开发者社区

移动安全大讲堂第三讲:整体解决方案之Android加固保护

技术那些事 发表于 2017-11-23 15:17:09 |

技术那些事
技术那些事 发表于 2017-11-14 17:19:56 | 显示全部楼层 |阅读模式
昨天给大家讲了APP安全评估的重要性,从今天开始,就给大家来细化一下,分别讲讲Android和ios两个系统下不同APP加密方法吧。
几维安全整体解决方案——Android加固保护几维安全通过对源码保护、反调试保护、内存保护、以及整包的完整性,保证攻击者无法通过逆向分析客户端得到有用的信息。
Dex文件保护
对DEX文件做加密和隐藏处理,运行时再动态解密出来。防止攻击者使用dex2jar、Apktool等破解工具对移动应用做逆向解析处理,从而有效的保护Java源代码的安全性。
So文件保护
字符串加密 功能能够隐藏程序中的关键字符串,使逆向分析无法通过字符串分析程序关键位置和依赖关系,提供逆向分析难度。
对SO文件做加密和自定义加载处理,除此之外还会对SO文件中字符串加密和代码混淆处理,层层防止攻击者提取SO文件和对其二进制代码做反编译和反汇编处理。
LLVM Clang编译器不是直接将源语言翻译为目标语言,而是翻译为一种“中间语言”,之后再由中间语言,利用后端程序和设备翻译为目标平台的汇编语言,而这种中间语言我们称之为“IR指令集”。
Dll文件保护
对dll文件加密,通过整体加密以及特定函数加密,dll在运行时,在内存始终未加密状态,执行时函数粒度解密运行,防止内存dump等攻击。
Cocos2d(Lua)文件保护
1.自定义Lua文件解析器和修改Lua文件字节码,防止Lua文件被通用逆向分析思路dump下来并反编译;
2.通用特殊方式dump下来的Lua文件是不完整的,无法用于分析Lua业务逻辑代码。
动态保护
动态注入
防止攻击者通过动态注入方式注入恶意代码,导致游戏加速、数据修改等行为。
动态调试
防止攻击者通过动态调试的方式调试游戏逻辑。
内存dump
防止攻击者使用内存dump的方式,dump出 游戏核心代码。
内存保护
完整性保护
签名文件完整性
对签名文件MD5值进行完整性校验保护,一旦更改签名,程序将不会被启动(游戏用户采用白名单形式,可以更改CP签名)。
资源文件完整性
根据原始应用的MD5、SHA1、SHA256值来校验此文件是否被篡改过,防止攻击者篡改文件,然后二次打包发布到应用市场上,影响用户的体验和应用的运营。
相对于闭源的ios系统来说,开源的Android系统更加容易被黑客们找到漏洞,并进行不法行为。如此一来,对你和你的家人来说都不是一件好事情。所以,APP应用安全的牢固与否,对于你的生活其实是很重要的一件事情。
推荐阅读:安卓加密 http://www.kiwisec.com/product/apkEncrypt.shtml




上一篇:自定义事件
下一篇:iOS 事件的时长统计



技术那些事
技术那些事 发表于 2017-11-21 11:13:11 | 显示全部楼层
相对于闭源的ios系统来说,开源的Android系统更加容易被黑客们找到漏洞,并进行不法行为。

技术那些事
技术那些事 发表于 2017-11-22 15:45:47 | 显示全部楼层
相对于闭源的ios系统来说,开源的Android系统更加容易被黑客们找到漏洞,并进行不法行为。

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

发表主题

精彩推荐

友盟分享面板与导航栏重叠
急,在线等
将延生农牧向全社会推广的N种理由
作为一名延生农牧的辛勤劳动者,通过日复一日、夜复一夜不辞辛劳地种菜、除草、杀虫、收菜、偷菜、卖菜,我
【友盟+】声明:坚决抵制网络劫持行为!
近期我们收到部分用户反馈,部署了网站统计的代码会“出现广告弹窗”及“浏览器提示不安全警告”的问题。

关注我们

新浪微博
微信

欢迎关注友盟官方微博微信!

在线客服
返回顶部 返回列表