1.背景描述
思科Talos最近在OpenCV庫中發現兩個緩衝區溢位漏洞,攻擊者可利用這些漏洞來導致堆損壞和潛在的程式碼執行。
2.漏洞列表
CVE ID : CVE-2019-5063、CVE-2019-5064
漏洞等級: 高危
CVSS評分: 8.8
CVSS Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
影響範圍: OpenCV 4.1.0
3.漏洞詳情
OpenCV(開源計算機視覺庫)是一個主要針對實時計算機視覺程式設計功能的開源庫。包括Google、Microsoft、Intel、IBM、Yahoo、Sony、Honda、Toyota和其他公司在內的主要科技公司都使用該庫來開發面部識別技術、機器人技術、運動跟蹤等解決方案。
CVE-2019-5063和CVE-2019-5064都是堆緩衝區溢位漏洞,存在於OpenCV 4.1.0的資料結構永續性功能中。該功能允許開發人員在磁碟上的檔案中寫入OpenCV資料結構以及從磁碟上的檔案中檢索OpenCV資料結構,檔案型別可以是XML、YAML或JSON。攻擊者可以分別透過惡意XML檔案和JSON檔案觸發這兩個漏洞。
CVE-2019-5063在該功能解析包含潛在字元實體引用的XML檔案時觸發,當遇到&符號時,API將繼續解析字元,直到遇到分號為止。如果字串與switch語句中的字串不匹配,則資料被完整複製進緩衝區中。CVE-2019-5064是在該功能解析包含空位元組的JSON檔案時觸發的,當遇到空位元組時,直到該點的整個值均被複制進緩衝區中,但API並未檢查JSON值是否會溢位目標緩衝區。
4.修復建議
OpenCV 4.2.0版本已經修復了這兩個漏洞,建議使用者進行更新。
5.參考連結
https://blog.talosintelligence.com/2020/01/opencv-buffer-overflow-jan-2020.html
https://nvd.nist.gov/vuln/detail/CVE-2019-5063
https://nvd.nist.gov/vuln/detail/CVE-2019-5064
https://securityaffairs.co/wordpress/95962/hacking/opencv-library-buffere-overflow.html
1.背景描述
思科Talos最近在OpenCV庫中發現兩個緩衝區溢位漏洞,攻擊者可利用這些漏洞來導致堆損壞和潛在的程式碼執行。
2.漏洞列表
CVE ID : CVE-2019-5063、CVE-2019-5064
漏洞等級: 高危
CVSS評分: 8.8
CVSS Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
影響範圍: OpenCV 4.1.0
3.漏洞詳情
OpenCV(開源計算機視覺庫)是一個主要針對實時計算機視覺程式設計功能的開源庫。包括Google、Microsoft、Intel、IBM、Yahoo、Sony、Honda、Toyota和其他公司在內的主要科技公司都使用該庫來開發面部識別技術、機器人技術、運動跟蹤等解決方案。
CVE-2019-5063和CVE-2019-5064都是堆緩衝區溢位漏洞,存在於OpenCV 4.1.0的資料結構永續性功能中。該功能允許開發人員在磁碟上的檔案中寫入OpenCV資料結構以及從磁碟上的檔案中檢索OpenCV資料結構,檔案型別可以是XML、YAML或JSON。攻擊者可以分別透過惡意XML檔案和JSON檔案觸發這兩個漏洞。
CVE-2019-5063在該功能解析包含潛在字元實體引用的XML檔案時觸發,當遇到&符號時,API將繼續解析字元,直到遇到分號為止。如果字串與switch語句中的字串不匹配,則資料被完整複製進緩衝區中。CVE-2019-5064是在該功能解析包含空位元組的JSON檔案時觸發的,當遇到空位元組時,直到該點的整個值均被複制進緩衝區中,但API並未檢查JSON值是否會溢位目標緩衝區。
4.修復建議
OpenCV 4.2.0版本已經修復了這兩個漏洞,建議使用者進行更新。
5.參考連結
https://blog.talosintelligence.com/2020/01/opencv-buffer-overflow-jan-2020.html
https://nvd.nist.gov/vuln/detail/CVE-2019-5063
https://nvd.nist.gov/vuln/detail/CVE-2019-5064
https://securityaffairs.co/wordpress/95962/hacking/opencv-library-buffere-overflow.html