Cowrie Honeypot
CVE-2025-34469
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessConnect to honeypot via SSH/Telnet
-
DeliveryInvoke emulated wget/curl at victim
-
ExploitLoop unrate-limited outbound HTTP requests
-
ExecutionAmplify traffic from honeypot IP
-
ImpactDeny service to third-party target
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires the target to be running Cowrie honeypot prior to version 2.9.0 in its DEFAULT emulated shell mode, with the wget and curl command emulations active (default) - these emulations perform genuine outbound HTTP requests. The attacker needs only network reachability to the honeypot's SSH or Telnet service; since honeypots accept arbitrary credentials by design, no valid authentication is required (PR:N). No user interaction and no non-default configuration is needed. What LIMITS exploitation: the vulnerable software is a security honeypot (not general enterprise infrastructure), and impact is confined to availability abuse (using the honeypot as an amplification/proxy node against third parties) rather than compromise of the honeypot host, its data, or its integrity. Post-fix instances (>=2.9.0) enforce a default rate limit of 5 requests per 60-second window per host, neutralizing the amplification. |
| Impact | The CVSS 4.0 base score is 6.9 (Medium) with a clean network vector: AV:N/AC:L/AT:N/PR:N/UI:N and impact limited to availability (VA:L on the honeypot itself, SA:L on third-party targets). This is an abuse/amplification issue, not a compromise of the honeypot - there is no confidentiality or integrity impact (VC:N/VI:N/SC:N/SI:N), which is why the score stays Medium despite being remote and unauthenticated. Exploitation signals are elevated: a public PoC exists (referenced in the GHSA advisory and NVD), and the GHSA advisory explicitly states the vulnerability 'was observed being actively exploited in the wild.' However, this CVE is NOT in CISA KEV and no EPSS score is provided in the input, so per precision rules the vendor's in-the-wild claim cannot be upgraded to 'confirmed actively exploited (CISA KEV)' - treat it as a credible vendor observation pending independent confirmation. No SSVC decision data is provided. Net assessment: real-world risk is moderate and asymmetric - the operator running Cowrie is not directly harmed in terms of data, but their honeypot IP becomes an unwitting DDoS amplifier/proxy against arbitrary third parties, creating abuse-desk, reputation, and potential legal-attribution exposure. Given the default-configuration trigger, low complexity, no auth requirement, public PoC, and vendor ITW claim, this warrants prompt patching for anyone operating internet-facing Cowrie instances, even though the raw CVSS is only Medium. |
| Exploit ScenarioDerived | An attacker connects to an internet-facing Cowrie honeypot over SSH or Telnet (which accepts arbitrary credentials by design) and issues a batch of concatenated 'wget'/'curl' commands pointing at a chosen victim host. Because the emulated commands perform real outbound HTTP requests with no rate limiting, the attacker loops this to generate high-volume traffic that originates from the honeypot's IP, using it as a DDoS amplification/proxy node that masks their true source. A rudimentary public PoC (100 concatenated wget calls looped over multiple SSH sessions) is published in the GHSA advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 23, 2026
Server-side request forgery in Cowrie honeypots prior to 2.9.0 allows unauthenticated remote attackers to turn the emulated wget and curl commands into an outbound HTTP request amplifier directed at arbitrary third parties, because the default emulated shell performs real HTTP fetches with no outbound rate limiting. Anyone who can reach the honeypot's SSH or Telnet listener (PR:N, since honeypots accept arbitrary credentials by design) can loop these commands and generate unbounded traffic that appears to originate from the honeypot's IP, enabling DoS amplification and source-address spoofing while causing only limited availability impact on the honeypot itself. Publicly available exploit code exists, including a documented PoC that chains repeated wget invocations over SSH, and the upstream GitHub advisory states the issue was observed being exploited in real deployments; the CVSS 4.0 base score is 6.9 (Medium) and the assessed vector is limited to availability (VA:L on the honeypot, SA:L on third-party targets), not host compromise or data loss.
RemediationAI
Upgrade Cowrie to 2.9.0 or later (pip install --upgrade 'cowrie>=2.9.0'); the released package contains the RateLimiter wiring in src/cowrie/commands/wget.py and src/cowrie/commands/curl.py, defaulting to 5 outbound requests per 60-second window per host with a 1000-host key cap, matching the fix described in GHSA-83jg-m2pm-4jxj and PR 2800. If immediate upgrade is not possible, the same code-level control can be backported, or the fetch behavior can be eliminated by disabling or stubbing the wget and curl emulations - acknowledging that this reduces honeypot fidelity and the logged download artifacts used for malware analysis. Operationally, rate limit outbound HTTP/HTTPS from the honeypot host at the network egress (firewall/proxy), and monitor for high-volume repeat invocations of wget/curl from single SSH source addresses; restricting the SSH/Telnet listeners to trusted research networks reduces exposure but also reduces captured attacker traffic counterintelligence. Consult the vendor advisory at https://www.vulncheck.com/advisories/cowrie-unrestricted-wget-curl-emulation-enables-ssrf-based-ddos-amplification and the upstream issue https://github.com/cowrie/cowrie/issues/2622 for details. No vendor-released patch exists for versions below 2.9.0 other than upgrading.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
CWE-918 (Server-Side Request Forgery) here arises from a design tension in honeypot command emulation: to capture attacker download behavior for later inspection, Cowrie's emulated shell (the default mode) implements wget and curl by issuing genuine outbound HTTP requests to the destination the attacker supplies, rather than faking the response. Because no per-host request rate limiter existed, an attacker connected over SSH or Telnet could invoke these commands repeatedly - the published PoC concatenates 100 wget statements and replays them across 10 SSH sessions - producing effectively unbounded HTTP traffic toward a chosen victim whose logs would attribute the traffic to the honeypot's IP. The patch (PR #2800, shipped in v2.9.0) adds a RateLimiter class in cowrie/core/network-adjacent code and wires it into both src/cowrie/commands/wget.py and curl.py, defaulting to 5 requests per 60-second window with a 1000-host key cap; when the limit is exceeded, curl now emits a simulated 'Operation timed out' and wget aborts, preserving the deceptive UX while capping real egress. The affected CPE is cpe:2.3:a:cowrie:cowrie:*:*:*:*:*:*:*:* (broad wildcard, matching the '< 2.9.0' pip package range), and the change is distributed through the PyPI package 'cowrie'. Scope is limited to the honeypot deployment itself and any third party an attacker chooses to target through it; there is no evidence of code execution, credential theft, or integrity impact on the Cowrie host.
Know when Cowrie gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:L
Remote, low-complexity, unauthenticated (honeypots accept any login); no confidentiality/integrity impact; availability harm falls on out-of-scope third-party targets, hence S:C with A:L.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
DescriptionCVE.org
Cowrie versions prior to 2.9.0 contain a server-side request forgery (SSRF) vulnerability in the emulated shell implementation of wget and curl. In the default emulated shell configuration, these command emulations perform real outbound HTTP requests to attacker-supplied destinations. Because no outbound request rate limiting was enforced, unauthenticated remote attackers could repeatedly invoke these commands to generate unbounded HTTP traffic toward arbitrary third-party targets, allowing the Cowrie honeypot to be abused as a denial-of-service amplification node and masking the attacker’s true source address behind the honeypot’s IP.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
NVD
CVE.org
EPSS
GitHub
VulDB
Exploit-DB