OpenCV
cpe:2.3:a:opencv:opencv:*:*:*:*:*:*:*
- < 4.12.0
A vulnerability in OpenCV versions prior to 4.12.0 allows for an uninitialized pointer on the stack to cause arbitrary writes to the heap. This issue arises when the library processes specially crafted JPEG images. The vulnerability stems from the JPEG 2000 decoder, where a pointer variable is not properly initialized before being used, leading to potential memory corruption.
Exploitation of this vulnerability can result in a heap-use-after-free condition, allowing for memory corruption that could be leveraged for arbitrary code execution.
The vulnerability can be reproduced by using OpenCV's image decoding functions with crafted JPEG 2000 data that exploits the uninitialized pointer issue. This can be done by creating a C++ program that uses the OpenCV library to decode the manipulated JPEG 2000 images, triggering the vulnerability in the process.
Users can upgrade to OpenCV version 4.12.0 or later, where this vulnerability has been fixed.
Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.