Registry write to a Subject Interface Package signing function entry
AN1222 asks for "anomalous registry modifications to Subject Interface Packages (SIPs) or trust provider DLL mappings" and "attempts to redirect WinVerifyTrust validation logic." This corpus already has a rule for the trust-provider half of that sentence: the parent T1553 rule watches writes under `...\Cryptography\Providers\Trust\FinalPolicy\{class-id}`, the key the SpectorOps "Subverting Trust" research this technique's own description cites documents as the trust-provider hijack point. This rule covers the other half, SIP hijacking specifically, which is a genuinely different registry subtree: the same research documents that a SIP's hash-generation and signature-verification behaviour is looked up per-file-type under `HKLM\SOFTWARE\Microsoft\Cryptography\OID\EncodingType 0\ CryptSIPDllGetSignedDataMsg\{SIP GUID}` and the matching `CryptSIPDllVerifyIndirectData\{SIP GUID}` entry, each holding a `Dll` and `FuncName` value pointing at the code that computes or checks a file's signature hash. Repointing either value to an attacker DLL that always reports success turns any file of that SIP's type into one WinVerifyTrust treats as validly signed — replacing, not just weakening, the verification path — which is why any write under either subtree is the selector: neither registers a benign reason to be touched outside a SIP install. The brief maps Security EventID 4657 onto this leg but the rule is written in the Sysmon-shaped `registry_set` vocabulary (`TargetObject` carrying the full key-plus-value path); a native 4657 feed splits that same path across `ObjectName` and `ObjectValueName` and needs both mapped onto `TargetObject` before it can match anything here — turning on *Audit Registry* alone does not make 4657 usable, since the field shape differs, not just the audit policy. The other two logsources in AN1222 are not used: Sysmon EventID 7 (image_load) would need a non-Microsoft-signed module loading into a process that calls WinVerifyTrust, a correlation this rule's single registry write cannot express, and CodeIntegrity EventID 3033's field shape is not established anywhere in this corpus, so a selector against it risks the invented-field trap AUTHORING.md warns against. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0442, 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 "\\Cryptography\\OID\\EncodingType 0\\CryptSIPDllGetSignedDataMsg\\" or RegistryKey contains "\\Cryptography\\OID\\EncodingType 0\\CryptSIPDllVerifyIndirectData\\")
Splunk · SPL
Run this as a search.
index=* (TargetObject="*\\Cryptography\\OID\\EncodingType 0\\CryptSIPDllGetSignedDataMsg\\*" OR TargetObject="*\\Cryptography\\OID\\EncodingType 0\\CryptSIPDllVerifyIndirectData\\*")Elastic · ES|QL
Run this as a search.
FROM logs-*| WHERE (TO_LOWER(registry.path) LIKE "*\\\\cryptography\\\\oid\\\\encodingtype 0\\\\cryptsipdllgetsigneddatamsg\\\\*" OR TO_LOWER(registry.path) LIKE "*\\\\cryptography\\\\oid\\\\encodingtype 0\\\\cryptsipdllverifyindirectdata\\\\*")
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)(\\Cryptography\\OID\\EncodingType 0\\CryptSIPDllGetSignedDataMsg\\|\\Cryptography\\OID\\EncodingType 0\\CryptSIPDllVerifyIndirectData\\)</field> <description>Registry write to a Subject Interface Package signing function entry</description> <mitre> <id>T1553.003</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.