Code Signing

Jump to: navigation, search
Code Signing
ID T1116
Tactic Defense Evasion
Platform Windows Server 2003, Windows Server 2008, Windows Server 2012, Windows XP, Windows 7, Windows 8, Windows Server 2003 R2, Windows Server 2008 R2, Windows Server 2012 R2, Windows Vista, Windows 8.1
Data Sources Binary file metadata
Defense Bypassed Windows User Account Control

Code signing provides a level of authenticity on a binary from the developer and a guarantee that the binary has not been tampered with.1 However, adversaries are known to use code signing certificates to masquerade malware and tools as legitimate binaries. The certificates used during an operation may be created, forged, or stolen by the adversary.23

Code signing certificates may be used to bypass security policies that require signed code to execute on a system.


  • Darkhotel has used code-signing certificates on its malware that are either forged due to weak keys or stolen.4
  • Molerats has used forged Microsoft code-signing certificates on malware.5
  • Suckfly has used stolen certificates to sign its malware.6
  • Winnti Group used stolen certificates to sign its malware.7
  • Regin stage 1 modules for 64-bit systems have been found to be signed with fake certificates masquerading as originating from Microsoft Corporation and Broadcom Corporation.8
  • Turla has used valid digital certificates from Sysprint AG to sign its Epic dropper.9
  • ChChes samples were digitally signed with a certificate originally used by Hacking Team that was later leaked and subsequently revoked.1011
  • RTM samples have been signed with a code-signing certificates.12


Process whitelisting and trusted publishers to verify authenticity of software can help prevent signed malicious or untrusted code from executing on a system.13142


Collect and analyze signing certificate metadata on software that executes within the environment to look for unusual certificate characteristics and outliers.