Skip to content

Add Guezli/postfix-sasl-bf scenario#1794

Open
Guezli wants to merge 1 commit into
crowdsecurity:masterfrom
Guezli:add-Guezli-postfix-sasl-bf
Open

Add Guezli/postfix-sasl-bf scenario#1794
Guezli wants to merge 1 commit into
crowdsecurity:masterfrom
Guezli:add-Guezli-postfix-sasl-bf

Conversation

@Guezli
Copy link
Copy Markdown

@Guezli Guezli commented May 11, 2026

Description

Adds a new scenario Guezli/postfix-sasl-bf that detects slow / distributed
SASL LOGIN bruteforce attempts against postfix.

The existing crowdsecurity/postfix-spam scenario is tuned for fast spam
waves (capacity 5 / leakspeed 10s) and does not trigger on distributed
low-rate attackers (e.g. /24 networks where each IP attempts 1-2 SASL
logins per hour). This scenario closes that gap with capacity 2 /
leakspeed 7200s, triggering on 3 failures within ~2h.

Built and validated against Mailcow on a VPS seeing ~30 distinct slow-BF
IPs per day.

The behavior label is set to pop3/imap:bruteforce because the hub
taxonomy has no dedicated smtp:bruteforce entry yet; this follows the
precedent set by hitech95/email-generic-bf.

Checklist

  • Scenario YAML with required labels (classification, spoofable, confidence, behavior, label, service, remediation)
  • Hub-rendered .md documentation with acquisition example
  • hubtest under .tests/postfix-sasl-bf/ passing locally (cscli hubtest run postfix-sasl-bf --clean -> all tests passed)
  • hublint check clean (0 warnings, 0 errors)
  • Uses existing crowdsecurity/postfix-logs parser, no new parser needed

AI assistance

  • AI was used to generate any/all content of this PR

Claude Code was used to port the scenario from my personal repo
(https://github.com/Guezli/postfix-sasl-bf) into Hub format, generate
the hubtest assertions, and structure the documentation. The detection
logic, threshold tuning, and field-of-use research are my own work; I
can explain every part of the contribution.

Detects slow/distributed SASL LOGIN bruteforce against postfix.
Covers the gap left by crowdsecurity/postfix-spam, which is tuned
for fast spam waves and misses distributed low-rate attackers.

Threshold: 3 SASL failures from the same IP within ~2h.
@sabban sabban self-assigned this May 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants