다음을 통해 공유


보안 부팅을 사용하도록 설정된 사전 프로덕션 드라이버를 테스트하는 방법

소매 및 프로덕션 시스템에서 Windows 커널은 프로덕션 WHQL/WHCP 서명이 있는 드라이버만 신뢰하고 로드합니다. 사전 프로덕션 드라이버를 테스트하려면 드라이버 개발자가 비프로덕션 드라이버를 로드할 수 있도록 설정 TESTSIGNING 해야 합니다. TESTSIGNING 에서는 테스트 및 프로덕션 환경의 차이를 표시하기 위해 보안 부팅을 사용하지 않도록 설정해야 합니다.

Windows 커널은 WHQL/WHCP 사전 프로덕션 서명으로 서명된 사전 프로덕션 드라이버 로드를 지원합니다. WHQL/WHCP 서명은 MICROSOFT HDC(하드웨어 개발자 센터)를 통해 액세스할 수 있습니다.

필수 조건

사전 프로덕션 WHQL/WHCP 서명에 대한 지원 사용

드라이버가 사전 프로덕션에 서명되면 드라이버를 설치할 테스트 컴퓨터를 프로비전할 준비가 된 것입니다.

프로비저닝 도구 및 페이로드는 Windows 11 버전 22H2부터 제공됩니다.

EnableUefiSbTest 도구를 사용하는 것이 좋습니다. 또는 HLK 보안 부팅 수동 테스트 섹션(UefiSecureBootManualTests.zip\ManualTests\certs\test\db_MSFTtestSigningRoot.cer)에서 Microsoft Test Root 키를 수동으로 프로비전할 수 있습니다. 사전 프로덕션 WHQL/WHCP 드라이버 서명에 대한 트러스트를 사용하려면 Microsoft 테스트 키를 DB(Secure Boot Database) 및 SBCP(보안 부팅 구성 정책)에 포함해야 합니다.

참고 항목

보안 부팅 데이터베이스를 프로비전할 때는 프로덕션에서 내부 Microsoft 테스트 키를 사용하여 페이로드에 서명하지 않습니다.

프로비전 단계

  1. 시스템의 UEFI 메뉴에서 보안 부팅을 사용하지 않도록 설정하고 해당하는 경우 보안 부팅 키를 선택 취소합니다. 이렇게 하면 프로비전 도구가 보안 부팅 정책 파일을 신뢰하도록 테스트 키를 설정하고 보안 부팅을 다시 사용하도록 설정할 수 있습니다.

  2. WDK에서 시스템 아키텍처 및 함께 제공되는 프로비저닝 도구 EnableUefiSbTest.exe 따라 올바른 보안 부팅 정책 .p7b 파일을 다운로드합니다. 프로비저닝 도구의 위치는 필수 구성 요소를 참조 하세요.

  3. PowerShell 또는 터미널의 관리자 권한 인스턴스에서 다음 명령을 실행하고 PK, KEK, db, dbx 및 OemId 값이 비어 있는지 확인합니다("찾을 수 없음").

    EnableUefiSbTest.exe /dump
    

    보안 부팅을 사용하지 않도록 설정했고 키가 성공적으로 지워지면 다음 출력이 필요합니다.

    EnableUefiSbTest.exe /dump
    
    Name: PK
    Not Found
    
    Name: KEK
    Not Found
    
    Name: db
    Not Found
    
    Name:dbx
    Not Found
    
    Name: OemId
    Not Found
    
  4. 보안 부팅 테스트 키를 보안 부팅 db에 프로비전하고 PowerShell 또는 터미널의 관리자 권한 인스턴스에서 다음 명령을 실행하여 보안 부팅을 다시 사용하도록 설정합니다.

    EnableUefiSbTest.exe
    

    참고 항목

    EnableUefiSbTest.exe 성공적으로 실행된 후에는 아무것도 출력/반환하지 않습니다.

    필요에 따라 보안 부팅 DB의 thirdparty 기본 키와 함께 Microsoft UEFI CA 인증서를 프로비전하는 명령을 지정합니다. 이렇게 하면 옵션 ROM 및 비 Windows 부팅 로더와 같은 Microsoft UEFI CA 서명 EFI 실행 파일을 신뢰할 수 있습니다.

    EnableUefiSbTest.exe /thirdparty
    
  5. 데스크톱 기반 Windows를 실행하는 디바이스의 경우 시스템의 EFI 파티션을 탑재하고 PowerShell 또는 터미널의 관리자 권한 인스턴스에서 다음 명령을 실행하여 S:/EFI/Microsoft/Boot에 보안 부팅 정책(.p7b) 파일을 복사합니다.

    mountvol s: /s
    copy-item <path_to_p7b> S:/EFI/Microsoft/Boot/SecureBootPolicy.p7b
    

    참고 항목

    Windows 커널에는 보안 부팅 정책 파일 형식 SecureBootPolicy.p7b이 필요하므로 이름 및 파일 형식을 수정해서는 안 됩니다.

  6. 데스크톱 기반 Windows를 실행하지 않는 디바이스의 경우 해당 PreProductionPolicy.pol 디바이스를 복사합니다 \EFI\Microsoft\Boot\Policies. 그런 다음 , 에서 삭제 FullDebugPolicy.pol 합니다 \EFI\Microsoft\Boot\Policies.

  7. Windows 커널이 정책을 새로 고칠 수 있도록 시스템을 다시 부팅합니다. 이제 프로비저닝 도구에서 보안 부팅을 다시 사용하도록 설정하고 자동으로 프로비전합니다. 관리자로 다시 실행하고 EnableUefiSbTest.exe /dumpOemId 과 값만 dbx 비어 있는지 확인하여 유효성을 검사할 수 있습니다("찾을 수 없음").

  8. 시스템에서 사전 프로덕션 WHQL/WHCP 서명된 드라이버 콘텐츠의 유효성을 검사할 준비가 되었습니다. 보안 부팅 키 및 보안 부팅 정책 파일이 수정되지 않는 한 시스템을 다시 부팅해도 디바이스의 상태에는 영향을 주지 않습니다.

프로비전 해제 단계

시스템을 프로비전 해제하고 시스템에서 사전 프로덕션 서명 트러스트를 옵트아웃하려면 다음을 수행합니다.

  1. PowerShell 또는 터미널의 관리자 권한 인스턴스에서 다음 명령을 실행하여 탑재된 EFI 파티션에서 보안 부팅 정책 파일을 삭제합니다.

    mountvol s: /s
    rm  S:/EFI/Microsoft/Boot/SecureBootPolicy.p7b
    

    참고 항목

    HoloLens 2에서 유효성 검사를 수행하는 경우 .pol 정책 파일도 S:/EFI/Microsoft/Boot/Policies에서 제거해야 합니다.

  2. 시스템의 UEFI 메뉴로 부팅하고 보안 부팅 키를 공장 설정으로 다시 구성합니다.

  3. 시스템을 다시 부팅하고 실행EnableUefiSbTest.exe /dump합니다. 이 값은 < a0KEKdb/>에 대해 PK비어 있지 않은 값을 반환하고 dbx 키를 나타내는 값은 팩터리 상태로 반환됩니다.

    참고 항목

    정품 환경을 위한 시스템을 프로비전 해제하려면 시스템에 Windows를 새로 설치하는 것이 좋습니다.

FAQ

Q: EnableUefiSbTest.exe /dump 명령에 대한 PK결과만 표시됩니다. 무슨 문제가 있나요?

A: 도구가 관리자가 아닌 표준 사용자로 실행되는 경우에 발생합니다.

Q:EnableUefiSbTest.exe /dump 명령은 인식할 수 없는 오류를 반환합니다. 어떻게 해야 합니까?

A: 보안 부팅을 사용하지 않도록 설정하지 않았거나 보안 부팅 키가 지워지지 않은 경우 도구에서 오류가 발생할 수 있습니다. 보안 부팅이 사용하지 않도록 설정되어 있는지 확인합니다.