T1556.008 Network Provider DLL
Adversaries may register malicious network provider dynamic link libraries (DLLs) to capture cleartext user credentials during the authentication process. Network provider DLLs allow Windows to interface with specific network protocols and can also support add-on credential management functions.4 During the logon process, Winlogon (the interactive logon module) sends credentials to the local mpnotify.exe
process via RPC. The mpnotify.exe
process then shares the credentials in cleartext with registered credential managers when notifying that a logon event is happening.125
Adversaries can configure a malicious network provider DLL to receive credentials from mpnotify.exe
.3 Once installed as a credential manager (via the Registry), a malicious DLL can receive and save credentials each time a user logs onto a Windows workstation or domain via the NPLogonNotify()
function.5
Adversaries may target planting malicious network provider DLLs on systems known to have increased logon activity and/or administrator logon activity, such as servers and domain controllers.1
Item | Value |
---|---|
ID | T1556.008 |
Sub-techniques | T1556.001, T1556.002, T1556.003, T1556.004, T1556.005, T1556.006, T1556.007, T1556.008 |
Tactics | TA0006, TA0005, TA0003 |
Platforms | Windows |
Version | 1.0 |
Created | 30 March 2023 |
Last Modified | 04 May 2023 |
Mitigations
ID | Mitigation | Description |
---|---|---|
M1047 | Audit | Periodically review for new and unknown network provider DLLs within the Registry (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<NetworkProviderName>\NetworkProvider\ProviderPath ). |
M1028 | Operating System Configuration | Starting in Windows 11 22H2, the EnableMPRNotifications policy can be disabled through Group Policy or through a configuration service provider to prevent Winlogon from sending credentials to network providers.6 |
M1024 | Restrict Registry Permissions | Restrict Registry permissions to disallow the modification of sensitive Registry keys such as HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order . |
Detection
ID | Data Source | Data Component |
---|---|---|
DS0022 | File | File Creation |
DS0009 | Process | OS API Execution |
DS0024 | Windows Registry | Windows Registry Key Creation |
References
-
Dray Agha. (2022, August 16). Cleartext Shenanigans: Gifting User Passwords to Adversaries With NPPSPY. Retrieved March 30, 2023. ↩↩
-
Grzegorz Tworek. (2021, December 14). How winlogon.exe shares the cleartext password with custom DLLs. Retrieved March 30, 2023. ↩
-
Grzegorz Tworek. (2021, December 15). NPPSpy. Retrieved March 30, 2023. ↩
-
Microsoft. (2021, January 7). Network Provider API. Retrieved March 30, 2023. ↩
-
Microsoft. (2021, October 21). NPLogonNotify function (npapi.h). Retrieved March 30, 2023. ↩↩
-
Microsoft. (2023, January 26). Policy CSP - WindowsLogon. Retrieved March 30, 2023. ↩