Code Signing

From enterprise
Jump to: navigation, search
Code Signing
ID T1116
Tactic Defense Evasion
Platform macOS, Windows
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 binaries2. The certificates used during an operation may be created, forged, or stolen by the adversary.34

Code signing to verify software on first run can be used on modern Windows and macOS/OS X systems. It is not used on Linux due to the decentralized nature of the platform.1

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


  • APT37 has signed its malware with an invalid digital certificates listed as “Tencent Technology (Shenzhen) Company Limited.”5
  • CopyKittens digitally signed an executable with a stolen certificate from legitimate company AI Squared.6
  • Darkhotel has used code-signing certificates on its malware that are either forged due to weak keys or stolen.7
  • Leviathan has used stolen code signing certificates used to sign malware.8
  • Molerats has used forged Microsoft code-signing certificates on malware.9
  • Suckfly has used stolen certificates to sign its malware.10
  • Winnti Group used stolen certificates to sign its malware.11
  • ChChes samples were digitally signed with a certificate originally used by Hacking Team that was later leaked and subsequently revoked.121314
  • Turla has used valid digital certificates from Sysprint AG to sign its Epic dropper.15
  • Gazer versions are signed with various valid certificates; one was likely faked and issued by Comodo for "Solid Loop Ltd," and another was issued for "Ultimate Computer Support Ltd."1617
  • Helminth samples have been signed with legitimate, compromised code signing certificates owned by software company AI Squared.18
  • Janicab used a valid AppleDeveloperID to sign the code to get past security restrictions2.
  • The client has been signed by fake and invalid digital certificates.19
  • drops a signed Microsoft DLL to disk.20
  • RTM samples have been signed with a code-signing certificates.21
  • 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.22
  • is digitally signed by Microsoft.23


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


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


  1. a b  Wikipedia. (2015, November 10). Code Signing. Retrieved March 31, 2016.
  2. a b  Thomas. (2013, July 15). New signed malware called Janicab. Retrieved July 17, 2017.
  3. a b  Ladikov, A. (2015, January 29). Why You Shouldn’t Completely Trust Files Signed with Digital Certificates. Retrieved March 31, 2016.
  4. ^  Shinotsuka, H. (2013, February 22). How Attackers Steal Private Keys from Digital Certificates. Retrieved March 31, 2016.
  5. ^  Raiu, C., and Ivanov, A. (2016, June 17). Operation Daybreak. Retrieved February 15, 2018.
  6. ^  ClearSky Cyber Security and Trend Micro. (2017, July). Operation Wilted Tulip: Exposing a cyber espionage apparatus. Retrieved August 21, 2017.
  7. ^  Kaspersky Lab's Global Research and Analysis Team. (2014, November). The Darkhotel APT A Story of Unusual Hospitality. Retrieved November 12, 2014.
  8. ^  FireEye. (2018, March 16). Suspected Chinese Cyber Espionage Group (TEMP.Periscope) Targeting U.S. Engineering and Maritime Industries. Retrieved April 11, 2018.
  9. ^  Villeneuve, N., Haq, H., Moran, N. (2013, August 23). OPERATION MOLERATS: MIDDLE EAST CYBER ATTACKS USING POISON IVY. Retrieved April 1, 2016.
  10. ^  DiMaggio, J.. (2016, March 15). Suckfly: Revealing the secret life of your code signing certificates. Retrieved August 3, 2016.
  11. ^  Kaspersky Lab's Global Research and Analysis Team. (2013, April 11). Winnti. More than just a game. Retrieved February 8, 2017.
  12. ^  Miller-Osborn, J. and Grunzweig, J.. (2017, February 16). menuPass Returns with New Malware and New Attacks Against Japanese Academics and Organizations. Retrieved March 1, 2017.
  13. ^  Nakamura, Y.. (2017, February 17). ChChes - Malware that Communicates with C&C Servers Using Cookie Headers. Retrieved March 1, 2017.