Adversaries may use Winsock 2 API declarations to establish covert network communication channels, which can be a sign of malicious network activity. SOC teams should proactively hunt for this behavior in Azure Sentinel to identify potential command and control infrastructure or data exfiltration attempts.
rule Str_Win32_Winsock2_Library
{
meta:
author = "@adricnet"
description = "Match Winsock 2 API library declaration"
method = "String match"
reference = "https://github.com/dfirnotes/rules"
strings:
$ws2_lib = "Ws2_32.dll" nocase
$wsock2_lib = "WSock32.dll" nocase
condition:
(any of ($ws2_lib, $wsock2_lib))
}
This YARA rule can be deployed in the following contexts:
This rule contains 2 string patterns in its detection logic.
Scenario: A system administrator is using PowerShell to script network configuration changes that include Winsock 2 API calls.
Filter/Exclusion: Exclude processes initiated by powershell.exe with a command line containing netsh or Set-NetAdapter.
Scenario: A scheduled task runs a legitimate network diagnostic tool like Wireshark or tcpdump (on Linux) that uses Winsock 2 APIs for packet capture.
Filter/Exclusion: Exclude processes associated with scheduled tasks that have a known benign command line or are running under a trusted user account.
Scenario: A Windows Update or Group Policy client service is using Winsock 2 APIs to communicate with Microsoft servers during policy synchronization.
Filter/Exclusion: Exclude processes with the image name svchost.exe or wuauclt.exe that are associated with Windows Update services.
Scenario: A remote desktop session or Terminal Services client is establishing a network connection using Winsock 2 APIs for RDP communication.
Filter/Exclusion: Exclude processes with the image name mstsc.exe or tsclient.exe that are part of a legitimate remote access session.
Scenario: A network monitoring tool like Microsoft Network Monitor or SolarWinds Network Performance Monitor is using Winsock 2 APIs to capture and analyze network traffic.
Filter/Exclusion: Exclude processes with known monitoring tool names such as nmm.exe or SolarWinds.exe that are running under a monitored system.