无论是 Android app 还是 Jar 应用,代码一旦分发出去,都会以某种形式处于不可信环境中,难免被有心人分析破解。隐藏在代码中的秘密,无论是私有算法,或是私有协议,或者是加解密秘钥,都可能被攻击者破解出来,然后侵犯原作者的商业利益或知识产权。所以应用被逆向破解是商业风险源头之一。
#1:移动应用安全现状分析
根据工信部的数据显示,截止2019年,中国移动应用数量已经达到 450万个,其中游戏类、生活服务类、电子商务类 App 排名前三。
细分市场,我们再看下金融行业,根据信通院的数据,在2019年,针对国内 22777 款金融行业 App进行观测发现,仅 17.08% 金融行业 App 完成加固,而超过 80% 金融行业 App 在应用市场“裸奔”,未进行任何安全加固。通过金融行业这一个细分行业来看全行业,其他行业也有类似的问题。
我们再看监管政策:
对于金融行业——中国人民银行下发的了移动金融客户端应用软件安全管理规范,明确规范了移动 App 的安全加固要求。对于教育行业——教育部下发的《关于引导规范教育移动互联网应用有序健康发展的意见》以及《高等院校管理服务类教育移动互联网应用专项治理行动方案》,发文明确提出教育App应当经过安全评估后方可上线,并及时通过安全加固修复安全隐患。
通过金融、教育行业的监管要求以及国家对于移动互联网的越来越重视大的背景,后续其他行业也会可能会陆续出台相关的安全政策要求。

#2:全新移动应用安全防护策略
下面介绍下阿里内部移动安全防护策略升级迭代的过程。
在一代和二代的加固方案上,主要针对 APK 的加壳保护,对 dex 做隐藏,同时加密 dex,在运行时动态加载加密的 dex并做解壳操作。加壳加固的优势是不会增加应用的体积,同时dex被隐藏,可以对抗dex的静态分析。
随着攻击手段的不断升级,阿里移动安全加固进行了全新能力的升级。目前已发展到了第三代加固:Java字节码转换为 Native二进制码。
阿里内部加固的原则和目标秉承着既要充分提高自身安全能力,增加对手的破解难度和攻击成本,也要尽量降低业务方的接入成本,还要兼顾运行效率与体积。
应对的主要风险点:
-
Java/Smali 字节码被工具反编译为 Java 源码
-
Java/Smali 字节码被直接阅读
-
native 汇编码被工具反编译为 C 源码
Java 字节码因为格式和指令限制,安全保护能力是有上限的。但是,native 二进制码相对于 Java 字节码破解难度大大提高。于是我们将字节码转换为 native 二进制码,代码逻辑转移到 so 里面,原来是 Java 函数调用,现在变成了 JNI 调用。攻击者的 Java 逆向相关技能直接失效,被逼去逆向 native 二进制,而这个难度远远高于逆向字节码。

#3:mPaaS 移动安全加固重磅上线
结合着阿里内部移动应用安全加固能力的升级,我们在 mPaaS 中对外正式上线移动应用安全加固能力。
针对市面上移动应用普遍存在的破解、篡改、盗版、钓鱼欺诈、内存调试、数据窃取等各类安全风险,mPaaS移动安全加固为 App 提供稳定、简单、有效的安全防护,提升 App 整体安全水平,力保 App 不被破解和攻击。
在应对 Android 常见的攻击手段,比如 反编译、二次打包、动态调试等的同时,我们也注重性能和兼容性。
-
加固能力经历了淘宝、菜鸟等上亿业务的实践,在安全性上有保障;
-
在兼容性上,我们支持 4.2 到 Android Q 的 版本;
-
能够支持 arm、x86、x64 的系统架构,在复杂的环境下稳定运行,奔溃率低;
-
另外,通过对于类的混淆保护,增加攻击者逆向 App 的难度,让攻击无从下手。

产品核心价值
通过前面的介绍,相信大家对于 mPaaS 移动应用加固有了一个初步的认识,下面总结下 mPaaS 移动应用安全加固的优势。
-
操作简单,在控制台上上传加固包即可,开箱即用。开发同学、项目经理等都可以使用;
-
高稳定性和高兼容性,崩溃率极低;
-
经过淘宝等阿里系App的验证,在安全性上有保障;
-
同时支持 Android 4.2 到 Android Q 的系统以及 arm、x86、x64的系统架构;
-
另外,支持 Javabytecode 级别的混淆保护,增加攻击者逆向 App 的成本,最大限度的保障 App 的安全性。

移动安全加固能力清单
我们从反编译保护、防篡改保护、防调试保护等多个维度上做了安全性保障,针对 dex文件、so文件以及各种 hook框架都做了相应的安全策略,能力清单如下:

与此同时,mPaaS移动安全加固还完美兼容 mPaaS 的热修复能力,通过热修复能力,可以快速修复线上版本问题,不需要发版,保障业务的连续性,大家可以到 mPaaS 控制台体验热修复的能力。
性能表现

网络安全入门学习路线
其实入门网络安全要学的东西不算多,也就是网络基础+操作系统+中间件+数据库,四个流程下来就差不多了。
1.网络安全法和了解电脑基础
其中包括操作系统Windows基础和Linux基础,标记语言HTML基础和代码JS基础,以及网络基础、数据库基础和虚拟机使用等...
别被这些看上去很多的东西给吓到了,其实都是很简单的基础知识,同学们看完基本上都能掌握。计算机专业的同学都应该接触了解过,这部分可以直接略过。没学过的同学也不要慌,可以去B站搜索相关视频,你搜关键词网络安全工程师会出现很多相关的视频教程,我粗略的看了一下,排名第一的视频就讲的很详细。
当然你也可以看下面这个视频教程仅展示部分截图:
学到http和https抓包后能读懂它在说什么就行。
2.网络基础和编程语言

3.入手Web安全
web是对外开放的,自然成了的重点关照对象,有事没事就来入侵一波,你说不管能行吗!
想学好Web安全,咱首先得先弄清web是怎么搭建的,知道它的构造才能精准打击。所以web前端和web后端的知识多少要了解点,然后再学点python,起码得看懂部分代码吧。
最后网站开发知识多少也要了解点,不过别紧张,只是学习基础知识。
等你用几周的时间学完这些,基本上算是具备了入门合格渗透工程师的资格,记得上述的重点要重点关注哦!
再就是,要正式进入web安全领域,得学会web渗透,OWASP TOP 10等常见Web漏洞原理与利用方式需要掌握,像SQL注入/XSS跨站脚本攻击/Webshell木马编写/命令执行等。
这个过程并不枯燥,一边打怪刷级一边成长岂不美哉,每个攻击手段都能让你玩得不亦乐乎,而且总有更猥琐的方法等着你去实践。
学完web渗透还不算完,还得掌握相关系统层面漏洞,像ms17-010永恒之蓝等各种微软ms漏洞,所以要学习后渗透。可能到这里大家已经不知所云了,不过不要紧,等你学会了web渗透再来看会发现很简单。
其实学会了这几步,你就正式从新手小白晋升为入门学员了,真的不算难,你上你也行。
4.安全体系
不过我们这个水平也就算个渗透测试工程师,也就只能做个基础的安全服务,而这个领域还有很多业务,像攻防演练、等保测评、风险评估等,我们的能力根本不够看。
所以想要成为一名合格的网络工程师,想要拿到安全公司的offer,还得再掌握更多的网络安全知识,能力再更上一层楼才行。即便以后进入企业,也需要学习很多新知识,不充实自己的技能就会被淘汰。
从时代发展的角度看,网络安全的知识是学不完的,而且以后要学的会更多,同学们要摆正心态,既然选择入门网络安全,就不能仅仅只是入门程度而已,能力越强机会才越多。
尾言
因为入门学习阶段知识点比较杂,所以我讲得比较笼统,最后联合CSDN整理了一套【282G】网络安全从入门到精通资料包,需要的小伙伴可以点击链接领取哦! 网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

文章分析了移动应用面临的安全挑战,特别是金融和教育行业的现状,指出大部分App缺乏安全加固。阿里推出了新的加固策略,将Java字节码转为Native二进制以增强安全性。mPaaS移动安全加固服务应运而生,提供简单易用且高效的保护,包括反编译、防篡改和防调试等多维度安全措施。同时,文章提到了入门网络安全的学习路径,包括网络基础、编程语言和Web安全等方面。

737

被折叠的 条评论
为什么被折叠?



