SSRF protection bypass in safeurl via IPv6 addresses and unresolvable hosts
Server-Side Request Forgery (SSRF) vulnerability in Slab safeurl allows an attacker who controls a validated URL to reach internal network destinations the library is configured to block. Only IPv4 addresses are matched against the reserved ranges and the blocklist. Every other address is treated as matching nothing, so a destination that is rejected in its IPv4 form is accepted when written as an IPv6 address, IPv6 entries in the blocklist never match, and a host that resolves to no IPv4 address is accepted regardless of where it points. Deployments that rely on the allowlist instead are unaffected, because there an unmatched address is rejected. This issue affects safeurl: from 0.1.0 onward.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-77866
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 6 Nov 2026, 02:23 UTC · Revision 1
Source evidence
SSRF protection bypass in safeurl via IPv6 addresses and unresolvable hosts
core-osv · Original sourcePublished 15 Sept 2026, 15:38 UTC
Server-Side Request Forgery (SSRF) vulnerability in Slab safeurl allows an attacker who controls a validated URL to reach internal network destinations the library is configured to block. Only IPv4 addresses are matched against the reserved ranges and the blocklist. Every other address is treated as matching nothing, so a destination that is rejected in its IPv4 form is accepted when written as an IPv6 address, IPv6 entries in the blocklist never match, and a host that resolves to no IPv4 address is accepted regardless of where it points. Deployments that rely on the allowlist instead are unaffected, because there an unmatched address is rejected. This issue affects safeurl: from 0.1.0 onward.
osv:CVE-2026-77866
Complete source record
{
"id": "609bccb7b26d3bac0b78716cb12f038cd69e276bd7451913715799dad6bf58f2",
"url": "https://osv.dev/vulnerability/CVE-2026-77866",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "SSRF protection bypass in safeurl via IPv6 addresses and unresolvable hosts",
"summary": "Server-Side Request Forgery (SSRF) vulnerability in Slab safeurl allows an attacker who controls a validated URL to reach internal network destinations the library is configured to block. Only IPv4 addresses are matched against the reserved ranges and the blocklist. Every other address is treated as matching nothing, so a destination that is rejected in its IPv4 form is accepted when written as an IPv6 address, IPv6 entries in the blocklist never match, and a host that resolves to no IPv4 address is accepted regardless of where it points. Deployments that rely on the allowlist instead are unaffected, because there an unmatched address is rejected. This issue affects safeurl: from 0.1.0 onward.",
"evidence": "osv:CVE-2026-77866",
"products": [],
"severity": "critical",
"structured": {
"id": "CVE-2026-77866",
"aliases": [
"CVE-2026-77866",
"EEF-CVE-2026-77866"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:L/VA:N/SC:H/SI:L/SA:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/slab/safeurl-elixir",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "feabbd0a13f83028ab24b71710526e9da9841f70"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"fixed": "feabbd0a13f83028ab24b71710526e9da9841f70"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-77866.json"
}
}
],
"modified": "2026-10-28T02:30:45.956021605Z",
"provider": "osv",
"references": [
"https://github.com",
"https://osv.dev/vulnerability/EEF-CVE-2026-77866",
"https://repo.hex.pm",
"https://cna.erlef.org/cves/CVE-2026-77866.html",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/77xxx/CVE-2026-77866.json",
"https://nvd.nist.gov/vuln/detail/CVE-2026-77866",
"https://github.com/slab/safeurl-elixir/commit/feabbd0a13f83028ab24b71710526e9da9841f70",
"https://github.com/slab/safeurl-elixir"
],
"provider_metadata": {
"cwe_ids": [
"CWE-636",
"CWE-918"
],
"cna_assigner": "EEF",
"unresolved_ranges": [
{
"extracted_events": [
{
"range": [
{
"introduced": "0.1.0"
},
{
"fixed": "*"
},
{
"introduced": "feabbd0a13f83028ab24b71710526e9da9841f70"
},
{
"fixed": "*"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
}
]
}
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/77xxx/CVE-2026-77866.json"
}
},
"related_cves": [
{
"value": "CVE-2026-77866",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 514249,
"published_at": "2026-09-15T15:38:15.886+00:00"
}