DLL sideloading using a legitimate signed program.
What gives it awayA signed executable in a non-standard directory loading an unsigned DLL from beside it. The executable is genuine; the DLL is not.
ATT&CK T1574.002Nothing matches that yet. Tell us what you were looking for and it goes on the list.
Sysmon · Event 7
A process loaded a DLL or other module. Unfiltered it is the highest-volume event Sysmon produces, but filtered to unsigned modules loading from user-writable directories it catches DLL sideloading, which is otherwise very hard to see.
Also written as Sysmon 7Sysmon Event ID 7Image loadedSysmon DLL loaded
Only present if you installed Sysmon. Every program loads dozens of these components; it is entirely normal.
Disabled by default in most configurations because of the volume, and rightly so. When you do enable it, filter to unsigned modules, to loads from user-writable paths, and to specific high-risk modules. Signature verification adds measurable overhead, and Sysmon caches results, so a module's signature status can be stale.
Sanitised. Addresses come from the RFC 5737 documentation ranges.
Image loaded:
RuleName: -
UtcTime: 2026-08-28 09:14:03.221
ProcessGuid: {a1b2c3d4-0000-0000-0000-00000000abcd}
ProcessId: 7412
Image: C:\Users\jbrooks\AppData\Local\Temp\sigverif.exe
ImageLoaded: C:\Users\jbrooks\AppData\Local\Temp\version.dll
FileVersion: -
Description: -
Product: -
Company: -
OriginalFileName: -
Hashes: SHA256=0000000000000000000000000000000000000000000000000000000000000000
Signed: false
Signature: -
SignatureStatus: Unavailable
User: CORP\jbrooks Everything else in the log line is context.
A DLL in the same folder as a signed executable, outside Program FilesThe sideloading pattern — a legitimate signed program loading an attacker's DLL from beside it. A DLL in a temp or user profile directoryModules rarely live here legitimately. falseUnsigned. Common for legitimate in-house software, so this needs environment-specific tuning. Most of the time it is one of these.
What gives it awayA signed executable in a non-standard directory loading an unsigned DLL from beside it. The executable is genuine; the DLL is not.
ATT&CK T1574.002What gives it awayAn unsigned DLL loading into a Windows system binary from a user-writable path.
ATT&CK T1055.001What gives it awayA module loading from a directory earlier in the search path than the legitimate copy.
ATT&CK T1574.001What gives it awayAn unexpected module loading into a security process, or a signature status other than valid on one of its components.
ATT&CK T1562.001Event | where Source == 'Microsoft-Windows-Sysmon' and EventID == 7 | where Signed == 'false' and ImageLoaded has_any ('\\Users\\','\\Temp\\','\\AppData\\') | project TimeGenerated, Computer, Image, ImageLoaded Event | where Source == 'Microsoft-Windows-Sysmon' and EventID == 7 | where Image startswith 'C:\\Users' and Signature has 'Microsoft' | project TimeGenerated, Computer, Image, ImageLoaded, Signature index=sysmon EventCode=7 Signed=false | stats count dc(host) as hosts by ImageLoaded | where hosts < 3 | sort -count Because it fires for every module every process loads, which on a normal machine is tens of thousands of events per hour. It also requires signature verification, which adds measurable overhead. Enable it filtered to unsigned modules and user-writable paths rather than collecting it wholesale.
Look for a signed executable running from an unusual location loading an unsigned DLL from the same directory. Sideloading works by placing a legitimate signed program next to a malicious library it will load, so the executable looks clean and the directory is the giveaway.
Sysmon caches signature verification results for performance, so a status can be stale if a file changed after it was first checked. Treat signature status as a strong hint rather than proof, and verify the file directly when the answer matters.
Last reviewed 28 August 2026