The ssl.match_hostname function in the SSL module in Python 2.6 through 3.4 does not properly handle a '\0' character in a domain name in the Subject Alternative Name 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.
{
"cwe_ids": []
}[
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"208476072018703374169705949281975767378",
"27165912587214076874359125077530548518",
"315990163309743018432116170712701824069",
"16502815811077818532398841776126361458",
"153838115004027901382976872871093713864",
"116737434654397694070227751028478479487",
"201485418855318729409495772323686141196",
"205712877832216404655709859647738578952",
"65123699377914112943705372694572766342",
"217558669058264310948011973600883778618",
"126438800798347972348611030803392248008",
"271522026747002048919267003663030145729",
"198029677352766576298626273114201548235",
"9967940187708458286748735264491630499",
"284153787139370919685701502369938440369",
"247846963957053206303308641289118312148",
"271522026747002048919267003663030145729",
"224726372933653730734229496088504105210",
"305963829634363421081230092522916401593",
"243992615745365601462973855290326203357"
]
},
"source": "https://github.com/python/cpython/commit/82f88283171933127f20f866a7f98694b29cca56",
"id": "PSF-2013-2-04d4aa5a",
"signature_version": "v1",
"target": {
"file": "Modules/_ssl.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"267195821947465670376880628645124211509",
"66794394928692160847769070482100396933",
"35445144585062615840440184453341086890",
"9314011799575976869770951580840136823",
"201485418855318729409495772323686141196",
"205712877832216404655709859647738578952",
"65123699377914112943705372694572766342",
"217558669058264310948011973600883778618",
"126438800798347972348611030803392248008",
"271522026747002048919267003663030145729",
"198029677352766576298626273114201548235",
"9967940187708458286748735264491630499",
"284153787139370919685701502369938440369",
"247846963957053206303308641289118312148",
"271522026747002048919267003663030145729",
"224726372933653730734229496088504105210",
"305963829634363421081230092522916401593",
"243992615745365601462973855290326203357"
]
},
"source": "https://github.com/python/cpython/commit/ec3c103520a5061e657581b388e2b8ba6f74602a",
"id": "PSF-2013-2-7a608571",
"signature_version": "v1",
"target": {
"file": "Modules/_ssl.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"function_hash": "309199277346399668667350174286899743690",
"length": 2918.0
},
"source": "https://github.com/python/cpython/commit/82f88283171933127f20f866a7f98694b29cca56",
"id": "PSF-2013-2-884b1a21",
"signature_version": "v1",
"target": {
"function": "newPySSLObject",
"file": "Modules/_ssl.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"function_hash": "325444891445462604615767600577434733812",
"length": 2226.0
},
"source": "https://github.com/python/cpython/commit/82f88283171933127f20f866a7f98694b29cca56",
"id": "PSF-2013-2-fd000e40",
"signature_version": "v1",
"target": {
"function": "_get_peer_alt_names",
"file": "Modules/_ssl.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"digest": {
"function_hash": "231472686733229083479575063711306808999",
"length": 2354.0
},
"source": "https://github.com/python/cpython/commit/ec3c103520a5061e657581b388e2b8ba6f74602a",
"id": "PSF-2013-2-fd25439a",
"signature_version": "v1",
"target": {
"function": "_get_peer_alt_names",
"file": "Modules/_ssl.c"
}
}
]