25、误导性恶意软件相似性分析与无虚拟机犯罪软件诱骗技术

误导性恶意软件相似性分析与无虚拟机犯罪软件诱骗技术

一、数据结构混淆相关内容

在数据结构处理方面,有多种情况需要特别关注。

  1. 结构体初始化
    • 对于GCC复合常量表达式和复合字面初始化算法,当使用默认值填充结构体字段时,例如 struct {int a; int b; int c;} bar = {1,2}; c 会被赋予默认值,此时需要调整映射以适应默认值的位置。
    • 还有一种“指定初始化器”,如 struct foo = {.x = 1, .y = 2}; ,元素可以以任意顺序出现,并且由于有字段名,无需提供映射。不过,对于部分元素有字段名而部分没有的混合情况,当前的StructPoly无法处理,这将作为未来的工作方向。
  2. 类型转换和指针算法识别
    StructPoly利用GCC的流敏感过程间类型逃逸分析来识别类型转换和指针算法。逃逸类型包括在类型转换中另一个类型为不透明或通用类型(如 char* )的指针。类型转换通常发生在不同指针类型之间,StructPoly会在三种表达式中拦截类型转换:
    • 显式类型转换表达式 VIEW CONVERT EXPR ,例如 (int*) structp
    • 赋值表达式 MODIFY EXPR ,例如
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值