{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2025-14017","assignerOrgId":"2499f714-1537-4658-8207-48ae4bb9eae9","state":"PUBLISHED","assignerShortName":"curl","dateReserved":"2025-12-04T11:42:10.538Z","datePublished":"2026-01-08T10:07:05.554Z","dateUpdated":"2026-09-15T06:02:27.813Z"},"containers":{"cna":{"providerMetadata":{"orgId":"2499f714-1537-4658-8207-48ae4bb9eae9","shortName":"curl","dateUpdated":"2026-09-15T06:02:27.813Z"},"title":"broken TLS options for threaded LDAPS","descriptions":[{"lang":"en","value":"When doing multi-threaded LDAPS transfers (LDAP over TLS) with libcurl,\nchanging TLS options in one thread would inadvertently change them globally\nand therefore possibly also affect other concurrently setup transfers.\n\nDisabling certificate verification for a specific transfer could\nunintentionally disable the feature for other threads as well."}],"affected":[{"vendor":"curl","product":"curl","versions":[{"version":"7.17.0","status":"affected","versionType":"semver","lessThan":"8.14.2"},{"version":"8.15.0","status":"affected","versionType":"semver","lessThan":"8.16.1"},{"version":"8.17.0","status":"affected","versionType":"semver","lessThan":"8.18.0"}],"defaultStatus":"unaffected"},{"vendor":"curl","product":"curl","versions":[{"version":"ccba0d10b6baf5c73cae8cf4fb3f29f0f55c5a34","status":"affected","versionType":"git","lessThan":"39d1976b7f709a516e3243338ebc0443bdd8d56d"}],"defaultStatus":"unaffected","repo":"https://github.com/curl/curl.git"},{"vendor":"curl","product":"curl","versions":[{"version":"8.17.0","status":"affected"},{"version":"8.16.0","status":"affected"},{"version":"8.15.0","status":"affected"},{"version":"8.14.1","status":"affected"},{"version":"8.14.0","status":"affected"},{"version":"8.13.0","status":"affected"},{"version":"8.12.1","status":"affected"},{"version":"8.12.0","status":"affected"},{"version":"8.11.1","status":"affected"},{"version":"8.11.0","status":"affected"},{"version":"8.10.1","status":"affected"},{"version":"8.10.0","status":"affected"},{"version":"8.9.1","status":"affected"},{"version":"8.9.0","status":"affected"},{"version":"8.8.0","status":"affected"},{"version":"8.7.1","status":"affected"},{"version":"8.7.0","status":"affected"},{"version":"8.6.0","status":"affected"},{"version":"8.5.0","status":"affected"},{"version":"8.4.0","status":"affected"},{"version":"8.3.0","status":"affected"},{"version":"8.2.1","status":"affected"},{"version":"8.2.0","status":"affected"},{"version":"8.1.2","status":"affected"},{"version":"8.1.1","status":"affected"},{"version":"8.1.0","status":"affected"},{"version":"8.0.1","status":"affected"},{"version":"8.0.0","status":"affected"},{"version":"7.88.1","status":"affected"},{"version":"7.88.0","status":"affected"},{"version":"7.87.0","status":"affected"},{"version":"7.86.0","status":"affected"},{"version":"7.85.0","status":"affected"},{"version":"7.84.0","status":"affected"},{"version":"7.83.1","status":"affected"},{"version":"7.83.0","status":"affected"},{"version":"7.82.0","status":"affected"},{"version":"7.81.0","status":"affected"},{"version":"7.80.0","status":"affected"},{"version":"7.79.1","status":"affected"},{"version":"7.79.0","status":"affected"},{"version":"7.78.0","status":"affected"},{"version":"7.77.0","status":"affected"},{"version":"7.76.1","status":"affected"},{"version":"7.76.0","status":"affected"},{"version":"7.75.0","status":"affected"},{"version":"7.74.0","status":"affected"},{"version":"7.73.0","status":"affected"},{"version":"7.72.0","status":"affected"},{"version":"7.71.1","status":"affected"},{"version":"7.71.0","status":"affected"},{"version":"7.70.0","status":"affected"},{"version":"7.69.1","status":"affected"},{"version":"7.69.0","status":"affected"},{"version":"7.68.0","status":"affected"},{"version":"7.67.0","status":"affected"},{"version":"7.66.0","status":"affected"},{"version":"7.65.3","status":"affected"},{"version":"7.65.2","status":"affected"},{"version":"7.65.1","status":"affected"},{"version":"7.65.0","status":"affected"},{"version":"7.64.1","status":"affected"},{"version":"7.64.0","status":"affected"},{"version":"7.63.0","status":"affected"},{"version":"7.62.0","status":"affected"},{"version":"7.61.1","status":"affected"},{"version":"7.61.0","status":"affected"},{"version":"7.60.0","status":"affected"},{"version":"7.59.0","status":"affected"},{"version":"7.58.0","status":"affected"},{"version":"7.57.0","status":"affected"},{"version":"7.56.1","status":"affected"},{"version":"7.56.0","status":"affected"},{"version":"7.55.1","status":"affected"},{"version":"7.55.0","status":"affected"},{"version":"7.54.1","status":"affected"},{"version":"7.54.0","status":"affected"},{"version":"7.53.1","status":"affected"},{"version":"7.53.0","status":"affected"},{"version":"7.52.1","status":"affected"},{"version":"7.52.0","status":"affected"},{"version":"7.51.0","status":"affected"},{"version":"7.50.3","status":"affected"},{"version":"7.50.2","status":"affected"},{"version":"7.50.1","status":"affected"},{"version":"7.50.0","status":"affected"},{"version":"7.49.1","status":"affected"},{"version":"7.49.0","status":"affected"},{"version":"7.48.0","status":"affected"},{"version":"7.47.1","status":"affected"},{"version":"7.47.0","status":"affected"},{"version":"7.46.0","status":"affected"},{"version":"7.45.0","status":"affected"},{"version":"7.44.0","status":"affected"},{"version":"7.43.0","status":"affected"},{"version":"7.42.1","status":"affected"},{"version":"7.42.0","status":"affected"},{"version":"7.41.0","status":"affected"},{"version":"7.40.0","status":"affected"},{"version":"7.39.0","status":"affected"},{"version":"7.38.0","status":"affected"},{"version":"7.37.1","status":"affected"},{"version":"7.37.0","status":"affected"},{"version":"7.36.0","status":"affected"},{"version":"7.35.0","status":"affected"},{"version":"7.34.0","status":"affected"},{"version":"7.33.0","status":"affected"},{"version":"7.32.0","status":"affected"},{"version":"7.31.0","status":"affected"},{"version":"7.30.0","status":"affected"},{"version":"7.29.0","status":"affected"},{"version":"7.28.1","status":"affected"},{"version":"7.28.0","status":"affected"},{"version":"7.27.0","status":"affected"},{"version":"7.26.0","status":"affected"},{"version":"7.25.0","status":"affected"},{"version":"7.24.0","status":"affected"},{"version":"7.23.1","status":"affected"},{"version":"7.23.0","status":"affected"},{"version":"7.22.0","status":"affected"},{"version":"7.21.7","status":"affected"},{"version":"7.21.6","status":"affected"},{"version":"7.21.5","status":"affected"},{"version":"7.21.4","status":"affected"},{"version":"7.21.3","status":"affected"},{"version":"7.21.2","status":"affected"},{"version":"7.21.1","status":"affected"},{"version":"7.21.0","status":"affected"},{"version":"7.20.1","status":"affected"},{"version":"7.20.0","status":"affected"},{"version":"7.19.7","status":"affected"},{"version":"7.19.6","status":"affected"},{"version":"7.19.5","status":"affected"},{"version":"7.19.4","status":"affected"},{"version":"7.19.3","status":"affected"},{"version":"7.19.2","status":"affected"},{"version":"7.19.1","status":"affected"},{"version":"7.19.0","status":"affected"},{"version":"7.18.2","status":"affected"},{"version":"7.18.1","status":"affected"},{"version":"7.18.0","status":"affected"},{"version":"7.17.1","status":"affected"},{"version":"7.17.0","status":"affected"}],"defaultStatus":"unaffected"}],"references":[{"url":"https://curl.se/docs/CVE-2025-14017.json"},{"url":"https://curl.se/docs/CVE-2025-14017.html"}],"x_osv":{"schema_version":"1.5.0","id":"CURL-CVE-2025-14017","aliases":["CVE-2025-14017"],"summary":"broken TLS options for threaded LDAPS","modified":"2026-09-07T10:34:51.00Z","database_specific":{"package":"curl","affects":"lib","URL":"https://curl.se/docs/CVE-2025-14017.json","www":"https://curl.se/docs/CVE-2025-14017.html","CWE":{"id":"CWE-567","desc":"Unsynchronized Access to Shared Data in a Multi-threaded Context"},"award":{"amount":"2540","currency":"USD"},"last_affected":"8.17.0","severity":"Medium"},"published":"2026-01-07T08:00:00.00Z","affected":[{"ranges":[{"type":"SEMVER","events":[{"introduced":"7.17.0"},{"fixed":"8.14.2"},{"introduced":"8.15.0"},{"fixed":"8.16.1"},{"introduced":"8.17.0"},{"fixed":"8.18.0"}]},{"type":"GIT","repo":"https://github.com/curl/curl.git","events":[{"introduced":"ccba0d10b6baf5c73cae8cf4fb3f29f0f55c5a34"},{"fixed":"39d1976b7f709a516e3243338ebc0443bdd8d56d"}]}],"versions":["8.17.0","8.16.0","8.15.0","8.14.1","8.14.0","8.13.0","8.12.1","8.12.0","8.11.1","8.11.0","8.10.1","8.10.0","8.9.1","8.9.0","8.8.0","8.7.1","8.7.0","8.6.0","8.5.0","8.4.0","8.3.0","8.2.1","8.2.0","8.1.2","8.1.1","8.1.0","8.0.1","8.0.0","7.88.1","7.88.0","7.87.0","7.86.0","7.85.0","7.84.0","7.83.1","7.83.0","7.82.0","7.81.0","7.80.0","7.79.1","7.79.0","7.78.0","7.77.0","7.76.1","7.76.0","7.75.0","7.74.0","7.73.0","7.72.0","7.71.1","7.71.0","7.70.0","7.69.1","7.69.0","7.68.0","7.67.0","7.66.0","7.65.3","7.65.2","7.65.1","7.65.0","7.64.1","7.64.0","7.63.0","7.62.0","7.61.1","7.61.0","7.60.0","7.59.0","7.58.0","7.57.0","7.56.1","7.56.0","7.55.1","7.55.0","7.54.1","7.54.0","7.53.1","7.53.0","7.52.1","7.52.0","7.51.0","7.50.3","7.50.2","7.50.1","7.50.0","7.49.1","7.49.0","7.48.0","7.47.1","7.47.0","7.46.0","7.45.0","7.44.0","7.43.0","7.42.1","7.42.0","7.41.0","7.40.0","7.39.0","7.38.0","7.37.1","7.37.0","7.36.0","7.35.0","7.34.0","7.33.0","7.32.0","7.31.0","7.30.0","7.29.0","7.28.1","7.28.0","7.27.0","7.26.0","7.25.0","7.24.0","7.23.1","7.23.0","7.22.0","7.21.7","7.21.6","7.21.5","7.21.4","7.21.3","7.21.2","7.21.1","7.21.0","7.20.1","7.20.0","7.19.7","7.19.6","7.19.5","7.19.4","7.19.3","7.19.2","7.19.1","7.19.0","7.18.2","7.18.1","7.18.0","7.17.1","7.17.0"]}],"credits":[{"name":"Stanislav Fort (Aisle Research)","type":"finder"},{"name":"Daniel Stenberg","type":"remediation developer"}],"details":"When doing multi-threaded LDAPS transfers (LDAP over TLS) with libcurl,\nchanging TLS options in one thread would inadvertently change them globally\nand therefore possibly also affect other concurrently setup transfers.\n\nDisabling certificate verification for a specific transfer could\nunintentionally disable the feature for other threads as well."},"problemTypes":[{"descriptions":[{"lang":"en","description":"Unsynchronized Access to Shared Data in a Multi-threaded Context","cweId":"CWE-567","type":"CWE"}]}],"credits":[{"lang":"en","value":"Stanislav Fort (Aisle Research)","type":"finder"},{"lang":"en","value":"Daniel Stenberg","type":"remediation developer"}],"x_generator":{"engine":"cvelib 1.8.0"}},"adp":[{"title":"CVE Program Container","references":[{"url":"http://www.openwall.com/lists/oss-security/2026/01/07/3"}],"providerMetadata":{"orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE","dateUpdated":"2026-01-08T11:05:58.081Z"}},{"metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":6.3,"attackVector":"LOCAL","baseSeverity":"MEDIUM","vectorString":"CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N","integrityImpact":"HIGH","userInteraction":"REQUIRED","attackComplexity":"HIGH","availabilityImpact":"NONE","privilegesRequired":"NONE","confidentialityImpact":"HIGH"}},{"other":{"type":"ssvc","content":{"timestamp":"2026-04-29T00:00:00+00:00","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"role":"CISA Coordinator","version":"2.0.3","id":"CVE-2025-14017"}}}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2026-04-30T03:56:00.891Z"}}]}}