Skip to main content

Cowrie Honeypot CVE-2025-34469

MEDIUM
Server-Side Request Forgery (SSRF) (CWE-918)
2025-12-31 disclosure@vulncheck.com
6.9
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Connect to honeypot via SSH/Telnet
  2. Delivery
    Invoke emulated wget/curl at victim
  3. Exploit
    Loop unrate-limited outbound HTTP requests
  4. Execution
    Amplify traffic from honeypot IP
  5. Impact
    Deny 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.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.7% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – 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

pypi cowrie fix: 2.9.0

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

Vendor (vulncheck) PRIMARY 6.9 MEDIUM
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
vuln.today AI 5.8 MEDIUM

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.

3.1 AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:L
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:L

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
Low

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

EPSS Score
0.7%
Top 49% exploitable
Prevalence
Medium
de-facto standard SSH/Telnet honeypot, but security-research niche footprint
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.7%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact· derived
Medium

Priority Score

55
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +34
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

Affected Products (CPE)CVE.org

cpe:2.3:a:cowrie:cowrie:*:*:*:*:*:*:*:*

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy