{"schema_version":"1.7.5","id":"CURL-CVE-2015-3144","published":"2015-04-22T08:00:00Z","modified":"2026-05-27T02:29:40.184082Z","aliases":["CVE-2015-3144"],"summary":"hostname out of boundary memory access","details":"There is a private function in libcurl called `fix_hostname()` that removes a\ntrailing dot from the hostname if there is one. The function is called after\nthe hostname has been extracted from the URL libcurl has been told to act on.\n\nIf a URL is given with a zero-length hostname, like in \"http://:80\" or \":80\",\n`fix_hostname()` indexes the hostname pointer with a -1 offset (as it blindly\nassumes a non-zero length) and both read and assign that address.\n\nAt best, this gets unnoticed but can also lead to a crash or worse. We have\nnot researched further what kind of malicious actions that potentially this\ncould be used for.","affected":[{"ranges":[{"type":"SEMVER","events":[{"introduced":"7.37.0"},{"fixed":"7.42.0"}]},{"type":"GIT","repo":"https://github.com/curl/curl.git","events":[{"introduced":"5de8d84098db1bd24e7fffefbe14e81f2a05995a"},{"fixed":"0583e87ada7a3cfb10904ae4ab61b339582c5bd3"}]}],"versions":["7.41.0","7.40.0","7.39.0","7.38.0","7.37.1","7.37.0","curl-7_41_0","curl-7_40_0","curl-7_39_0","curl-7_38_0","curl-7_37_1","curl-7_37_0"],"database_specific":{"source":"https://curl.se/docs/CURL-CVE-2015-3144.json","vanir_signatures":[{"deprecated":false,"digest":{"function_hash":"302857014196003819835645927753951719924","length":1215},"id":"CURL-CVE-2015-3144-285a442b","signature_type":"Function","signature_version":"v1","source":"https://github.com/curl/curl.git/commit/0583e87ada7a3cfb10904ae4ab61b339582c5bd3","target":{"file":"lib/url.c","function":"fix_hostname"}},{"deprecated":false,"digest":{"line_hashes":["270878377318186174494843635834225150969","46407169664050383391727544247789172485","51621819899399844632954616211039468642","118193069924792380754011537934000253690"],"threshold":0.9},"id":"CURL-CVE-2015-3144-dd778062","signature_type":"Line","signature_version":"v1","source":"https://github.com/curl/curl.git/commit/0583e87ada7a3cfb10904ae4ab61b339582c5bd3","target":{"file":"lib/url.c"}}],"vanir_signatures_modified":"2026-05-27T02:29:40Z"}}],"database_specific":{"CWE":{"desc":"Buffer Underwrite ('Buffer Underflow')","id":"CWE-124"},"URL":"https://curl.se/docs/CVE-2015-3144.json","affects":"both","last_affected":"7.41.0","package":"curl","severity":"Medium","www":"https://curl.se/docs/CVE-2015-3144.html"},"credits":[{"name":"Hanno Böck","type":"FINDER"},{"name":"Daniel Stenberg","type":"REMEDIATION_DEVELOPER"}]}