[OC 101] 오픈코어 시작전에 준비 사항 #2 - Security and FileVault
- Mactopia
- 937
- 0
Mactopia님의 기기정보
FileVault
To start, you'll need the following .efi drivers:
- OpenRuntime.efi
- OpenUsbKbDxe.efi for DuetPkg users(systems without UEFI support)
VirtualSMC.efi 는 사용 하지 마세요. Virtualsmc.kext 만 사용하세요.
config.plist 값
- Misc -> Boot
- PollAppleHotKeys가 YES로 설정 (필요하지 않은 동안 도움이 될 수 있음)
- PollAppleHotKeys가 YES로 설정 (필요하지 않은 동안 도움이 될 수 있음)
- Misc -> Security
- AuthRestart가 YES로 설정 (FileVault 2에 대한 인증 된 재시동을 활성화하므로 재부팅시 암호가 필요하지 않습니다. 보안 위험으로 간주 될 수 있습니다)
- NVRAM -> Add -> 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14
- 고해상도 소형 디스플레이를 위해 UIScale을 02로 설정
- UEFI -> Input
- KeySupport가 YES로 설정 (OpenCore의 내장 입력을 사용하는 경우에만 OpenUsbKbDxe 사용자는 피해야 함)
- UEFI -> Output
- ProvideConsoleGop to YES
- UEFI -> ProtocolOverrides
- FirmwareVolume set to YES
- Broadwell 및 이전 버전 (X99 포함)의 경우 HashServices를 YES로 설정. SHA-1 해싱이 손상된 시스템에 필요합니다.
- AppleSmcIo가 YES로 설정 (VirtualSMC.efi를 대체 함)
- UEFI -> Quirks
- RequestBootVarRouting set to YES
- Aptio IV 펌웨어 (Broadwell 이상)에서 Still waiting for root device 의 경우 ExitBootServicesDelay가 3000-5000으로 설정
Vault
valuing 이 무엇인가요?
Well vaulting is based around 2 things, vault.plist and vault.sig:
- vault.plist: a "snapshot" of your EFI
- vault.sig: validation of vault.plist
이것은 OpenCore의 부팅시 보안을 위한 것으로 볼 수 있으므로 허가없이 들어갈 수 없습니다.
Vaulting의 세부 사항은 vault.plist의 256 바이트 RSA-2048 서명이 OpenCore.efi에 전달된다는 것입니다.
이 키는 컴파일하기 전에 OpenCoreVault.c에 입력하거나 이미 OpenCore.efi를 컴파일 한 경우 sign.command와 함께 사용할 수 있습니다.
nvram.plist는 보관되지 않으므로 에뮬레이트 된 NVRAM을 가진 사용자는 여전히 특정 NVRAM 변수를 추가 / 제거 할 위험이 있습니다.
Settings in your config.plist:
- Misc -> Security -> Vault:
- 기본 : 파일 시스템 무결성 검증에 주로 사용되는 vault.plist 만 있으면됩니다.
- 보안됨 : vault.plist 변경에는 새로운 서명이 필요하므로 최상의 보안을 위해 사용되는 vault.plist 및 vault.sig가 필요합니다.
- Booter-> ProtectSecureBoot
- OpenCorePkg -> CreateVault 폴더를 엽니 다.
- sign.command 실행
Now we're ready to run sign.command:
Disabling Vault
- OpenCore.efi 새 파일 준비
- Misc -> Security -> Vault set to Optional
ScanPolicy
이 문제로 인해 신뢰할 수없는 소스에서 스캔 및 부팅을 방지 할 수 있습니다.
0으로 설정하면 존재하는 모든 소스를 부팅 할 수 있지만 특정 ScanPolicy 값을 계산하면 유연성과 보안 범위가 더 넓어집니다.
ScanPolicy 값을 계산하려면 모든 16 진수 값을 추가하면됩니다 (16 진수 계산기를 사용하면 내장 된 macOS 계산기 앱에서 ⌘ + 3으로 액세스 할 수 있음). 모두 추가되면이 16 진수 값을 ScanPolicy에 추가합니다 (먼저 10 진수 값으로 변환해야하며 Xcode는 붙여 넣을 때 자동으로 변환합니다)
0x00000001 (bit 0) — OC_SCAN_FILE_SYSTEM_LOCK
- restricts scanning to only known file systems defined as a part of this policy. File system drivers may not be aware of this policy, and to avoid mounting of undesired file systems it is best not to load its driver. This bit does not affect dmg mounting, which may have any file system. Known file systems are prefixed with OCSCAN_ALLOW_FS.
0x00000002 (bit 1) — OC_SCAN_DEVICE_LOCK
- restricts scanning to only known device types defined as a part of this policy. This is not always possible to detect protocol tunneling, so be aware that on some systems it may be possible for e.g. USB HDDs to be recognized as SATA. Cases like this must be reported. Known device types are prefixed with OCSCAN_ALLOW_DEVICE.
0x00000100 (bit 8) — OC_SCAN_ALLOW_FS_APFS
- allows scanning of APFS file system.
0x00000200 (bit 9) — OC_SCAN_ALLOW_FS_HFS
- allows scanning of HFS file system.
0x00000400 (bit 10) — OC_SCAN_ALLOW_FS_ESP
- allows scanning of EFI System Partition file system.
0x00010000 (bit 16) — OC_SCAN_ALLOW_DEVICE_SATA
- allow scanning SATA devices.
0x00020000 (bit 17) — OC_SCAN_ALLOW_DEVICE_SASEX
- allow scanning SAS and Mac NVMe devices.
0x00040000 (bit 18) — OC_SCAN_ALLOW_DEVICE_SCSI
- allow scanning SCSI devices.
0x00080000 (bit 19) — OC_SCAN_ALLOW_DEVICE_NVME
- allow scanning NVMe devices.
0x00100000 (bit 20) — OC_SCAN_ALLOW_DEVICE_ATAPI
- allow scanning CD/DVD devices.
0x00200000 (bit 21) — OC_SCAN_ALLOW_DEVICE_USB
- allow scanning USB devices.
0x00400000 (bit 22) - OC_SCAN_ALLOW_DEVICE_FIREWIRE
- allow scanning FireWire devices.
0x00800000 (bit 23) — OC_SCAN_ALLOW_DEVICE_SDCARD
- allow scanning card reader devices.
기본적으로 ScanPolicy에는 다음과 같은 조합으로 0xF0103 (983,299) 값이 지정됩니다.
- OC_SCAN_FILE_SYSTEM_LOCK
- OC_SCAN_DEVICE_LOCK
- OC_SCAN_ALLOW_FS_APFS
- OC_SCAN_ALLOW_DEVICE_SATA
- OC_SCAN_ALLOW_DEVICE_SASEX
- OC_SCAN_ALLOW_DEVICE_SCSI
- OC_SCAN_ALLOW_DEVICE_NVME
OC_SCAN_ALLOW_DEVICE_USB를 추가 하고 싶은 경우 예시
0x00200000 + 0xF0103 = 0x2F0103
그리고 이것을 십진수로 변환하면 3,080,451이됩니다.
https://dortania.github.io/OpenCore-Desktop-Guide/post-install/security.html