← Back to CVE Explorer

CVE-2026-118652

Full vulnerability record from the local CVENow database.

Description

Echo is a Go web framework. Prior to 4.16.0 and 5.4.0, Context.JSONP and Context.JSONPBlob concatenate an unvalidated callback value into a JavaScript response. A route that passes attacker-controlled input as the callback can return executable script syntax, allowing reflected cross-site scripting when a user loads the crafted response. The vulnerable jsonPBlob path performs no callback validation or escaping, and exploitation requires an application route that exposes attacker control over the callback argument. This issue is fixed in 4.16.0 and 5.4.0.

Severity
MEDIUM
CVSS score
6.1 (v3.1)
Vulnerability status
Awaiting Analysis
Source identifier
Published
2026-10-28 20:17:22.250000
Last modified
2026-10-29 15:15:16.507000
View original CVE JSON
{
  "id": "CVE-2026-118652",
  "sourceIdentifier": "[email protected]",
  "published": "2026-10-28T20:17:22.250",
  "lastModified": "2026-10-29T15:15:16.507",
  "vulnStatus": "Awaiting Analysis",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "Echo is a Go web framework. Prior to 4.16.0 and 5.4.0, Context.JSONP and Context.JSONPBlob concatenate an unvalidated callback value into a JavaScript response. A route that passes attacker-controlled input as the callback can return executable script syntax, allowing reflected cross-site scripting when a user loads the crafted response. The vulnerable jsonPBlob path performs no callback validation or escaping, and exploitation requires an application route that exposes attacker control over the callback argument. This issue is fixed in 4.16.0 and 5.4.0."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "labstack",
          "product": "echo",
          "versions": [
            {
              "version": "< 4.16.0",
              "status": "affected"
            },
            {
              "version": ">= 5.0.0, < 5.4.0",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N",
          "baseScore": 6.1,
          "baseSeverity": "MEDIUM",
          "attackVector": "NETWORK",
          "attackComplexity": "LOW",
          "privilegesRequired": "NONE",
          "userInteraction": "REQUIRED",
          "scope": "CHANGED",
          "confidentialityImpact": "LOW",
          "integrityImpact": "LOW",
          "availabilityImpact": "NONE"
        },
        "exploitabilityScore": 2.8,
        "impactScore": 2.7
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Primary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-79"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/labstack/echo/commit/b838391e2eade87ae7e5a09d7bb5087bec271ec1",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/labstack/echo/commit/fc410094b2f3415cf2bf5204082137b205bfd5af",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/labstack/echo/releases/tag/v4.16.0",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/labstack/echo/releases/tag/v5.4.0",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/labstack/echo/security/advisories/GHSA-h9g5-28mm-hx3g",
      "source": "[email protected]"
    }
  ]
}