加壳

加壳

加壳全称为可执行程序资源压缩,是一种通过特殊算法对可执行文件资源进行压缩保护的技术。压缩后的程序可直接运行,其解压过程在内存中完成,通过优先控制权转移隐藏原始程序入口点(OEP),阻止静态反编译和动态分析。加壳工具分为压缩壳和加密壳两类,压缩壳以减小软件体积为主,加密壳侧重于代码保护并可附加注册机制等功能限制。在Android平台称为加固技术,包含整体Dex加固、拆分Dex加固及虚拟机加固等方式,通过替换application/classes.dex或拆分Dex文件防止反编译,虚拟机加固会对字节码进行变化处理 。

木马或病毒常利用加壳技术封装恶意代码以绕过杀毒软件检测,部分网络犯罪案件中存在通过加壳实施免杀技术的案例 。判断APK是否加壳可通过检查特定SO文件、包名或使用查壳工具识别外壳Application和解密代码的so文件 。

想要了解更多“加壳”的信息,请点击:加壳百科

标签:加壳,加壳,解压,核心技术