CVE-2009-2417
lib/ssluse.c in cURL and libcurl 7.4 through 7.19.5, when OpenSSL is used, does not properly...
lib/ssluse.c in cURL and libcurl 7.4 through 7.19.5, when OpenSSL is used, does not properly handle a '\0' character in a domain name in the subject's Common Name (CN) field of an X.509 certificate, which allows man-in-the-middle attackers to spoof arbitrary SSL servers via a crafted certificate issued by a legitimate Certification Authority, a related issue to CVE-2009-2408.
Exploit likelihood
What each source reports
NVD Score used
7.5
lib/ssluse.c in cURL and libcurl 7.4 through 7.19.5, when OpenSSL is used, does not properly handle a '\0' character in a domain name in the subject's Common Name (CN) field of an X.509 certificate, which allows man-in-the-middle attackers to spoof arbitrary SSL servers via a crafted certificate issued by a legitimate Certification Authority, a related issue to CVE-2009-2408.
- Record
CVE-2009-2417- CVSS 2.0
- 7.5 High
AV:N/AC:L/Au:N/C:P/I:P/A:P - Weakness
- CWE-310
- Updated
- 2026-11-02
CVE List No score
lib/ssluse.c in cURL and libcurl 7.4 through 7.19.5, when OpenSSL is used, does not properly handle a '\0' character in a domain name in the subject's Common Name (CN) field of an X.509 certificate, which allows man-in-the-middle attackers to spoof arbitrary SSL servers via a crafted certificate issued by a legitimate Certification Authority, a related issue to CVE-2009-2408.
- Record
CVE-2009-2417- Updated
- 2026-11-02
EUVDEUVD-2009-2413 No score
lib/ssluse.c in cURL and libcurl 7.4 through 7.19.5, when OpenSSL is used, does not properly handle a '\0' character in a domain name in the subject's Common Name (CN) field of an X.509 certificate, which allows man-in-the-middle attackers to spoof arbitrary SSL servers via a crafted certificate issued by a legitimate Certification Authority, a related issue to CVE-2009-2408.
- Record
EUVD-2009-2413- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-c74q-xg62-9cwm No score
lib/ssluse.c in cURL and libcurl 7.4 through 7.19.5, when OpenSSL is used, does not properly...
lib/ssluse.c in cURL and libcurl 7.4 through 7.19.5, when OpenSSL is used, does not properly handle a '\0' character in a domain name in the subject's Common Name (CN) field of an X.509 certificate, which allows man-in-the-middle attackers to spoof arbitrary SSL servers via a crafted certificate issued by a legitimate Certification Authority, a related issue to CVE-2009-2408.
- Record
GHSA-c74q-xg62-9cwm- Updated
- 2026-11-02
OSVCURL-CVE-2009-2417 No score
embedded zero in cert name
SSL and TLS Server certificates contain one or more fields with server name or otherwise matching patterns. These strings are stored as content and length within the certificate, and thus there is no particular terminating character.
curl's OpenSSL interfacing code did faulty assumptions about those names and patterns being null-terminated, allowing itself to be fooled in case a certificate would get a zero byte embedded into one of the name fields. To illustrate, a name that would show this vulnerability could look like:
"example.com\0.haxx.se"
This cert is thus made for "haxx.se" but curl would erroneously verify it with no complaints for "example.com".
According to a recently published presentation, this kind of zero embedding has been proven to be possible with at least one CA.
- Record
CURL-CVE-2009-2417- Updated
- 2026-11-02
OSV No score
lib/ssluse.c in cURL and libcurl 7.4 through 7.19.5, when OpenSSL is used, does not properly handle a '\0' character in a domain name in the subject's Common Name (CN) field of an X.509 certificate, which allows man-in-the-middle attackers to spoof arbitrary SSL servers via a crafted certificate issued by a legitimate Certification Authority, a related issue to CVE-2009-2408.
- Record
CVE-2009-2417- Updated
- 2026-11-02
OSVDEBIAN-CVE-2009-2417 No score
lib/ssluse.c in cURL and libcurl 7.4 through 7.19.5, when OpenSSL is used, does not properly handle a '\0' character in a domain name in the subject's Common Name (CN) field of an X.509 certificate, which allows man-in-the-middle attackers to spoof arbitrary SSL servers via a crafted certificate issued by a legitimate Certification Authority, a related issue to CVE-2009-2408.
- Record
DEBIAN-CVE-2009-2417- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:10303-1 No score
curl-7.51.0-1.1 on GA media
These are all security issues fixed in the curl-7.51.0-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:10303-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
curlDebian:12 |
before 7.19.5-1.1 | 7.19.5-1.1 |
curlDebian:13 |
before 7.19.5-1.1 | 7.19.5-1.1 |
curlDebian:14 |
before 7.19.5-1.1 | 7.19.5-1.1 |
curlDebian:4.0 |
before 7.15.5-1etch3, plus listed versions 7.15.5-17.15.5-1etch17.15.5-1etch2 |
7.15.5-1etch3 |
curlDebian:5.0 |
before 7.18.2-8lenny3, plus listed versions 7.18.2-87.18.2-8lenny2 |
7.18.2-8lenny3 |
curlRed Hat:enterprise_linux:3::as |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curl-debuginfoRed Hat:enterprise_linux:3::as |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curl-develRed Hat:enterprise_linux:3::as |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curlRed Hat:enterprise_linux:3::desktop |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curl-debuginfoRed Hat:enterprise_linux:3::desktop |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
Show 28 moreShow less
| Package | Affected | Fixed |
|---|---|---|
curl-develRed Hat:enterprise_linux:3::desktop |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curlRed Hat:enterprise_linux:3::es |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curl-debuginfoRed Hat:enterprise_linux:3::es |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curl-develRed Hat:enterprise_linux:3::es |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curlRed Hat:enterprise_linux:3::ws |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curl-debuginfoRed Hat:enterprise_linux:3::ws |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curl-develRed Hat:enterprise_linux:3::ws |
before 0:7.10.6-10.rhel3 | 0:7.10.6-10.rhel3 |
curlRed Hat:enterprise_linux:4::as |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curl-debuginfoRed Hat:enterprise_linux:4::as |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curl-develRed Hat:enterprise_linux:4::as |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curlRed Hat:enterprise_linux:4::desktop |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curl-debuginfoRed Hat:enterprise_linux:4::desktop |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curl-develRed Hat:enterprise_linux:4::desktop |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curlRed Hat:enterprise_linux:4::es |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curl-debuginfoRed Hat:enterprise_linux:4::es |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curl-develRed Hat:enterprise_linux:4::es |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curlRed Hat:enterprise_linux:4::ws |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curl-debuginfoRed Hat:enterprise_linux:4::ws |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curl-develRed Hat:enterprise_linux:4::ws |
before 0:7.12.1-11.1.el4_8.1 | 0:7.12.1-11.1.el4_8.1 |
curlRed Hat:enterprise_linux:5::client_workstation |
before 0:7.15.5-2.1.el5_3.5 | 0:7.15.5-2.1.el5_3.5 |
curl-debuginfoRed Hat:enterprise_linux:5::client_workstation |
before 0:7.15.5-2.1.el5_3.5 | 0:7.15.5-2.1.el5_3.5 |
curl-develRed Hat:enterprise_linux:5::client_workstation |
before 0:7.15.5-2.1.el5_3.5 | 0:7.15.5-2.1.el5_3.5 |
curlRed Hat:enterprise_linux:5::client |
before 0:7.15.5-2.1.el5_3.5 | 0:7.15.5-2.1.el5_3.5 |
curl-debuginfoRed Hat:enterprise_linux:5::client |
before 0:7.15.5-2.1.el5_3.5 | 0:7.15.5-2.1.el5_3.5 |
curlRed Hat:enterprise_linux:5::server |
before 0:7.15.5-2.1.el5_3.5 | 0:7.15.5-2.1.el5_3.5 |
curl-debuginfoRed Hat:enterprise_linux:5::server |
before 0:7.15.5-2.1.el5_3.5 | 0:7.15.5-2.1.el5_3.5 |
curl-develRed Hat:enterprise_linux:5::server |
before 0:7.15.5-2.1.el5_3.5 | 0:7.15.5-2.1.el5_3.5 |
curlopenSUSE:Tumbleweed |
before 7.51.0-1.1 | 7.51.0-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2009-2417 is a high vulnerability (CVSS 7.5) in Curl Libcurl, published August 12, 2009. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 3.46%, the 89th percentile. Fixed in curl 7.19.5-1.1.
References
curl.haxx.se/CVE-2009-2417/curl-7.15.1-CVE-2009-2417.patch
curl.haxx.se/CVE-2009-2417/curl-7.19.0-CVE-2009-2417.patch
curl.haxx.se/CVE-2009-2417/curl-7.19.5-CVE-2009-2417.patch
curl.haxx.se/CVE-2009-2417/curl-7.12.1-CVE-2009-2417.patch
securityfocus.com/archive/1/506055/100/0/threaded
secunia.com/advisories/37471
Show 63 moreShow less
vupen.com/english/advisories/2009/2263
ubuntu.com/usn/USN-1158-1
vmware.com/security/advisories/VMSA-2009-0016.html
secunia.com/advisories/36238
lists.apple.com/archives/security-announce/2010//Mar/msg00001.html
exchange.xforce.ibmcloud.com/vulnerabilities/52405
curl.haxx.se/CVE-2009-2417/curl-7.16.4-CVE-2009-2417.patch
wiki.rpath.com/Advisories:rPSA-2009-0124
curl.haxx.se/CVE-2009-2417/curl-7.10.6-CVE-2009-2417.patch
oval.cisecurity.org/repository/search/definition/oval%3Aorg.mitre.oval%3Adef%3A8542
curl.haxx.se/CVE-2009-2417/curl-7.18.1-CVE-2009-2417.patch
securityfocus.com/archive/1/507985/100/0/threaded
support.apple.com/kb/HT4077
shibboleth.internet2.edu/secadv/secadv_20090817.txt
secunia.com/advisories/36475
oval.cisecurity.org/repository/search/definition/oval%3Aorg.mitre.oval%3Adef%3A10114
curl.haxx.se/docs/adv_20090812.txt
secunia.com/advisories/45047
securityfocus.com/bid/36032
curl.haxx.se/CVE-2009-2417/curl-7.15.5-CVE-2009-2417.patch
vupen.com/english/advisories/2009/3316
curl.haxx.se/CVE-2009-2417/curl-7.11.0-CVE-2009-2417.patch
nvd.nist.gov/vuln/detail/CVE-2009-2417
github.com/advisories/GHSA-c74q-xg62-9cwm
security-tracker.debian.org/tracker/CVE-2009-2417
access.redhat.com/errata/RHSA-2009:1209
access.redhat.com/security/updates/classification
bugzilla.redhat.com/show_bug.cgi?id=516181
security.access.redhat.com/data/csaf/v2/advisories/2009/rhsa-2009_1209.json
access.redhat.com/security/cve/CVE-2009-2417
cve.org/CVERecord?id=CVE-2009-2417
suse.com/security/cve/CVE-2009-0037
suse.com/security/cve/CVE-2009-2417
suse.com/security/cve/CVE-2013-0249
suse.com/security/cve/CVE-2013-1944
suse.com/security/cve/CVE-2013-2174
suse.com/security/cve/CVE-2013-4545
suse.com/security/cve/CVE-2014-0015
suse.com/security/cve/CVE-2014-0138
suse.com/security/cve/CVE-2014-0139
suse.com/security/cve/CVE-2014-3613
suse.com/security/cve/CVE-2014-3620
suse.com/security/cve/CVE-2014-8150
suse.com/security/cve/CVE-2015-3143
suse.com/security/cve/CVE-2015-3144
suse.com/security/cve/CVE-2015-3145
suse.com/security/cve/CVE-2015-3148
suse.com/security/cve/CVE-2015-3153
suse.com/security/cve/CVE-2015-3236
suse.com/security/cve/CVE-2015-3237
suse.com/security/cve/CVE-2016-0755
suse.com/security/cve/CVE-2016-7167
suse.com/security/cve/CVE-2016-8615
suse.com/security/cve/CVE-2016-8616
suse.com/security/cve/CVE-2016-8617
suse.com/security/cve/CVE-2016-8618
suse.com/security/cve/CVE-2016-8619
suse.com/security/cve/CVE-2016-8620
suse.com/security/cve/CVE-2016-8621
suse.com/security/cve/CVE-2016-8622
suse.com/security/cve/CVE-2016-8623
suse.com/security/cve/CVE-2016-8624
suse.com/security/cve/CVE-2016-8625