T1090.002 CrowdStrike LogScale · LogScale

Detect External Proxy in CrowdStrike LogScale

Adversaries may use an external proxy to act as an intermediary for network communications to a command and control server to avoid direct connections to their infrastructure. Tools like HTRAN, ZXProxy, and ZXPortMap enable traffic redirection through proxies or port redirection. External connection proxies mask the destination of C2 traffic and are typically implemented with port redirectors. Compromised systems outside the victim environment, cloud-based resources, or VPS infrastructure may be used. Victim systems communicate directly with the external proxy, which then forwards traffic to the actual C2 server.

MITRE ATT&CK

Tactic
Command and Control
Technique
T1090 Proxy
Sub-technique
T1090.002 External Proxy
Canonical reference
https://attack.mitre.org/techniques/T1090/002/

LogScale Detection Query

CrowdStrike LogScale (LogScale)
cql
#event_simpleName = /^(ProcessRollup2|NetworkConnectIP4)$/
| ImageFileName = /(?i)(htran|zxproxy|zxportmap|chisel|frpc|frps|proxychains|revsocks|socat|stunnel|privoxy|iodine|dns2tcp|ptunnel|3proxy|ss-local|shadowsocks)/ OR
  CommandLine = /(?i)(htran|zxproxy|zxportmap|chisel|frpc|proxychains|socat|socks5:\/\/|socks4:\/\/|-socks[45]\s|--socks[45]|connect-proxy)/ OR
  (
    ImageFileName = /(?i)(\bssh\.exe$|\bssh$|plink\.exe$)/ AND
    CommandLine = /(?i)(-[fnqt]*D\s+\d+|-nNT|-fND|-fnqD)\/
  ) OR
  (
    #event_simpleName = "NetworkConnectIP4" AND
    RemotePort in (1080, 3128, 8080, 8888, 9050, 9051, 4444, 1337, 31337, 8443, 4443) AND
    NOT ImageFileName = /(?i)(chrome\.exe|firefox\.exe|msedge\.exe|iexplore\.exe|opera\.exe|brave\.exe|curl\.exe|wget\.exe)/ AND
    NOT RemoteAddressIP4 = /^(10\.|172\.(1[6-9]|2[0-9]|3[01])\.|192\.168\.|127\.)/
  )
| eval detection_type = case(
    ImageFileName = /(?i)(htran|zxproxy|zxportmap|chisel|frpc|frps|proxychains|revsocks|socat|stunnel|privoxy|iodine|dns2tcp|ptunnel|3proxy|ss-local|shadowsocks)/,
    "KnownProxyToolExecution",
    ImageFileName = /(?i)(\bssh\.exe$|\bssh$|plink\.exe$)/ AND CommandLine = /(?i)(-[fnqt]*D\s+\d+|-nNT|-fND)/,
    "SSHDynamicForwarding",
    CommandLine = /(?i)(socks5:\/\/|socks4:\/\/|-socks[45]|connect-proxy)/,
    "SocksProxyArgument",
    #event_simpleName = "NetworkConnectIP4",
    "ProxyPortConnection",
    "Other"
  )
| table [@timestamp, ComputerName, UserName, ImageFileName, CommandLine,
         ParentProcessImageFileName, RemoteAddressIP4, RemotePort, detection_type]
| sort @timestamp desc
high severity high confidence

CrowdStrike LogScale (Falcon) detection for T1090.002 External Proxy combining ProcessRollup2 and NetworkConnectIP4 Falcon telemetry events. Matches four detection branches: (1) known proxy relay tool image name matches (chisel, frp, socat, stunnel, proxychains, etc.); (2) SSH process with dynamic port-forwarding command-line flags (-D); (3) SOCKS proxy URI scheme or argument present in any process command line; (4) outbound NetworkConnectIP4 connection to well-known proxy ports from non-browser processes to non-RFC1918 destinations. A CASE eval labels each match with its detection type for analyst triage.

Data Sources

CrowdStrike Falcon sensor endpoint telemetry: ProcessRollup2 (process execution) and NetworkConnectIP4 (outbound network connections)Falcon Event Stream via Falcon Data Replicator (FDR) or Humio/LogScale direct ingestion

Required Tables

Falcon event stream: #event_simpleName ProcessRollup2 and NetworkConnectIP4Required fields: ImageFileName, CommandLine, ParentProcessImageFileName, RemoteAddressIP4, RemotePort, ComputerName, UserName

False Positives & Tuning

  • Red team or penetration testing operators using Chisel, FRP, or revsocks under authorized rules of engagement; Falcon will reliably detect these by image name.
  • Legitimate socat or stunnel usage by system administrators for TLS wrapping, serial-over-TCP bridges, or debugging network services in enterprise environments.
  • Corporate outbound proxy infrastructure where all workstations connect to a centralized proxy on port 8080 or 3128; the NetworkConnectIP4 branch will match if the proxy IP is public-facing.
  • Tor Browser or I2P router processes connecting to local SOCKS daemon on ports 9050 or 9060 during normal privacy-tool usage on unmanaged or BYOD endpoints.
Download portable Sigma rule (.yml)

Other platforms for T1090.002


Testing Methodology

Validate this detection against 5 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1SOCKS5 Proxy via SSH Dynamic Port Forwarding

    Expected signal: Sysmon for Linux or auditd: Process creation for ssh with command line containing '-D 1080'. Network connection event showing TCP bind on 127.0.0.1:1080. If Sysmon EID 3 is available, outbound TCP connection to the target SSH server on port 2222.

  2. Test 2TCP Port Forwarding via Chisel Proxy Tool

    Expected signal: Sysmon Event ID 1: Process Create for chisel.exe with command line containing 'client' and 'socks'. Sysmon Event ID 3: Network connection from chisel.exe to 127.0.0.1:8080. Sysmon Event ID 11: File creation of chisel.exe in %TEMP%. Security Event ID 4688 (if command line auditing enabled).

  3. Test 3HTRAN Port Redirector Execution

    Expected signal: Sysmon Event ID 1: Process Create for cmd.exe with CommandLine containing 'htran'. If actual HTRAN binary is used in an authorized test environment: direct process creation event with '-listen' argument and IP:port parameters. Security Event ID 4688 with htran.exe image path.

  4. Test 4FRP (Fast Reverse Proxy) Client Configuration and Execution

    Expected signal: Sysmon Event ID 11: File creation of frpc.ini in %TEMP% with content showing server_addr, server_port, and plugin=socks5. Sysmon Event ID 1: PowerShell process creation with command containing 'frpc.ini'. The configuration file content reveals the external C2 relay address (192.0.2.1).

  5. Test 5SOCKS Proxy via Netcat-style Listener (socat)

    Expected signal: Linux auditd/Sysmon for Linux: Process creation for socat with arguments 'TCP4-LISTEN:1080' and 'TCP4:192.0.2.1:4444'. Network socket creation binding to local port 1080. If Sysmon EID 3 available: outbound connection attempt to 192.0.2.1:4444.

Unlock Pro Content

Get the full detection package for T1090.002 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections