上篇文章介绍了so加壳(加密特定section)的原理,回顾点这。这篇文章将介绍如何使加壳的so正常运行。 1.动态解密原理 在上篇文章说的加壳原理中,将特定section的长度和偏移分别写入so头部的e_entry和e_shoff字段,那么在解密时只需读取这两个字段即可找到特定section的偏移。接下来还需解决以下几个问题: 如何找到so被加载的起始地址 什么时候进行解密 如何动态修改内存权限 问题一:...

上篇文章介绍了so加壳需要了解的elf文件格式回顾点我,这篇将介绍so加壳的原理,并且给出python版源码。 1.加壳原理 本加固方案实现对特定section进行整体加密。对特定section进行整体加密需要解决以下几个问题: 如何找到特定的section 使用什么方法加密 是否可以简化解密操作 读过上一篇blog的话,第一个问题就很简单了。只要读取每个section的名字与要被加密的section名比较即可;第...

1.SO加固系列 dex加壳是保护APK的一种方式,然而只有dex加壳会影响APK的加载速度,另外通过内存dump也能轻易还原出原dex,在专业的加固方案中除了dex加壳还能经常见到对SO的保护,本系列文章将介绍基本的SO加固方案。本文是SO加固系列的第一篇,主要介绍SO加固时所需要用到的ELF中Section的相关知识。 2.ELF中的Section ELF文件格式具体有三种类型: 可重定位...

+
跳转到评论