mirror of
				https://github.com/acidanthera/audk.git
				synced 2025-11-04 05:25:45 +01:00 
			
		
		
		
	SecurityPkg: DxeImageVerificationLib: Update PCR[7] measure logic
Update PCR[7] measure logic according to TCG PC Client PFP 00.37. Only entries in DB that is used for image authentication need to be measured. http://www.trustedcomputinggroup.org/wp-content/uploads/PC-ClientSpecific_Platform_Profile_for_TPM_2p0_Systems_v21.pdf Cc: Star Zeng <star.zeng@intel.com> Cc: Yao Jiewen <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Chao Zhang <chao.b.zhang@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Yao Jiewen <jiewen.yao@intel.com>
This commit is contained in:
		
							parent
							
								
									44175ee77f
								
							
						
					
					
						commit
						5b196b06b2
					
				@ -12,7 +12,7 @@
 | 
			
		||||
  DxeImageVerificationHandler(), HashPeImageByType(), HashPeImage() function will accept
 | 
			
		||||
  untrusted PE/COFF image and validate its data structure within this image buffer before use.
 | 
			
		||||
 | 
			
		||||
Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR>
 | 
			
		||||
Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.<BR>
 | 
			
		||||
(C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
 | 
			
		||||
This program and the accompanying materials
 | 
			
		||||
are licensed and made available under the terms and conditions of the BSD License
 | 
			
		||||
@ -1026,7 +1026,12 @@ IsSignatureFoundInDatabase (
 | 
			
		||||
          // Find the signature in database.
 | 
			
		||||
          //
 | 
			
		||||
          IsFound = TRUE;
 | 
			
		||||
          //
 | 
			
		||||
          // Entries in UEFI_IMAGE_SECURITY_DATABASE that are used to validate image should be measured
 | 
			
		||||
          //
 | 
			
		||||
          if (StrCmp(VariableName, EFI_IMAGE_SECURITY_DATABASE) == 0) {
 | 
			
		||||
            SecureBootHook (VariableName, &gEfiImageSecurityDatabaseGuid, CertList->SignatureSize, Cert);
 | 
			
		||||
          }
 | 
			
		||||
          break;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@ -1309,7 +1314,6 @@ IsForbiddenByDbx (
 | 
			
		||||
                        mImageDigestSize
 | 
			
		||||
                        );
 | 
			
		||||
        if (IsForbidden) {
 | 
			
		||||
          SecureBootHook (EFI_IMAGE_SECURITY_DATABASE1, &gEfiImageSecurityDatabaseGuid, CertList->SignatureSize, CertData);
 | 
			
		||||
          DEBUG ((DEBUG_INFO, "DxeImageVerificationLib: Image is signed but signature is forbidden by DBX.\n"));
 | 
			
		||||
          goto Done;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user