Detection rules › Sigma

Potentially Suspicious Malware Callback Communication

Status
test
Severity
high
Log source
product windows, category network_connection
Author
Florian Roth (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects programs that connect to known malware callback ports based on statistical analysis from two different sandbox system databases

MITRE ATT&CK coverage

TacticTechniques
Command & ControlT1571 Non-Standard Port

Event coverage

ProviderEventTitle
SysmonEvent ID 3Network connection

Rule body yaml

title: Potentially Suspicious Malware Callback Communication
id: 4b89abaa-99fe-4232-afdd-8f9aa4d20382
related:
    - id: 6d8c3d20-a5e1-494f-8412-4571d716cf5c
      type: similar
status: test
description: |
    Detects programs that connect to known malware callback ports based on statistical analysis from two different sandbox system databases
references:
    - https://docs.google.com/spreadsheets/d/17pSTDNpa0sf6pHeRhusvWG6rThciE8CsXTSlDUAZDyo
author: Florian Roth (Nextron Systems)
date: 2017-03-19
modified: 2024-03-12
tags:
    - attack.persistence
    - attack.command-and-control
    - attack.t1571
logsource:
    category: network_connection
    product: windows
detection:
    selection:
        Initiated: 'true'
        DestinationPort:
            - 100
            - 198
            - 200
            - 243
            - 473
            - 666
            - 700
            - 743
            - 777
            - 1443
            - 1515
            - 1777
            - 1817
            - 1904
            - 1960
            - 2443
            - 2448
            - 3360
            - 3675
            - 3939
            - 4040
            - 4433
            - 4438
            - 4443
            - 4444
            - 4455
            - 5445
            - 5552
            - 5649
            - 6625
            - 7210
            - 7777
            - 8143
            - 8843
            - 9631
            - 9943
            - 10101
            - 12102
            - 12103
            - 12322
            - 13145
            - 13394
            - 13504
            - 13505
            - 13506
            - 13507
            - 14102
            - 14103
            - 14154
            - 49180
            - 65520
            - 65535
    filter_main_local_ranges:
        DestinationIp|cidr:
            - '127.0.0.0/8'
            - '10.0.0.0/8'
            - '172.16.0.0/12'
            - '192.168.0.0/16'
            - '169.254.0.0/16'
            - '::1/128'  # IPv6 loopback
            - 'fe80::/10'  # IPv6 link-local addresses
            - 'fc00::/7'  # IPv6 private addresses
    filter_optional_sys_directories:
        Image|startswith:
            - 'C:\Program Files\'
            - 'C:\Program Files (x86)\'
    condition: selection and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_* and not 1 of filter_optional_*

Stage 1: selection

selection:
    Initiated: 'true'
    DestinationPort:
        - 100
        - 198
        - 200
        - 243
        - 473
        - 666
        - 700
        - 743
        - 777
        - 1443
        - 1515
        - 1777
        - 1817
        - 1904
        - 1960
        - 2443
        - 2448
        - 3360
        - 3675
        - 3939
        - 4040
        - 4433
        - 4438
        - 4443
        - 4444
        - 4455
        - 5445
        - 5552
        - 5649
        - 6625
        - 7210
        - 7777
        - 8143
        - 8843
        - 9631
        - 9943
        - 10101
        - 12102
        - 12103
        - 12322
        - 13145
        - 13394
        - 13504
        - 13505
        - 13506
        - 13507
        - 14102
        - 14103
        - 14154
        - 49180
        - 65520
        - 65535

Stage 2: not filter_main_local_ranges

filter_main_local_ranges:
    DestinationIp|cidr:
        - '127.0.0.0/8'
        - '10.0.0.0/8'
        - '172.16.0.0/12'
        - '192.168.0.0/16'
        - '169.254.0.0/16'
        - '::1/128'
        - 'fe80::/10'
        - 'fc00::/7'

Stage 3: not filter_optional_sys_directories

filter_optional_sys_directories:
    Image|startswith:
        - 'C:\Program Files\'
        - 'C:\Program Files (x86)\'

Exclusions

Top-level NOT(...) conjuncts: predicates this rule actively suppresses.

FieldKindExcluded values
DestinationIpcidr_match10.0.0.0/8
DestinationIpcidr_match127.0.0.0/8
DestinationIpcidr_match169.254.0.0/16
DestinationIpcidr_match172.16.0.0/12
DestinationIpcidr_match192.168.0.0/16
DestinationIpcidr_match::1/128
DestinationIpcidr_matchfc00::/7
DestinationIpcidr_matchfe80::/10
Imagestarts_withC:\Program Files (x86)\
Imagestarts_withC:\Program Files\

Indicators

Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.

FieldKindValues
DestinationPorteq
  • 100
  • 10101
  • 12102
  • 12103
  • 12322
  • 13145
  • 13394
  • 13504
  • 13505
  • 13506
  • 13507
  • 14102
  • 14103
  • 14154
  • 1443
  • 1515
  • 1777
  • 1817
  • 1904
  • 1960
  • 198
  • 200
  • 243
  • 2443
  • 2448
  • 3360
  • 3675
  • 3939
  • 4040
  • 4433
  • 4438
  • 4443
  • 4444 corpus 2 (sigma 2)
  • 4455
  • 473
  • 49180
  • 5445
  • 5552
  • 5649
  • 65520
  • 65535
  • 6625
  • 666
  • 700
  • 7210
  • 743
  • 777
  • 7777
  • 8143
  • 8843
  • 9631
  • 9943
Initiatedeq
  • true corpus 50 (sigma 50)