【移动安全基础篇】——19、elf文件变形与保护

本文探讨了针对ELF文件的三种混淆方法,包括修改section参数、置零section_header_table及dynamic段添加冗余数据,以及两种混淆后的还原方法。通过实际案例展示了IDA软件在面对混淆后的ELF文件时的识别困难。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. Section  段处理
鉴于 shdr 没有被 linker 用于加载,故可以对 Section 段写入无用数据,可以阻碍静态分
析软件的分析。

2. Program  段处理
Program 段中可以对 dynamic 区段进行混淆,添加重复和无效的数据。

3. Demo  演示
混淆方法一:
将 elf header 中的 section 相关参数置 0

修改后 ida 的识别情况:一些函数无法正常识别

混淆方法二:
将 section_header_table 中的 offset 和 addr 置 0

左侧函数列表很多函数没有被正常识别

如果将所有的 addr 和 offset 都清空掉,那么左侧没有函数被识别

混淆方法三:
dynamic 段添加重复和无用数据,如果要还原的话只需要关注最后一段数据,删除掉之
前重名的数据,因为后面的数据会覆盖掉前面的数据。

混淆还原:
方法一:手动将 start 和 end 地址重新赋值
方法二:将 section 段信息清空为 0(最简单,而且具有普适性)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值