Skip to main content

Ech0 CVE-2026-79671

| EUVDEUVD-2026-65443 MEDIUM
Server-Side Request Forgery (SSRF) (CWE-918)
2026-08-25 VulnCheck GHSA-7rwv-fqq2-88c4
5.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Recon
    Authenticate as Ech0 admin
  2. Delivery
    POST webhook with nip.io DNS-bypass URL
  3. Exploit
    validateWebhookURL skips IP check (net.ParseIP returns nil)
  4. Install
    Webhook stored as active in database
  5. C2
    Application event fires Dispatcher.HandleObservation
  6. Execute
    Server DNS-resolves hostname to 169.254.169.254
  7. Impact
    POST to cloud metadata endpoint exfiltrates credentials

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

Exploitation requires the attacker to hold admin-level privileges within Ech0 (CVSS PR:H), sufficient to call the webhook creation API (POST /api/webhook). No special non-default configuration is required beyond the webhook feature being enabled, which is part of standard Ech0 functionality. Once the malicious webhook is stored, exploitation recurs automatically on every application event without further attacker interaction. Exploitation is most impactful when Ech0 is deployed in a cloud environment (AWS, Azure, GCP) where the instance metadata service (169.254.169.254) is reachable from the server; in purely on-premises deployments without accessible internal HTTP services, impact is reduced. Limiting factors: admin access is required (not user-level or unauthenticated); the attacker cannot directly read the HTTP response via the webhook creation API - a separate out-of-band channel (attacker-controlled server or SSRF response reflection) is needed to capture exfiltrated data.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/UI:N) scores 5.1 (Medium), and the PR:H metric is the decisive limiting factor - exploitation is confined to users with admin-level access to the Ech0 instance. This substantially reduces real-world risk compared to a network-exploitable unauthenticated SSRF. That said, in cloud-hosted deployments, an admin-level compromise converting to IMDS (Instance Metadata Service) credential theft is a meaningful lateral movement step. Impact metrics (VC:L/VI:L/SC:L/SI:L) are appropriately calibrated: the attacker gains limited read access to internal services and can make limited write-side requests via webhook POST. No EPSS score was provided in the input; given the niche product footprint and PR:H requirement, real-world exploitation probability is expected to be low. Publicly available exploit code (curl PoC in the GHSA advisory) exists, but no CISA KEV listing confirms active exploitation. There is no conflict between stated signals. The primary realistic threat actor is a malicious or compromised admin in a cloud environment.

Exploit ScenarioDerived

An admin-level user authenticates to Ech0 and issues a POST /api/webhook request with a URL such as http://169.254.169.254.nip.io/latest/meta-data/iam/security-credentials/. The validateWebhookURL function passes the hostname through net.ParseIP(), receives nil, skips all private-IP checks, and stores the webhook as active. A publicly available curl-based PoC demonstrates this flow. On each subsequent application echo event, the Dispatcher fires the stored webhook, causing the Ech0 server to DNS-resolve the nip.io hostname to 169.254.169.254 and POST to the cloud metadata endpoint, returning temporary IAM credentials or instance identity data to the attacker.

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

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

Alert me

AnalysisAIv1 – Aug 25, 2026

Server-side request forgery in Ech0 through 4.2.1 (Go-based self-hosted application by lin-snow) allows an authenticated admin to exfiltrate data from internal network services and cloud metadata endpoints by exploiting a DNS resolution bypass in webhook URL validation. The validateWebhookURL function checks only literal IP strings via net.ParseIP(), so hostnames like 169.254.169.254.nip.io pass validation unchallenged and DNS-resolve to private IPs at request time. Publicly available exploit code exists (curl-based PoC in GHSA-r2x7-427f-rq69); no confirmed active exploitation (not in CISA KEV). The CVSS 4.0 score of 5.1 reflects the PR:H prerequisite, which substantially limits real-world exposure.

RemediationAI

Upgrade Ech0 to version 4.4.3 or later; this is the vendor-released patch confirmed by both the GitHub security advisory (GHSA-r2x7-427f-rq69) and VulnCheck. The fix should replace the net.ParseIP()-only check with a DNS-resolving validation that resolves the webhook hostname at creation time and validates the resulting IPs against private/loopback/link-local ranges. If upgrading immediately is not possible, a compensating control is to restrict the admin interface to trusted network segments only, reducing the population of users who can create webhooks. In cloud environments, consider enabling IMDS v2 (IMDSv2 on AWS), which requires a PUT-initiated session token, making metadata access via simple GET-based SSRF non-trivial - note this is a cloud-side mitigation and does not fix the SSRF itself. Blocking outbound server connections to RFC-1918 and 169.254.x.x ranges at the network/firewall layer would prevent exploitation against internal resources. See https://github.com/lin-snow/Ech0/security/advisories/GHSA-r2x7-427f-rq69 for fix details.

Affected VersionsENISA

Ech0 0 <4.4.3

Affected Packages

go github.com/lin-snow/ech0 fix: 4.4.3
euvd ech0 fix: 4.4.3

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Ech0 is a Go-based self-hosted messaging or echo application (CPE: cpe:2.3:a:lin-snow:ech0). The vulnerable component is validateWebhookURL() in internal/service/setting/webhook_setting_service.go (lines 180-199). The function uses net.ParseIP() to identify private/loopback addresses, but net.ParseIP() returns nil for any hostname (non-literal IP string), causing the entire private-IP guard block to be skipped. This is a classic CWE-918 (Server-Side Request Forgery) pattern: trusted input (the hostname) is used to initiate a server-side network connection without verifying the resolved destination. Both the TestWebhook and Dispatcher HTTP clients use standard http.Client with no custom DialContext to intercept and validate post-resolution IPs. Once a malicious webhook is stored (is_active: true), the Dispatcher.HandleObservation function triggers it on every application event without re-validation, making the SSRF persistent and recurring. Cloud metadata endpoints (169.254.169.254 on AWS, Azure, GCP) are the primary high-value targets.

Know when Ech0 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 5.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
vuln.today AI 5.5 MEDIUM

PR:H reflects mandatory admin privileges; S:C because the vulnerable server initiates requests to out-of-scope internal systems; no availability impact.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

Lifecycle Timeline

1
Patch available
Aug 25, 2026 - 13:02 EUVD

DescriptionCVE.org

Ech0 through 4.2.1 contains a server-side request forgery vulnerability in the validateWebhookURL function (webhook_setting_service.go), which only validates literal IP addresses via net.ParseIP() and fails to reject hostnames that DNS-resolve to private or internal IPs (e.g., 169.254.169.254.nip.io). An attacker with admin privileges can create a webhook with such a hostname to bypass validation and cause the server to make requests to internal services, cloud metadata endpoints, and private network resources. The issue is fixed in 4.4.3.

Threat Intelligence Overview

EPSS Score
0.2%
Top 84% exploitable
Prevalence
Rare
niche self-hosted Go application, small open-source community footprint
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High

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 No
EPSS 0.2%
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
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
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.

More in Ech0

View all
CVE-2026-79664 CRITICAL
9.1 Aug 25

Persistent authentication bypass in Ech0 (lin-snow's self-hosted lightweight publishing/memo app) before 4.7.3 lets an a

CVE-2026-79662 HIGH
8.8 Aug 25

OAuth redirect URI validation in Ech0 through 4.5.6 allows session hijacking via exchange-code theft by exploiting incom

CVE-2026-79665 HIGH
8.7 Aug 25

Authorization bypass in Ech0 before 4.5.1 allows any authenticated non-admin user to invoke privileged admin endpoints b

CVE-2026-79658 HIGH
8.7 Aug 25

Denial of service in Ech0 before 5.0.1 allows unauthenticated remote attackers to saturate server CPU by exploiting a qu

CVE-2026-79673 HIGH
8.5 Aug 25

Privilege escalation in Ech0 before 4.4.3 allows an attacker holding an admin's profile:read access token to change the

CVE-2026-79659 HIGH
8.3 Aug 25

Server-side request forgery in Ech0 before version 4.7.3 allows authenticated users to pivot through the application ser

CVE-2026-79667 HIGH
7.2 Aug 25

Scope enforcement in Ech0 4.3.4 and earlier is opt-in at the route level, meaning privileged admin routes that omit the

CVE-2026-79666 HIGH
7.1 Aug 25

Missing administrator authorization on dashboard log endpoints in Ech0 before 4.4.3 allows any authenticated low-privile

CVE-2026-79672 HIGH
7.0 Aug 25

Scope enforcement bypass in Ech0's comment panel admin API allows any holder of a valid admin-issued access token - rega

CVE-2026-79668 MEDIUM
6.9 Aug 25

Unauthenticated metric inflation in Ech0 before 4.7.3 allows any remote attacker to arbitrarily increment the fav_count

CVE-2026-79661 MEDIUM
6.9 Aug 25

Unauthenticated remote attackers can increment the fav_count of any echo - including private ones - in Ech0 through 4.5.

CVE-2026-79660 MEDIUM
6.9 Aug 25

Ech0 before version 4.7.3 exposes guest commenter email addresses to unauthenticated remote callers via public comment-l

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