Description
Ech0 before 4.4.3 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.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| lin-snow | Ech0 | < 4.4.3 | 4.4.3 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Go | github.com/lin-snow/ech0 | < 4.4.3 | 4.4.3 | GHSA-r2x7-427f-rq69 |
| Go | github.com/lin-snow/ech0 | all versions | — | GO-2026-5603 |
References
- GitHub Security Advisory (GHSA-r2x7-427f-rq69) vendor-advisory
- VulnCheck Advisory: Ech0 before 4.4.3 SSRF via DNS Resolution Bypass third-party-advisory