{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-122140","assignerOrgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","state":"PUBLISHED","assignerShortName":"VulnCheck","dateReserved":"2026-11-04T18:13:13.906Z","datePublished":"2026-11-04T20:36:57.196Z","dateUpdated":"2026-11-04T20:36:57.196Z"},"containers":{"cna":{"providerMetadata":{"orgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","shortName":"VulnCheck","dateUpdated":"2026-11-04T20:36:57.196Z"},"datePublic":"2026-11-03T23:47:57.000Z","title":"Trawl 1.5.0 before 1.10.0 SSRF via IPv4-mapped IPv6 MCP Policy Bypass","descriptions":[{"lang":"en","value":"Trawl 1.5.0 before 1.10.0 contains a server-side request forgery vulnerability that allows unauthenticated attackers to bypass the MCP outbound URL policy using IPv4-mapped IPv6 addresses. Attackers can supply hex-normalized addresses like ::ffff:7f00:1 directly or via redirects to fetch loopback, private, and cloud metadata services and read responses."}],"problemTypes":[{"descriptions":[{"lang":"en","description":"Server-Side Request Forgery (SSRF)","cweId":"CWE-918","type":"CWE"}]}],"affected":[{"vendor":"germondai","product":"trawl","defaultStatus":"unaffected","versions":[{"version":"1.5.0","lessThan":"1.10.0","status":"affected","versionType":"semver"}],"packageURL":"pkg:github/germondai/trawl","repo":"https://github.com/germondai/trawl"}],"metrics":[{"format":"CVSS","cvssV4_0":{"version":"4.0","vectorString":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:N/SA:N","attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"PRESENT","privilegesRequired":"NONE","userInteraction":"NONE","vulnConfidentialityImpact":"NONE","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"LOW","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","baseScore":6.3,"baseSeverity":"MEDIUM"}},{"format":"CVSS","cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"CHANGED","confidentialityImpact":"LOW","integrityImpact":"NONE","availabilityImpact":"NONE","baseScore":5.8,"baseSeverity":"MEDIUM"}}],"references":[{"url":"https://github.com/germondai/trawl/security/advisories/GHSA-mj45-84p2-v77q","tags":["vendor-advisory"],"name":"GitHub Security Advisory (GHSA-mj45-84p2-v77q)"},{"url":"https://github.com/germondai/trawl/commit/17cdb33a9a6a8200cf8f9fd6a57b295b04ee5173","tags":["patch"]},{"url":"https://github.com/germondai/trawl/pull/263","tags":["patch","issue-tracking"]},{"url":"https://github.com/germondai/trawl/releases/tag/v1.10.0","tags":["release-notes"],"name":"trawl v1.10.0 Release Notes"},{"url":"https://github.com/germondai/trawl/blob/v1.9.3/apps/api/src/outbound-policy.ts#L55-L56","tags":["technical-description"]},{"name":"VulnCheck Advisory: Trawl 1.5.0 before 1.10.0 SSRF via IPv4-mapped IPv6 MCP Policy Bypass","tags":["third-party-advisory"],"url":"https://www.vulncheck.com/advisories/trawl-1.5.0-before-1.10.0-ssrf-via-ipv4-mapped-ipv6-mcp-policy-bypass"}],"credits":[{"lang":"en","value":"Leardian","type":"finder"},{"lang":"en","value":"Komiljon Ayubov","type":"reporter"}],"x_generator":{"engine":"vulncheck-endgame"}}}}