Reviewed-by: Jian J Wang <jian.j.w...@intel.com>
> -----Original Message----- > From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Jian J > Wang > Sent: Wednesday, February 27, 2019 12:04 AM > To: edk2-devel@lists.01.org > Cc: Yao, Jiewen <jiewen....@intel.com>; Gao, Liming <liming....@intel.com>; > Zeng, Star <star.z...@intel.com> > Subject: [edk2] [PATCH 3/3] IntelFrameworkModulePkg/FwVolDxe: Ensure > FfsFileHeader 8 bytes aligned [CVE-2018-3630] > > From: Star Zeng <star.z...@intel.com> > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=864 > > To follow PI spec, ensure FfsFileHeader 8 bytes aligned. > > Current code only handles (FwVolHeader->ExtHeaderOffset != 0) path, > update code to also handle (FwVolHeader->ExtHeaderOffset == 0) path. > > Cc: Jiewen Yao <jiewen....@intel.com> > Cc: Liming Gao <liming....@intel.com> > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Star Zeng <star.z...@intel.com> > --- > .../Universal/FirmwareVolume/FwVolDxe/FwVol.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git > a/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVol.c > b/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVol.c > index 9a031bab14..9a892240b4 100644 > --- a/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVol.c > +++ > b/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVol.c > @@ -4,7 +4,7 @@ > Layers on top of Firmware Block protocol to produce a file abstraction > of FV based files. > > - Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR> > + Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR> > > This program and the accompanying materials > are licensed and made available under the terms and conditions > @@ -510,10 +510,10 @@ FvCheck ( > // > FwVolExtHeader = (EFI_FIRMWARE_VOLUME_EXT_HEADER *) (UINTN) > (FvDevice->CachedFv + FvDevice->FwVolHeader->ExtHeaderOffset); > Ptr = (UINT8 *) FwVolExtHeader + FwVolExtHeader->ExtHeaderSize; > - Ptr = (UINT8 *) ALIGN_POINTER (Ptr, 8); > } else { > Ptr = (UINT8 *) (UINTN) (FvDevice->CachedFv + FvDevice->FwVolHeader- > >HeaderLength); > } > + Ptr = (UINT8 *) ALIGN_POINTER (Ptr, 8); > TopFvAddress = (UINT8 *) (UINTN) (FvDevice->CachedFv + FvDevice- > >FwVolHeader->FvLength); > > // > -- > 2.17.1.windows.2 > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel