mirror of https://github.com/acidanthera/audk.git
1. Change default PCD in SecurityPkg to 4 (DENY_EXECUTE) in DEC file.
2. ASSERT if PCD value is set to 5 (QUERY_USER_ON_SECURITY_VIOLATION). 3. Update override PCD setting from 5 to 4 in platform DSC file. Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14607 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
98fed08f9f
commit
db44ea6c4e
|
@ -226,9 +226,9 @@
|
|||
|
||||
!if $(SECURE_BOOT_ENABLE) == TRUE
|
||||
# override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
|
||||
!endif
|
||||
|
||||
################################################################################
|
||||
|
|
|
@ -303,9 +303,9 @@
|
|||
|
||||
!if $(SECURE_BOOT_ENABLE) == TRUE
|
||||
# override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
|
||||
!endif
|
||||
|
||||
# IRQs 5, 9, 10, 11 are level-triggered
|
||||
|
|
|
@ -309,9 +309,9 @@
|
|||
[PcdsFixedAtBuild.X64]
|
||||
!if $(SECURE_BOOT_ENABLE) == TRUE
|
||||
# override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
|
||||
!endif
|
||||
|
||||
# IRQs 5, 9, 10, 11 are level-triggered
|
||||
|
|
|
@ -308,9 +308,9 @@
|
|||
|
||||
!if $(SECURE_BOOT_ENABLE) == TRUE
|
||||
# override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x05
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
|
||||
!endif
|
||||
|
||||
# IRQs 5, 9, 10, 11 are level-triggered
|
||||
|
|
|
@ -1086,6 +1086,14 @@ DxeImageVerificationHandler (
|
|||
return EFI_ACCESS_DENIED;
|
||||
}
|
||||
|
||||
//
|
||||
// The policy QUERY_USER_ON_SECURITY_VIOLATION violates the UEFI spec and has been removed.
|
||||
//
|
||||
ASSERT (Policy != QUERY_USER_ON_SECURITY_VIOLATION);
|
||||
if (Policy == QUERY_USER_ON_SECURITY_VIOLATION) {
|
||||
CpuDeadLoop ();
|
||||
}
|
||||
|
||||
GetEfiGlobalVariable2 (EFI_SECURE_BOOT_MODE_NAME, (VOID**)&SecureBoot, NULL);
|
||||
//
|
||||
// Skip verification if SecureBoot variable doesn't exist.
|
||||
|
|
|
@ -87,7 +87,8 @@
|
|||
# DEFER_EXECUTE_ON_SECURITY_VIOLATION 0x00000003
|
||||
# DENY_EXECUTE_ON_SECURITY_VIOLATION 0x00000004
|
||||
# QUERY_USER_ON_SECURITY_VIOLATION 0x00000005
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x00|UINT32|0x00000001
|
||||
# NOTE: Do NOT use QUERY_USER_ON_SECURITY_VIOLATION since it violates the UEFI specification and has been removed.
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04|UINT32|0x00000001
|
||||
|
||||
## Pcd for removable media.
|
||||
# Removable media include CD-ROM, Floppy, USB and network.
|
||||
|
@ -98,7 +99,8 @@
|
|||
# DEFER_EXECUTE_ON_SECURITY_VIOLATION 0x00000003
|
||||
# DENY_EXECUTE_ON_SECURITY_VIOLATION 0x00000004
|
||||
# QUERY_USER_ON_SECURITY_VIOLATION 0x00000005
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x05|UINT32|0x00000002
|
||||
# NOTE: Do NOT use QUERY_USER_ON_SECURITY_VIOLATION since it violates the UEFI specification and has been removed.
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04|UINT32|0x00000002
|
||||
|
||||
## Pcd for fixed media.
|
||||
# Fixed media include hard disk.
|
||||
|
@ -109,7 +111,8 @@
|
|||
# DEFER_EXECUTE_ON_SECURITY_VIOLATION 0x00000003
|
||||
# DENY_EXECUTE_ON_SECURITY_VIOLATION 0x00000004
|
||||
# QUERY_USER_ON_SECURITY_VIOLATION 0x00000005
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x05|UINT32|0x00000003
|
||||
# NOTE: Do NOT use QUERY_USER_ON_SECURITY_VIOLATION since it violates the UEFI specification and has been removed.
|
||||
gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04|UINT32|0x00000003
|
||||
|
||||
## Defer Image Load policy settings.
|
||||
# The policy is bitwise.
|
||||
|
|
Loading…
Reference in New Issue