{"id":"CVE-2019-19624","aliases":["DEBIAN-CVE-2019-19624","EUVD-2021-2217","GHSA-jggw-2q6g-c3m6","PYSEC-2026-2800","PYSEC-2026-2824","PYSEC-2026-2839","PYSEC-2026-723","UBUNTU-CVE-2019-19624","USN-7247-1"],"status":"published","title":"Out-of-bounds Read in OpenCV","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1. Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","severity":{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.01756,"percentile":0.78106,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-125"],"published":"2019-12-06T14:26:56Z","modified":"2026-10-31T07:05:17Z","fixes":[{"ecosystem":"PyPI","package":"opencv-python","fixed_in":["4.1.0.25"],"sources":["ghsa","osv"]},{"ecosystem":"PyPI","package":"opencv-python-headless","fixed_in":["4.1.0.25"],"sources":["ghsa","osv"]},{"ecosystem":"PyPI","package":"opencv-contrib-python","fixed_in":["4.1.0.25"],"sources":["ghsa","osv"]},{"ecosystem":"PyPI","package":"opencv-contrib-python-headless","fixed_in":["4.1.0.25"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"opencv","fixed_in":["4.1.2+dfsg-3"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"opencv","fixed_in":["4.1.2+dfsg-3"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"opencv","fixed_in":["4.1.2+dfsg-3"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:18.04:LTS","package":"opencv","fixed_in":["3.2.0+dfsg-4ubuntu0.1+esm4"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"opencv-python","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"4.1.0.24"},{"fixed":"4.1.0.25"}]}]},{"source":"ghsa","ecosystem":"PyPI","package":"opencv-python-headless","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"4.1.0.24"},{"fixed":"4.1.0.25"}]}]},{"source":"ghsa","ecosystem":"PyPI","package":"opencv-contrib-python","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"4.1.0.24"},{"fixed":"4.1.0.25"}]}]},{"source":"ghsa","ecosystem":"PyPI","package":"opencv-contrib-python-headless","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"4.1.0.24"},{"fixed":"4.1.0.25"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"opencv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.2+dfsg-3"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"opencv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.2+dfsg-3"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"opencv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.2+dfsg-3"}]}]},{"source":"osv","ecosystem":"PyPI","package":"opencv-python","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0.25"}]}],"versions":["3.4.0.14","3.4.1.15","3.4.10.35","3.4.10.37","3.4.11.39","3.4.11.41","3.4.11.43","3.4.11.45","3.4.13.47","3.4.14.51","3.4.14.53","3.4.15.55","3.4.16.57","3.4.16.59","3.4.17.61","3.4.17.63","3.4.18.65","3.4.2.17","3.4.3.18","3.4.4.19","3.4.5.20","3.4.6.27","3.4.7.28","3.4.8.29","3.4.9.31","3.4.9.33","4.0.0.21","4.0.1.23","4.0.1.24"]},{"source":"osv","ecosystem":"PyPI","package":"opencv-python-headless","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0.25"}]}],"versions":["3.4.10.37","3.4.11.39","3.4.11.41","3.4.11.43","3.4.11.45","3.4.13.47","3.4.14.51","3.4.14.53","3.4.15.55","3.4.16.57","3.4.16.59","3.4.17.61","3.4.17.63","3.4.18.65","3.4.3.18","3.4.4.19","3.4.5.20","3.4.6.27","3.4.7.28","3.4.8.29","3.4.9.33","4.0.0.21","4.0.1.24"]},{"source":"osv","ecosystem":"PyPI","package":"opencv-contrib-python","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0.25"}]}],"versions":["3.4.10.35","3.4.10.37","3.4.11.39","3.4.11.41","3.4.11.43","3.4.11.45","3.4.13.47","3.4.14.51","3.4.14.53","3.4.15.55","3.4.16.57","3.4.16.59","3.4.17.61","3.4.17.63","3.4.18.65","3.4.2.17","3.4.3.18","3.4.4.19","3.4.5.20","3.4.6.27","3.4.7.28","3.4.8.29","3.4.9.31","3.4.9.33","4.0.0.21","4.0.1.23","4.0.1.24"]},{"source":"osv","ecosystem":"PyPI","package":"opencv-contrib-python-headless","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0.25"}]}],"versions":["3.4.0.14","3.4.10.37","3.4.11.41","3.4.11.43","3.4.11.45","3.4.13.47","3.4.14.51","3.4.14.53","3.4.15.55","3.4.16.57","3.4.16.59","3.4.17.61","3.4.17.63","3.4.18.65","3.4.2.17","3.4.3.18","3.4.4.19","3.4.5.20","3.4.6.27","3.4.7.28","3.4.8.29","3.4.9.33","4.0.0.21","4.0.1.23","4.0.1.24"]},{"source":"osv","ecosystem":"PyPI","package":"opencv-contrib-python","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0.25"}]}],"versions":["3.4.10.35","3.4.10.37","3.4.11.39","3.4.11.41","3.4.11.43","3.4.11.45","3.4.13.47","3.4.14.51","3.4.14.53","3.4.15.55","3.4.16.57","3.4.16.59","3.4.17.61","3.4.17.63","3.4.18.65","3.4.2.17","3.4.3.18","3.4.4.19","3.4.5.20","3.4.6.27","3.4.7.28","3.4.8.29","3.4.9.31","3.4.9.33","4.0.0.21","4.0.1.23","4.0.1.24"]},{"source":"osv","ecosystem":"PyPI","package":"opencv-python","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0.25"}]}],"versions":["3.4.0.14","3.4.1.15","3.4.10.35","3.4.10.37","3.4.11.39","3.4.11.41","3.4.11.43","3.4.11.45","3.4.13.47","3.4.14.51","3.4.14.53","3.4.15.55","3.4.16.57","3.4.16.59","3.4.17.61","3.4.17.63","3.4.18.65","3.4.2.16","3.4.2.17","3.4.3.18","3.4.4.19","3.4.5.20","3.4.6.27","3.4.7.28","3.4.8.29","3.4.9.31","3.4.9.33","4.0.0.21","4.0.1.23","4.0.1.24"]},{"source":"osv","ecosystem":"PyPI","package":"opencv-python-headless","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0.25"}]}],"versions":["3.4.10.37","3.4.11.39","3.4.11.41","3.4.11.43","3.4.11.45","3.4.13.47","3.4.14.51","3.4.14.53","3.4.15.55","3.4.16.57","3.4.16.59","3.4.17.61","3.4.17.63","3.4.18.65","3.4.3.18","3.4.4.19","3.4.5.20","3.4.6.27","3.4.7.28","3.4.8.29","3.4.9.33","4.0.0.21","4.0.1.24"]},{"source":"osv","ecosystem":"PyPI","package":"opencv-contrib-python-headless","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0.25"}]}],"versions":["3.4.0.14","3.4.1.15","3.4.10.37","3.4.11.39","3.4.11.41","3.4.11.43","3.4.11.45","3.4.13.47","3.4.14.51","3.4.14.53","3.4.15.55","3.4.16.57","3.4.16.59","3.4.17.61","3.4.17.63","3.4.18.65","3.4.2.17","3.4.3.18","3.4.4.19","3.4.5.20","3.4.6.27","3.4.7.28","3.4.8.29","3.4.9.33","4.0.0.21","4.0.1.23","4.0.1.24"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"opencv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.2.0+dfsg-4ubuntu0.1+esm4"}]}],"versions":["3.1.0+dfsg1-1~exp1ubuntu3","3.2.0+dfsg-3","3.2.0+dfsg-4","3.2.0+dfsg-4build1","3.2.0+dfsg-4build2","3.2.0+dfsg-4ubuntu0.1","3.2.0+dfsg-4ubuntu0.1+esm2","3.2.0+dfsg-4ubuntu0.1+esm3"]},{"source":"osv","ecosystem":"Ubuntu:Pro:18.04:LTS","package":"opencv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.2.0+dfsg-4ubuntu0.1+esm4"}]}],"versions":["3.1.0+dfsg1-1~exp1ubuntu3","3.2.0+dfsg-3","3.2.0+dfsg-4","3.2.0+dfsg-4build1","3.2.0+dfsg-4build2","3.2.0+dfsg-4ubuntu0.1","3.2.0+dfsg-4ubuntu0.1+esm2","3.2.0+dfsg-4ubuntu0.1+esm3"],"bundled":5},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"opencv","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.5.4+dfsg-9ubuntu4+esm1"}]}],"versions":["4.5.3+dfsg-1ubuntu1","4.5.4+dfsg-9ubuntu2","4.5.4+dfsg-9ubuntu4"],"bundled":5}],"products":[{"vendor":"opencv","product":"opencv"},{"vendor":"redhat","product":"enterprise_linux"}],"references":[{"url":"https://github.com/opencv/opencv/issues/14554","tags":["x_refsource_MISC","x_transferred","Exploit","Issue Tracking","Third Party Advisory","report","web"]},{"url":"https://github.com/opencv/opencv/commit/d1615ba11a93062b1429fce9f0f638d1572d3418","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","fix","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-19624","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/cve-2019-19624","tags":["Third Party Advisory","advisory","web"]},{"url":"https://github.com/opencv/opencv-python/releases/tag/25","tags":["web"]},{"url":"https://github.com/advisories/GHSA-jggw-2q6g-c3m6","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2019-19624","tags":["advisory"]},{"url":"https://github.com/opencv/opencv-python","tags":["package"]},{"url":"https://pypi.org/project/opencv-contrib-python","tags":["package"]},{"url":"https://pypi.org/project/opencv-python","tags":["package"]},{"url":"https://pypi.org/project/opencv-python-headless","tags":["package"]},{"url":"https://pypi.org/project/opencv-contrib-python-headless","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2019-19624","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2019-19624","tags":["report"]},{"url":"https://ubuntu.com/security/notices/USN-7247-1","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2019-14493","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2019-16249","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2023-2617","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2023-2618","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2019-19624","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1. Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2019-12-06T14:26:56Z","modified":"2024-08-05T02:25:12.094Z","updated_at":"2026-11-02T14:20:21.059499Z"}],"euvd":[{"id":"EUVD-2021-2217","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1. Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2019-12-06T14:26:56Z","modified":"2024-08-05T02:25:12Z","updated_at":"2026-11-03T02:40:23.78072Z"}],"ghsa":[{"id":"GHSA-jggw-2q6g-c3m6","title":"Out-of-bounds Read in OpenCV","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1 (OpenCV-Python before 4.1.0.25). Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2021-10-12T22:22:58Z","modified":"2023-02-01T05:06:08Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium"}],"cwes":["CWE-125"],"updated_at":"2026-11-02T14:36:37.441118Z"}],"nvd":[{"id":"CVE-2019-19624","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1. Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2019-12-06T15:15:10.33Z","modified":"2026-06-17T02:26:58Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium","assessor":"primary"},{"version":"2.0","score":6.4,"vector":"AV:N/AC:L/Au:N/C:P/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-125"],"updated_at":"2026-11-02T14:05:38.993437Z"}],"osv":[{"id":"CVE-2019-19624","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1. Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2019-12-06T15:15:10.33Z","modified":"2026-10-31T07:05:17.125559041Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T15:44:12.010761Z"},{"id":"DEBIAN-CVE-2019-19624","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1. Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2019-12-06T15:15:10.33Z","modified":"2026-09-21T07:03:15.579009135Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T15:45:32.221385Z"},{"id":"GHSA-jggw-2q6g-c3m6","title":"Out-of-bounds Read in OpenCV","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1 (OpenCV-Python before 4.1.0.25). Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2021-10-12T22:22:58Z","modified":"2026-09-10T03:49:09.240143626Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium"}],"cwes":["CWE-125"],"updated_at":"2026-11-02T15:46:50.336262Z"},{"id":"PYSEC-2026-2800","title":"Out-of-bounds Read in OpenCV","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1 (OpenCV-Python before 4.1.0.25). Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2026-07-09T16:49:37.840883Z","modified":"2026-07-13T16:42:38.267494498Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T15:52:55.961245Z"},{"id":"PYSEC-2026-2824","title":"Out-of-bounds Read in OpenCV","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1 (OpenCV-Python before 4.1.0.25). Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2026-07-09T16:49:37.659586Z","modified":"2026-07-13T16:42:38.267494498Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T15:52:56.429374Z"},{"id":"PYSEC-2026-2839","title":"Out-of-bounds Read in OpenCV","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1 (OpenCV-Python before 4.1.0.25). Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2026-07-09T16:49:37.748593Z","modified":"2026-07-13T16:42:38.267494498Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T15:52:56.429374Z"},{"id":"PYSEC-2026-723","title":"Out-of-bounds Read in OpenCV","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1 (OpenCV-Python before 4.1.0.25). Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2026-07-02T14:13:13.279329Z","modified":"2026-07-13T16:42:38.267494498Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T15:52:58.117212Z"},{"id":"UBUNTU-CVE-2019-19624","description":"An out-of-bounds read was discovered in OpenCV before 4.1.1. Specifically, variable coarsest_scale is assumed to be greater than or equal to finest_scale within the calc()/ocl_calc() functions in dis_flow.cpp. However, this is not true when dealing with small images, leading to an out-of-bounds read of the heap-allocated arrays Ux and Uy.","status":"published","published":"2019-12-06T15:15:00Z","modified":"2026-04-22T12:15:57.783571Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T15:54:20.325378Z"},{"id":"USN-7247-1","title":"opencv vulnerabilities","description":"It was discovered that OpenCV did not properly manage certain XML data,\nleading to a NULL pointer dereference. If a user were tricked into\nloading a specially crafted file, a remote attacker could possibly use\nthis issue to make OpenCV crash, resulting in a denial of service.\nThis issue only affected Ubuntu 18.04 LTS. (CVE-2019-14493)\n\nIt was discovered that OpenCV may perform out-of-bounds reads in certain\nsituations. An attacker could possibly use this issue to cause OpenCV to\ncrash, resulting in a denial of service, or the execution of arbitrary\ncode. This issue only affected Ubuntu 18.04 LTS.\n(CVE-2019-16249, CVE-2019-19624)\n\nIt was discovered that the QR code module of OpenCV incorrectly processed\ncertain maliciously crafted QR codes. A remote attacker could possibly use\nthis issue to cause OpenCV to crash, resulting in a denial of service.\nThis issue only affected Ubuntu 22.04 LTS. (CVE-2023-2617, CVE-2023-2618)\n","status":"published","published":"2025-02-03T13:46:02Z","modified":"2026-04-27T17:47:13.44901738Z","updated_at":"2026-11-02T16:58:18.876384Z"}]}}
