Fine-Grained Static Detection of Obfuscation Transforms Using
  Ensemble-Learning and Semantic Reasoning
  The ability to efficiently detect the software protections used is at a prime
to facilitate the selection and application of adequate deob-fuscation
techniques. We present a novel approach that combines semantic reasoning
techniques with ensemble learning classification for the purpose of providing a
static detection framework for obfuscation transformations. By contrast to
existing work, we provide a methodology that can detect multiple layers of
obfuscation, without depending on knowledge of the underlying functionality of
the training-set used. We also extend our work to detect constructions of
obfuscation transformations, thus providing a fine-grained methodology. To that
end, we provide several studies for the best practices of the use of machine
learning techniques for a scalable and efficient model. According to our
experimental results and evaluations on obfuscators such as Tigress and OLLVM,
our models have up to 91% accuracy on state-of-the-art obfuscation
transformations. Our overall accuracies for their constructions are up to 100%.
