In the mxfreadprimerpack function in libavformat/mxfdec.c in FFmpeg 3.3.3 -> 2.4, an integer signedness error might occur when a crafted file, which claims a large "itemnum" field such as 0xffffffff, is provided. As a result, the variable "item_num" turns negative, bypassing the check for a large value.
[
{
"source": "https://github.com/ffmpeg/ffmpeg/commit/a4e85b2e1c8d5b4bf0091157bbdeb0e457fb7b8f",
"signature_type": "Function",
"target": {
"function": "mxf_read_primer_pack",
"file": "libavformat/mxfdec.c"
},
"deprecated": false,
"id": "CVE-2017-14169-067e37a8",
"digest": {
"length": 638.0,
"function_hash": "145681048188837608801980436478399871595"
},
"signature_version": "v1"
},
{
"source": "https://github.com/ffmpeg/ffmpeg/commit/9d00fb9d70ee8c0cc7002b89318c5be00f1bbdad",
"signature_type": "Function",
"target": {
"function": "mxf_read_primer_pack",
"file": "libavformat/mxfdec.c"
},
"deprecated": false,
"id": "CVE-2017-14169-9be0640c",
"digest": {
"length": 796.0,
"function_hash": "215980360088194757613814720094782596304"
},
"signature_version": "v1"
},
{
"source": "https://github.com/ffmpeg/ffmpeg/commit/a4e85b2e1c8d5b4bf0091157bbdeb0e457fb7b8f",
"signature_type": "Line",
"target": {
"file": "libavformat/mxfdec.c"
},
"deprecated": false,
"id": "CVE-2017-14169-a51d75af",
"digest": {
"line_hashes": [
"193241184267398173670347337009823642261",
"171630981959435583466780572277167453657",
"327319554379019788563009068008743800395",
"312527470193396409146904769858631136432"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"source": "https://github.com/ffmpeg/ffmpeg/commit/9d00fb9d70ee8c0cc7002b89318c5be00f1bbdad",
"signature_type": "Line",
"target": {
"file": "libavformat/mxfdec.c"
},
"deprecated": false,
"id": "CVE-2017-14169-e79cf0d7",
"digest": {
"line_hashes": [
"193241184267398173670347337009823642261",
"171630981959435583466780572277167453657",
"327319554379019788563009068008743800395",
"312527470193396409146904769858631136432"
],
"threshold": 0.9
},
"signature_version": "v1"
}
]