我是编程乐趣,一个10年.Net开发经验老程序员,点击右上方“关注”,每天为你分享开源项目和编程知识。对于我们程序员来说,平常开发的桌面应用程序,如果不进行一定程度的加密、混淆,是很容易通过反编译手段进行破解的,特别是一些商业用途的C#软件,更是容易被破解。
前面,我多次提到一些C# DLL的反编译工具,在我们没有对我们的程序有任何保护措施的情况下,别人利用这些工具很轻松的就能生成与原始源代码类似的高级代码,所以,我们需要混淆加密来让程序更加的安全,让别人不能那么轻易的获取到我们的劳动果实。
在之前的文章都主要都是对APK文件进行信息收集,而信息收集后就需要对APP漏洞进行挖掘,但是从本质上来看,APP其实就是将原先应该部署在网站上的页面塞入APP中,所有的调用都是给予服务器,而且在对WEB漏洞进行挖掘的时候,除了部分漏洞是基于本地页面所导致的,其它的可以说基本上就是由于服务端的问题。
目前针对移动应用市场上安卓APP被破解、反编译、盗版丛生的现象,很多APP开发人员已经意识到保护APP的重要性。而对于移动应用APP加密保护的问题,如何对DEX文件加密尤为重要。那么接下来,我们就先介绍一下什么是App加壳和加壳的原理,利与弊等。一、什么是加壳?
在 APK 信息的对话框中,点击功能后弹出菜单,除了前面介绍过的 APK 签名和 XML 翻译模式外,还可以看到 APK 优化、APK 共存、RES 资源混淆、RES 反资源混淆、去除签名校验,后面两个功能需要开通 VIP 才能使用。
Android平台以其免费和开源的特性使其占据了移动领域大半壁江山,越来越的人投身到移动应用开发中,但本文恐怕要先给Android应用开发者泼盆冷水,据360发布的《2014年中国手机安全状况报告》显示,2014全年,360互联网安全中心累计监测到Android用户感染恶意程序3