From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id B6E2A941639 for ; Thu, 11 Jan 2024 09:14:59 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=3Ml2pS8lvTTvq2xF3nW1THQIFugc7Lz5zc+p4YgAbSk=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1704964498; v=1; b=ofc882ZgYOSvk/F5zaBZ4b6+6M0vi4I7f/W+YcvU2GWeG8dcf6mKtu2/ZJX29npl24NhUEbd uV6aJtpN/HnnyOz7w/1ABsoFYfSeqOHhY8hA/+wghgdsgm25uHWupkms1SijIkLmbXLunVJ3ia2 bSLKVRyQR6+I4KrXpbAgXtfo= X-Received: by 127.0.0.2 with SMTP id korBYY7687511xUZsEQufn8c; Thu, 11 Jan 2024 01:14:58 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7]) by mx.groups.io with SMTP id smtpd.web10.7839.1704964493931222782 for ; Thu, 11 Jan 2024 01:14:54 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10949"; a="20272695" X-IronPort-AV: E=Sophos;i="6.04,185,1695711600"; d="scan'208";a="20272695" X-Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Jan 2024 01:14:54 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.04,185,1695711600"; d="scan'208";a="16979451" X-Received: from gguo-desk.gar.corp.intel.com ([10.225.76.26]) by fmviesa002.fm.intel.com with ESMTP; 11 Jan 2024 01:14:53 -0800 From: "Guo, Gua" To: devel@edk2.groups.io Cc: gua.guo@intel.com, Marc Beatove , Liming Gao , John Mathew , Gerd Hoffmann Subject: [edk2-devel] [PATCH v2 4/4] MdeModulePkg/Hob: Integer Overflow in CreateHob() Date: Thu, 11 Jan 2024 17:14:39 +0800 Message-Id: <20240111091439.1767-5-gua.guo@intel.com> In-Reply-To: <20240111091439.1767-1-gua.guo@intel.com> References: <20240111091439.1767-1-gua.guo@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,gua.guo@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: yaFLfrt2yEeWqGdgSzL2BlLxx7686176AA= Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=ofc882Zg; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io From: Gua Guo REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D4166 Fix integer overflow in various CreateHob instances. Fixes: CVE-2022-36765 The CreateHob() function aligns the requested size to 8 performing the following operation: ``` HobLength =3D (UINT16)((HobLength + 0x7) & (~0x7)); ``` No checks are performed to ensure this value doesn't overflow, and could lead to CreateHob() returning a smaller HOB than requested, which could lead to OOB HOB accesses. Reported-by: Marc Beatove Cc: Liming Gao Cc: John Mathew Authored-by: Gerd Hoffmann Signed-off-by: Gua Guo --- MdeModulePkg/Core/Pei/Hob/Hob.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MdeModulePkg/Core/Pei/Hob/Hob.c b/MdeModulePkg/Core/Pei/Hob/Ho= b.c index c4882a23cd..985da50995 100644 --- a/MdeModulePkg/Core/Pei/Hob/Hob.c +++ b/MdeModulePkg/Core/Pei/Hob/Hob.c @@ -85,7 +85,7 @@ PeiCreateHob ( //=0D // Check Length to avoid data overflow.=0D //=0D - if (0x10000 - Length <=3D 0x7) {=0D + if (MAX_UINT16 - Length < 0x7) {=0D return EFI_INVALID_PARAMETER;=0D }=0D =0D --=20 2.39.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#113610): https://edk2.groups.io/g/devel/message/113610 Mute This Topic: https://groups.io/mt/103658964/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-