Hasty Briefsbeta

双语

Standard Control Flow Flattening is fundamentally broken

4 days ago
  • #reverse engineering
  • #code obfuscation
  • #static analysis
  • 控制流平坦化(CFF)在OLLVM/Hikari中由于依赖数据区的调度表、可写的状态变量和混合布尔算术(MBA)常量,在结构上易受静态分析攻击,这些特征无需动态分析即可识别。
  • CFFDispatchTracer是一个Ghidra脚本,通过扫描特定模式、利用这些不变性,并迭代构建知识库,自动解析CFF调度条目,在测试的二进制文件中恢复率达到95.8%。
  • 测试的商业防篡改/防欺诈SDK(包括一个1.2MB的防欺诈SDK)在几小时内被完全反混淆,揭示出复杂的混淆通常仅掩盖简单的操作(如令牌透传)。
  • 相比代码虚拟化或服务器端认证等替代方案,CFF较弱,但由于其低开销和开源可用性仍被广泛部署,造成了一种虚假的安全感。
  • 供应商应采用更强大的技术(如代码虚拟化、多样化构建或临时代码生成),以提供超越CFF的有效防篡改保护。