URL file scheme drive letter buffer overflow
When libcurl is given either 1. a file: URL that does not use two slashes following the colon, or 2. is told that file is the default scheme to use for URLs without scheme ... and the given path starts with a drive letter and libcurl is built for Windows or DOS, then libcurl would copy the path with a wrong offset, so that the end of the given path would write beyond the malloc buffer. Up to seven bytes too much.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2017-9502
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 09:37 UTC · Revision 1
Source evidence
URL file scheme drive letter buffer overflow
core-osv · Original sourcePublished 14 Jun 2017, 08:00 UTC
When libcurl is given either 1. a file: URL that does not use two slashes following the colon, or 2. is told that file is the default scheme to use for URLs without scheme ... and the given path starts with a drive letter and libcurl is built for Windows or DOS, then libcurl would copy the path with a wrong offset, so that the end of the given path would write beyond the malloc buffer. Up to seven bytes too much.
osv:CURL-CVE-2017-9502
Complete source record
{
"id": "b900932111d06ed3e64c9b7b1211c3197e9d1f2230c300c77eca59a8c917f868",
"url": "https://osv.dev/vulnerability/CURL-CVE-2017-9502",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "URL file scheme drive letter buffer overflow",
"summary": "When libcurl is given either 1. a file: URL that does not use two slashes following the colon, or 2. is told that file is the default scheme to use for URLs without scheme ... and the given path starts with a drive letter and libcurl is built for Windows or DOS, then libcurl would copy the path with a wrong offset, so that the end of the given path would write beyond the malloc buffer. Up to seven bytes too much.",
"evidence": "osv:CURL-CVE-2017-9502",
"products": [],
"severity": "high",
"structured": {
"id": "CURL-CVE-2017-9502",
"aliases": [
"CURL-CVE-2017-9502",
"CVE-2017-9502"
],
"affected": [
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "7.53.0"
},
{
"fixed": "7.54.1"
}
]
},
{
"repo": "https://github.com/curl/curl.git",
"type": "GIT",
"events": [
{
"introduced": "1d4202ade602dd4f1192c69aed5cc905e7a9b4e2"
},
{
"fixed": "5d7952f52e410e1d4a8ff1965e5cc6fc1bde86aa"
}
]
}
],
"versions": [
"7.54.0",
"7.53.1",
"7.53.0",
"curl-7_54_0",
"curl-7_53_1",
"curl-7_53_0"
],
"database_specific": {
"source": "https://curl.se/docs/CURL-CVE-2017-9502.json",
"vanir_signatures": [
{
"id": "CURL-CVE-2017-9502-bef13ddc",
"digest": {
"length": 7020,
"function_hash": "266129347539707844623977793203611249510"
},
"source": "https://github.com/curl/curl.git/commit/5d7952f52e410e1d4a8ff1965e5cc6fc1bde86aa",
"target": {
"file": "lib/url.c",
"function": "parseurlandfillconn"
},
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1"
},
{
"id": "CURL-CVE-2017-9502-f733d0fb",
"digest": {
"threshold": 0.9,
"line_hashes": [
"77019411960562870506154579792395984597",
"110563004083793725130863967434318543309",
"139645591516437034202164075299295070964",
"140512268865760139129849858040521466005",
"81883257301821446656064499748974461330",
"222988069859926090817973227542319202984",
"241945608252580017322982663572325432168",
"18420600275651290921761966777926420646",
"286345502631307420807368422325559415653",
"99510905949824577019248636514160310010",
"116318659394780638975780029403642105212",
"220690396905256019400298788442968356866"
]
},
"source": "https://github.com/curl/curl.git/commit/5d7952f52e410e1d4a8ff1965e5cc6fc1bde86aa",
"target": {
"file": "lib/url.c"
},
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1"
}
],
"vanir_signatures_modified": "2026-10-25T01:04:57Z"
}
}
],
"modified": "2026-10-25T01:04:57.178997910Z",
"provider": "osv",
"references": [],
"provider_metadata": {
"CWE": {
"id": "CWE-122",
"desc": "Heap-based Buffer Overflow"
},
"URL": "https://curl.se/docs/CVE-2017-9502.json",
"www": "https://curl.se/docs/CVE-2017-9502.html",
"affects": "both",
"package": "curl",
"severity": "High",
"last_affected": "7.54.0"
}
},
"related_cves": [
{
"value": "CVE-2017-9502",
"evidence": "/aliases"
}
],
"security_relevant": true,
"severity_evidence": "/database_specific/severity"
},
"source_id": "core-osv",
"document_id": 444313,
"published_at": "2017-06-14T08:00:00+00:00"
}