CVE-2026-109786 PUBLISHED

Assigner: mitre
Reserved: 13.10.2026 Published: 13.10.2026 Updated: 13.10.2026

In fail2ban 0.10.5 through 1.1.1 before ddd879d, the sshd filter (config/filter.d/sshd.conf) accepts an "on <token>" suffix after the host address. Because OpenSSH logs the offered username verbatim, a remote unauthenticated attacker can use a username such as "x VICTIM-SOURCE-IP-ADDRESS on" to make fail2ban associate failed login attempts with an arbitrary source IP address and ban it (e.g., to block logins from a legitimate user). The default filter mode is affected.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
CVSS Score: 5.3

Product Status

Vendor fail2ban
Product fail2ban
Versions Default: unknown
  • affected from 0.10.5 to 1.1.1 (incl.)

Affected Configurations

The sshd jail is enabled with the stock filter.d/sshd.conf (any mode: normal, the default, extra, or aggressive). Before 1.1.1 the filter only matches log lines from a process named sshd (OpenSSH before 10, or systems that log as sshd); 1.1.1 also matches OpenSSH 10's sshd-session.

Workarounds

Override __on_port_opt and __suff in a local filter.d/sshd.local so that only an optional "port N" may follow the host address, as in the upstream fix: __on_port_opt = (?: port \d+)? and __suff = %(__on_port_opt)s(?: [preauth])?\s*. Add the administrator's own addresses to ignoreip.

Solutions

Apply upstream commit ddd879d22664904ace24e1255ac6571808c58187, or upgrade to the first fail2ban release after 1.1.1 that contains it.

References

Problem Types

  • CWE-117 Improper Output Neutralization for Logs CWE