T1555.002 Securityd Memory
An adversary with root access may gather credentials by reading securityd’s memory. securityd is a service/daemon responsible for implementing security protocols such as encryption and authorization.2 A privileged adversary may be able to scan through securityd’s memory to find the correct sequence of keys to decrypt the user’s logon keychain. This may provide the adversary with various plaintext passwords, such as those for users, WiFi, mail, browsers, certificates, secure notes, etc.34
In OS X prior to El Capitan, users with root access can read plaintext keychain passwords of logged-in users because Apple’s keychain implementation allows these credentials to be cached so that users are not repeatedly prompted for passwords.31 Apple’s securityd utility takes the user’s logon password, encrypts it with PBKDF2, and stores this master key in memory. Apple also uses a set of keys and algorithms to encrypt the user’s password, but once the master key is found, an adversary need only iterate over the other values to unlock the final password.3
| Item | Value |
|---|---|
| ID | T1555.002 |
| Sub-techniques | T1555.001, T1555.002, T1555.003, T1555.004, T1555.005, T1555.006 |
| Tactics | TA0006 |
| Platforms | Linux, macOS |
| Version | 1.2 |
| Created | 12 February 2020 |
| Last Modified | 24 October 2025 |
Procedure Examples
| ID | Name | Description |
|---|---|---|
| S0276 | Keydnap | Keydnap uses the keychaindump project to read securityd memory.5 |
References
-
Alex Rymdeko-Harvey, Steve Borosh. (2016, May 14). External to DA, the OS X Way. Retrieved September 12, 2024. ↩
-
Apple. (n.d.). Security Server and Security Agent. Retrieved March 29, 2024. ↩
-
Juuso Salonen. (2012, September 5). Breaking into the OS X keychain. Retrieved November 17, 2024. ↩↩↩
-
Marc-Etienne M.Leveille. (2016, July 6). New OSX/Keydnap malware is hungry for credentials. Retrieved July 3, 2017. ↩
-
Patrick Wardle. (2017, January 1). Mac Malware of 2016. Retrieved September 21, 2018. ↩