Deobfuscate/Decode Files or Information

From enterprise
Jump to: navigation, search
Deobfuscate/Decode Files or Information
ID T1140
Tactic Defense Evasion
Platform Windows
Permissions Required User
Data Sources File monitoring, Process Monitoring, Process command-line parameters
Defense Bypassed Anti-virus, Host intrusion prevention systems, Signature-based detection, Network intrusion detection system
Contributors Matthew Demaske, Adaptforward

Adversaries may use Obfuscated Files or Information to hide artifacts of an intrusion from analysis. They may require separate mechanisms to decode or deobfuscate that information depending on how they intend to use it. Methods for doing that include built-in functionality of malware, Scripting, PowerShell, or by using utilities present on the system.

One such example is use of certutil to decode a remote access tool portable executable file that has been hidden inside a certificate file.1


  • APT34 has used certutil to decode base64-encoded files on victims.2
  • BRONZE BUTLER downloads encoded payloads and decodes them on the victim.3
  • A OilRig macro has run a PowerShell command to decode file contents.4
  • ISMInjector uses the certutil command to decode a payload file.4
  • Starloader decrypts and executes shellcode from a file called Stars.jps.5
  • certutil has been used to decode binaries hidden inside certificate files as Base64 information.1


Identify unnecessary system utilities or potentially malicious software that may be used to deobfuscate or decode files or information, and audit and/or block them by using whitelisting6 tools, like AppLocker,78 or Software Restriction Policies9 where appropriate.10


Detecting the action of deobfuscating or decoding files or information may be difficult depending on the implementation. If the functionality is contained within malware and uses the Windows API, then attempting to detect malicious behavior before or after the action may yield better results than attempting to perform analysis on loaded libraries or API calls. If scripts are used, then collecting the scripts for analysis may be necessary. Perform process and command-line monitoring to detect potentially malicious behavior related to scripts and system utilities such as certutil.