M1045 Code Signing
Enforce binary and application integrity with digital signature verification to prevent untrusted code from executing.
Item | Value |
---|---|
ID | M1045 |
Version | 1.1 |
Created | 11 June 2019 |
Last Modified | 20 May 2020 |
Navigation Layer | View In ATT&CK® Navigator |
Techniques Addressed by Mitigation
Domain | ID | Name | Use |
---|---|---|---|
enterprise | T1059 | Command and Scripting Interpreter | Where possible, only permit execution of signed scripts. |
enterprise | T1059.001 | PowerShell | Set PowerShell execution policy to execute only signed scripts. |
enterprise | T1059.002 | AppleScript | Require that all AppleScript be signed by a trusted developer ID before being executed - this will prevent random AppleScript code from executing.3 This subjects AppleScript code to the same scrutiny as other .app files passing through Gatekeeper. |
enterprise | T1554 | Compromise Client Software Binary | Ensure all application component binaries are signed by the correct application developers. |
enterprise | T1543 | Create or Modify System Process | Enforce registration and execution of only legitimately signed service drivers where possible. |
enterprise | T1543.003 | Windows Service | Enforce registration and execution of only legitimately signed service drivers where possible. |
enterprise | T1546 | Event Triggered Execution | - |
enterprise | T1546.006 | LC_LOAD_DYLIB Addition | Enforce that all binaries be signed by the correct Apple Developer IDs. |
enterprise | T1546.013 | PowerShell Profile | Enforce execution of only signed PowerShell scripts. Sign profiles to avoid them from being modified. |
enterprise | T1525 | Implant Internal Image | Several cloud service providers support content trust models that require container images be signed by trusted sources.21 |
enterprise | T1036 | Masquerading | Require signed binaries. |
enterprise | T1036.001 | Invalid Code Signature | Require signed binaries. |
enterprise | T1036.005 | Match Legitimate Name or Location | Require signed binaries and images. |
enterprise | T1601 | Modify System Image | Many vendors provide digitally signed operating system images to validate the integrity of the software used on their platform. Make use of this feature where possible in order to prevent and/or detect attempts by adversaries to compromise the system image. 4 |
enterprise | T1601.001 | Patch System Image | Many vendors provide digitally signed operating system images to validate the integrity of the software used on their platform. Make use of this feature where possible in order to prevent and/or detect attempts by adversaries to compromise the system image. 4 |
enterprise | T1601.002 | Downgrade System Image | Many vendors provide digitally signed operating system images to validate the integrity of the software used on their platform. Make use of this feature where possible in order to prevent and/or detect attempts by adversaries to compromise the system image. 4 |
enterprise | T1505 | Server Software Component | Ensure all application component binaries are signed by the correct application developers. |
enterprise | T1505.001 | SQL Stored Procedures | Ensure all application component binaries are signed by the correct application developers. |
enterprise | T1505.002 | Transport Agent | Ensure all application component binaries are signed by the correct application developers. |
enterprise | T1505.004 | IIS Components | Ensure IIS DLLs and binaries are signed by the correct application developers. |
enterprise | T1204 | User Execution | - |
enterprise | T1204.003 | Malicious Image | Utilize a trust model such as Docker Content Trust with digital signatures to ensure runtime verification of the integrity and publisher of specific image tags.12 |
References
-
Docker. (2019, October 10). Content trust in Docker. Retrieved October 16, 2019. ↩↩
-
Microsoft. (2019, September 5). Content trust in Azure Container Registry. Retrieved October 16, 2019. ↩↩
-
Steven Sande. (2013, December 23). AppleScript and Automator gain new features in OS X Mavericks. Retrieved September 21, 2018. ↩
-
Cisco. (n.d.). Cisco IOS Software Integrity Assurance - Deploy Signed IOS. Retrieved October 21, 2020. ↩↩↩