1 Star 0 Fork 36

成子晗 / qt

forked from src-openEuler / qt 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
CVE-2018-19872.patch 1.38 KB
一键复制 编辑 原始数据 按行查看 历史
syyhao 提交于 2019-12-17 11:10 . init
From b7321368924c4dbed81aa008d76ebfb1dffd7e60 Mon Sep 17 00:00:00 2001
From: Eirik Aavitsland <eirik.aavitsland@qt.io>
Date: Thu, 2 Aug 2018 13:11:20 +0200
Subject: [PATCH] Fix crash in qppmhandler for certain malformed image files
The ppm format specifies that the maximum color value field must be
less than 65536. The handler did not enforce this, leading to
potentional overflow when the value was used in 16 bits context.
Task-number: QTBUG-69449
Change-Id: Iea7a7e0f8953ec1ea8571e215687d12a9d77e11c
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
(cherry picked from commit 8c4207dddf9b2af0767de2ef0a10652612d462a5)
(cherry picked from commit 805dce07b9797f5f2770a9d2c58d6d381784ca25)
---
src/gui/image/qppmhandler.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/gui/image/qppmhandler.cpp b/src/gui/image/qppmhandler.cpp
index 6eb35e15586..307dcc693d5 100644
--- a/src/gui/image/qppmhandler.cpp
+++ b/src/gui/image/qppmhandler.cpp
@@ -108,7 +108,7 @@ static bool read_pbm_header(QIODevice *device, char& type, int& w, int& h, int&
else
mcc = read_pbm_int(device); // get max color component
- if (w <= 0 || w > 32767 || h <= 0 || h > 32767 || mcc <= 0)
+ if (w <= 0 || w > 32767 || h <= 0 || h > 32767 || mcc <= 0 || mcc > 0xffff)
return false; // weird P.M image
return true;
--
2.16.3
1
https://gitee.com/chengzihan2/qt.git
git@gitee.com:chengzihan2/qt.git
chengzihan2
qt
qt
master

搜索帮助