Skip to main content
QUICK REVIEW

[论文解读] Van Wijngaarden grammars, metamorphism and K-ary malwares

Gueguen Geoffroy|arXiv (Cornell University)|Sep 21, 2010
semigroups and automata theory参考文献 7被引用 3
一句话总结

本文提出利用范·威杰纳德语法(Van Wijngaarden grammars)的形式化方法,通过其强大的表达能力编码组件间的语义一致性与相互依赖关系,实现对K-ary恶意软件——即跨K个文件协同运作的单个病毒——的构造性、不可检测的变形生成。该方法借助上下文敏感重写与共享信息传播,实现K-ary病毒的不可见变形生成。

ABSTRACT

Grammars are used to describe sentences structure, thanks to some sets of rules, which depends on the grammar type. A classification of grammars has been made by Noam Chomsky, which led to four well-known types. Yet, there are other types of grammars, which do not exactly fit in Chomsky's classification, such as the two-level grammars. As their name suggests it, the main idea behind these grammars is that they are composed of two grammars. Van Wijngaarden grammars, particularly, are such grammars. They are interesting by their power (expressiveness), which can be the same, under some hypotheses, as the most powerful grammars of Chomsky's classification, i.e. Type 0 grammars. Another point of interest is their relative conciseness and readability. Van Wijngaarden grammars can describe static and dynamic semantic of a language. So, by using them as a generative engine, it is possible to generate a possibly infinite set of words, while assuring us that they all have the same semantic. Moreover, they can describe K-ary codes, by describing the semantic of each components of a code.

研究动机与目标

  • 使用范·威杰纳德语法形式化K-ary恶意软件的生成过程,以支持跨分布式代码部分的复杂语义约束。
  • 通过支持共享语义信息的自动、构造性生成,克服传统多态与变形恶意软件的局限性,实现K-ary病毒的自动构造。
  • 提供一个形式化框架,支持不可判定或NP难的识别问题,使检测在本质上极为困难。
  • 将K-ary病毒的分布式特性建模为统一的语法系统,其中每个组件均基于共享上下文生成。
  • 证明范·威杰纳德语法可作为超越乔姆斯基层级的高级恶意软件家族的强大生成引擎。

提出的方法

  • 使用范·威杰纳德语法,其由两个上下文无关文法和一个统一替换规则组成,以定义K-ary恶意软件组件的结构与语义。
  • 定义起始符号S以生成病毒的所有K个部分,每个部分通过依赖共享上下文信息(INFOS)的语法生成。
  • 应用超规则将每个组件(如PART1 INFOS、PART2 INFOS)绑定至生成句法不同但语义等价代码的语法。
  • 使用⊕运算符从输入文件中选择子词,并检查是否存在任何形式构成语言L(Gv)中的有效病毒词,以建立K-ary病毒关系Rv。
  • 利用统一替换规则强制执行上下文敏感条件,使生成过程中各组件保持语义一致性。
  • 通过递归应用带共享INFOS的语法规则,构造性地生成K-ary恶意软件,实现在每个组件上动态变异与变形。

实验结果

研究问题

  • RQ1范·威杰纳德语法能否用于形式化定义并生成具有分布式、语义协调组件的K-ary恶意软件?
  • RQ2如何利用范·威杰纳德语法的表达能力,建模多个代码文件间变形变换的机制?
  • RQ3何种形式化机制可使K-ary病毒在各组件间保持语义等价性,同时实现句法多样性?
  • RQ4范·威杰纳德语法在何种方式下支持恶意软件识别的不可判定性或NP难性,从而增强逃避检测的能力?
  • RQ5如何在K个独立文件间一致地传播共享上下文信息(INFOS),以确保完整病毒的功能一致性?

主要发现

  • 范·威杰纳德语法可生成无限多个句法不同但语义等价的恶意软件变体,包括K-ary病毒。
  • 在组件间共享INFOS上下文,使即使在每个文件中发生句法变异,也能保持一致的语义行为。
  • 该形式化方法支持K-ary恶意软件的构造性生成,为自动、不可检测的代码生成提供了概念验证。
  • 语法通过统一替换机制表达上下文敏感条件的能力,使复杂依赖关系在分布式病毒组件间得以建模。
  • 通过范·威杰纳德语法定义的K-ary病毒不适用于科恩原始病毒模型,因其并非单一序列,而是分布式程序。
  • 此类生成恶意软件的识别问题本质上困难(NP难或不可判定),使基于特征码的检测方法完全无效。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。