Detect Time Providers in Sumo Logic CSE
Adversaries may abuse time providers to execute DLLs when the system boots. The Windows Time service (W32Time) enables time synchronization across and within domains. W32Time time providers are implemented as DLLs registered in the subkeys of HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\TimeProviders\. The time provider manager loads and starts time providers listed under this key at system startup. Adversaries may create a new subkey pointing to a malicious DLL in the DllName value. Administrator privileges are required for time provider registration, though execution runs in context of the Local Service account.
MITRE ATT&CK
- Tactic
- Persistence Privilege Escalation
- Technique
- T1547 Boot or Logon Autostart Execution
- Sub-technique
- T1547.003 Time Providers
- Canonical reference
- https://attack.mitre.org/techniques/T1547/003/
Sumo Detection Query
_sourceCategory="windows/sysmon" (EventCode=12 OR EventCode=13) TargetObject="*\Services\W32Time\TimeProviders*" | where !matches(Details, "*w32time.dll*") and !matches(Details, "*vmictimeprovider.dll*") | parse field=EventCode "12" as key_created nodrop | parse field=EventCode "13" as value_set nodrop | eval action = if(EventCode == "12", "KeyCreated", "ValueSet") | table _messageTime, host, action, TargetObject, Details, Image, User | sort by _messageTime desc Detects Windows Sysmon registry create or value set events under the W32Time TimeProviders path referencing a non-standard DLL, indicating potential DLL-based persistence via Windows Time Service.
Data Sources
Required Tables
False Positives & Tuning
- Legitimate NTP appliance integration software that installs a custom Windows Time provider DLL as part of high-precision time sync solutions
- Software configuration management tools (SCCM, Ansible) that deploy and register time provider components during automated builds
- System imaging or provisioning workflows that restore a registry baseline containing custom time provider entries from a golden image
Other platforms for T1547.003
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Register Malicious Time Provider via Registry
Expected signal: Sysmon Event ID 12: Key created for df00techTestProvider. Sysmon Event ID 13: Value set for DllName, Enabled, and InputProvider. MDE DeviceRegistryEvents for all three operations.
- Test 2Enumerate Existing Time Providers
Expected signal: Sysmon Event ID 1: Process creation for reg.exe. No registry modification events.
- Test 3Register Time Provider and Restart W32Time
Expected signal: Sysmon Event ID 12/13 for registry operations. System Event ID 7036 for W32Time service state changes. If the DLL existed, Sysmon Event ID 7 would show it being loaded by svchost.exe hosting W32Time.
References (5)
- https://attack.mitre.org/techniques/T1547/003/
- https://msdn.microsoft.com/library/windows/desktop/ms725475.aspx
- https://docs.microsoft.com/windows-server/networking/windows-time-service/windows-time-service-top
- https://github.com/scottlundgren/w32time
- https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1547.003/T1547.003.md
Unlock Pro Content
Get the full detection package for T1547.003 including response playbook, investigation guide, and atomic red team tests.