A download cradle fetching a payload.
What gives it awayA shell or scripting engine connecting outbound, usually to an address with no hostname and immediately after a document was opened.
ATT&CK T1105Nothing matches that yet. Tell us what you were looking for and it goes on the list.
Sysmon · Event 3
A process made a network connection, and Sysmon recorded which process, which account, and where to. It is the event that ties network activity to the specific program responsible — something a firewall log can never do.
Also written as Sysmon 3Sysmon Event ID 3Network connection detectedSysmon NetworkConnect
You would only see this if you installed Sysmon yourself. It records which programs on your PC talk to the internet, which is useful after something goes wrong but blocks nothing.
Off by default in most configurations because the volume is enormous. Filter at the configuration level to the processes that matter — shells, scripting engines, system binaries, and anything running from a user-writable directory. Note that connections are recorded at initiation, so a blocked connection still appears here.
Sanitised. Addresses come from the RFC 5737 documentation ranges.
Network connection detected:
RuleName: -
UtcTime: 2026-08-28 09:14:07.442
ProcessGuid: {a1b2c3d4-0000-0000-0000-00000000abcd}
ProcessId: 7412
Image: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
User: CORP\jbrooks
Protocol: tcp
Initiated: true
SourceIsIpv6: false
SourceIp: 192.0.2.44
SourceHostname: LAPTOP-J7X2.corp.example
SourcePort: 51993
DestinationIsIpv6: false
DestinationIp: 198.51.100.203
DestinationHostname: -
DestinationPort: 443
DestinationPortName: https Everything else in the log line is context.
powershell.exe or cmd.exeA shell reaching the network. Legitimate for administration, and a hallmark of download cradles. rundll32.exe or regsvr32.exeSystem binaries with no ordinary reason to make outbound connections. A binary in a temp or user profile directoryPrograms running from these locations rarely have a legitimate reason to connect out. A browser or mail clientOrdinary application traffic, and the bulk of the volume. 443HTTPS. Where most traffic goes, including most command and control. 4444A common default for several offensive frameworks. Not proof, but worth reading. 445SMB. Outbound to the internet on this port should never happen. 3389Remote Desktop, outbound. Most of the time it is one of these.
What gives it awayA shell or scripting engine connecting outbound, usually to an address with no hostname and immediately after a document was opened.
ATT&CK T1105What gives it awayRegular, evenly spaced connections from one process to one destination. The regularity is the signal, not the destination.
ATT&CK T1071.001What gives it awayrundll32, regsvr32, mshta, or similar making outbound connections. These have essentially no legitimate reason to do so.
ATT&CK T1218What gives it awayLarge sustained outbound transfers from a process that does not normally transfer data, particularly outside working hours.
ATT&CK T1041What gives it awayOne process connecting to many internal hosts on administrative ports in a short window.
ATT&CK T1046Event | where Source == 'Microsoft-Windows-Sysmon' and EventID == 3 | extend Proc = tostring(split(Image, '\\')[-1]) | where Proc in~ ('powershell.exe','cmd.exe','wscript.exe','cscript.exe','mshta.exe','rundll32.exe','regsvr32.exe','certutil.exe') | project TimeGenerated, Computer, Proc, DestinationIp, DestinationPort, User Event | where Source == 'Microsoft-Windows-Sysmon' and EventID == 3 | summarize connections = count(), spread = stdev(datetime_diff('second', TimeGenerated, prev(TimeGenerated))) by Image, DestinationIp, bin(TimeGenerated, 1d) | where connections > 50 and spread < 30 detection:
selection:
EventID: 3
Image|endswith:
- '\\regsvr32.exe'
- '\\rundll32.exe'
- '\\mshta.exe'
Initiated: 'true'
condition: selection index=sysmon EventCode=3 | stats count by Image dest_ip dest_port | sort count asc | head 50 Because every network connection from every process generates one, and an ordinary desktop makes thousands per hour. Most Sysmon configurations disable it by default for exactly this reason. Filter it in the configuration to specific processes rather than collecting everything and filtering later.
Sysmon knows which process made the connection; a firewall only sees the packet. That single difference is what makes Event 3 worth the volume — 'something connected to this address' is far less actionable than 'powershell.exe connected to this address'.
It records connection attempts as the process initiates them, so a connection later blocked by a firewall still appears here. That is useful — it shows what a process tried to do, not just what succeeded.
Look for regularity rather than destination. Beacons connect at consistent intervals, so grouping by process and destination and measuring the variance in the gaps between connections surfaces them. Low variance over many connections is the signal; the destination itself is usually unremarkable.
Last reviewed 28 August 2026