The zipreadeocd64 function in zipopen.c in libzip before 1.3.0 mishandles EOCD records, which allows remote attackers to cause a denial of service (memory allocation failure in zipcdirgrow in zipdirent.c) via a crafted ZIP archive.
[
{
"id": "CVE-2017-14107-32b145ed",
"deprecated": false,
"digest": {
"function_hash": "270634252082683356640149721446126711800",
"length": 2463.0
},
"source": "https://github.com/nih-at/libzip/commit/9b46957ec98d85a572e9ef98301247f39338a3b5",
"signature_version": "v1",
"signature_type": "Function",
"target": {
"file": "lib/zip_open.c",
"function": "_zip_read_eocd64"
}
},
{
"id": "CVE-2017-14107-ac68091e",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"165964108850227973857470887023903761180",
"96688641138386494289697648155179514093",
"45523777207728124008034808853355606263",
"224754828264554936099524097806032039924"
]
},
"source": "https://github.com/nih-at/libzip/commit/9b46957ec98d85a572e9ef98301247f39338a3b5",
"signature_version": "v1",
"signature_type": "Line",
"target": {
"file": "lib/zip_open.c"
}
}
]