LSA Security Packages registry value modified
Matches a write to either of the two registry values AN1495 names as the SSP configuration — HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Security Packages and the OSConfig copy of the same value — which is where a DLL name has to land for LSA to load it into lsass.exe at the next boot. The two paths are listed separately because the OSConfig key sits between Lsa and the value name, so a single contains on the shorter path does not cover it. What the rule cannot do is tell an insertion from a rewrite: registry_set carries the new multi-string in Details but never the previous contents, so any write to the value matches, including one that stores the list unchanged. The rest of the analytic is out of reach as well — the Sysmon EventID 7 leg (an unsigned or anomalous DLL loading into lsass.exe) is a separate event that MITRE's TimeWindow knob correlates across a reboot, which lib/sigma cannot express, and the AddSecurityPackage API route loads a package into a running LSA with no registry write at all, so it produces nothing here. Vocabulary matters for deployment: the brief maps Security EventID 4657 onto the Sysmon-shaped registry_set category, and this rule is written in the Sysmon EventID 13 vocabulary, with the key and value name joined in a single TargetObject. A 4657 feed splits those into ObjectName and ObjectValueName, so it needs a field mapping before this rule can match at all — enabling Audit Registry and a SACL on the key alone will not make it fire. On the Sysmon side, confirm the running configuration actually includes the Lsa key: volume-trimmed configs commonly watch only a short list of autostart locations, and one that omits this key leaves the rule silent rather than quiet. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0542, not hand-written and not tested by its author. Any lab result is on this rule's own page.Full descriptionShow less
The detection
The 4 SIEM queries below are previews produced by Siemphony’s own translator, not pySigma, and none has been executed against a real backend — review before you deploy.
detection.yml
Sentinel · KQL
Run this as a search.
DeviceRegistryEvents| where (RegistryKey contains "\\Control\\Lsa\\Security Packages" or RegistryKey contains "\\Control\\Lsa\\OSConfig\\Security Packages")
Splunk · SPL
Run this as a search.
index=* (TargetObject="*\\Control\\Lsa\\Security Packages*" OR TargetObject="*\\Control\\Lsa\\OSConfig\\Security Packages*")Elastic · ES|QL
Run this as a search.
FROM logs-*| WHERE (TO_LOWER(registry.path) LIKE "*\\\\control\\\\lsa\\\\security packages*" OR TO_LOWER(registry.path) LIKE "*\\\\control\\\\lsa\\\\osconfig\\\\security packages*")
Wazuh · XML rule
Deploy to your manager — this is a rule, not a search.
<group name="sigma,windows,registry_set,"> <!-- Rule ids must be unique on your manager; 100000+ is the user range. --> <rule id="100000" level="12"> <!-- Set <if_sid> to the decoder/base rule for windows so this only evaluates relevant events. --> <field name="TargetObject" type="pcre2">(?i)(\\Control\\Lsa\\Security Packages|\\Control\\Lsa\\OSConfig\\Security Packages)</field> <description>LSA Security Packages registry value modified</description> <mitre> <id>T1547.005</id> </mitre> </rule></group>
Verdicts · reactions · comments
Community
Verdicts from engineers who actually deployed it, and the conversation around it.
Nobody has run this in a real environment and said what happened.
Verdicts from engineers who deployed it
0 castNo verdicts reported yet. The first one is worth more than the tenth — say what you ran it against.
Log in to report a verdict.
Log in to join the discussion.
No comments yet. Someone who deploys this will have something to say about it.