CAPECattack pattern

CAPEC-188 Reverse Engineering

Low Official page ↗
Abstraction
Meta
Status
Stable
Likelihood of attack
Low
Typical severity
Low
CAPEC version
3.9

Description

An adversary discovers the structure, function, and composition of an object, resource, or system by using a variety of analysis techniques to effectively determine how the analyzed entity was constructed or operates. The goal of reverse engineering is often to duplicate the function, or a part of the function, of an object in order to duplicate or "back engineer" some aspect of its functioning. Reverse engineering techniques can be applied to mechanical objects, electronic devices, or software, although the methodology and techniques involved in each type of analysis differ widely.

Prerequisites

• Access to targeted system, resources, and information.

Skills required

• [High] Understanding of low level programming languages or technologies can be very helpful. For example, when reverse engineering a binary file, an understanding of assembly languages can help to determine the purpose and inner-workings of the code. Another example is reverse engineering an application that relies on networking. Here, an understanding networking protocols can provide insight into application details.

Mitigations

• Employ code obfuscation techniques to prevent the adversary from reverse engineering the targeted entity.

Related

Weakness · CWE (1)

  • CWE-1278 Missing Protection Against Hardware Reverse Engineering Using Integrated Circuit (IC) Imaging Techniques weakness

Referenced by CAPEC · child of (2)

  • CAPEC-167 White Box Reverse Engineering attack pattern
  • CAPEC-189 Black Box Reverse Engineering attack pattern

Referenced by CWE · attack pattern (1)

  • CWE-1278 Missing Protection Against Hardware Reverse Engineering Using Integrated Circuit (IC) Imaging Techniques weakness