mokutil을 통해 키에 서명

mokutil을 통해 키에 서명

처음으로 Linux Mint 19.1 Cinnamon을 성공적으로 설치한 후 권장 설치 후 단계를 따랐습니다. 여기에서는 (드라이버를 확인하고 설치한 후) 시스템도 업그레이드했습니다. 그러나 업그레이드 프로세스 중에 다음 메시지가 나타납니다.

시스템에 UEFI 보안 부팅이 활성화되어 있습니다. UEFI 보안 부팅은 타사 드라이버 사용과 호환되지 않습니다. 시스템은 UEFI 보안 부팅을 비활성화하는 데 도움이 됩니다. 이 변경 사항이 공격자가 아닌 승인된 사용자에 의해 수행되었는지 확인하려면 비밀번호를 선택한 다음 재부팅 후 동일한 비밀번호를 사용하여 변경 사항을 확인해야 합니다. 재부팅 시 비밀번호를 확인하지 않고 계속하기로 선택하면 Ubuntu는 시스템에서 계속 부팅할 수 있지만 이러한 타사 드라이버는 하드웨어에서 사용할 수 없습니다.

그런 다음 MOK PW를 설정하고 시스템을 재부팅하고 키에 서명했습니다. 그러나 이 메시지를 촉발한 원인이 무엇인지, 어떤 키로 거기에 서명했는지는 실제로 알 수 없습니다. 어제 드라이버를 설치한 후(시스템 업데이트 전)로 시스템을 롤백했기 때문에 이전에 설치한 타사 Nvidia 드라이버와 관련이 있다고 생각합니다. 그런 다음 (드라이버가 대상으로 삼은) nvidia 그래픽 카드를 비활성화했고 시스템을 다시 업데이트할 때 키에 서명하라는 메시지가 팝업되지 않았습니다.

현재 서명된 키 중 하나(아마도 그럴 것 같습니다)에는 다음과 같은 속성이 있는데, 정말 끔찍해 보입니다.

X509v3 Basic Constraints critical

CA: False

전체적으로 나의 주요 질문은 다음과 같습니다. 이것이 모두 무엇을 의미합니까? 해당 키로 실제로 무엇에 서명했으며 이것이 내 시스템에 부정적인 영향을 미치나요? 원래 서명한 키가 무엇인지, 해당 키가 "안전"한지 어떻게 알 수 있나요?

답변1

X.509v3 인증서 용어에서 인증서 확장은 다음과 같이 지정할 수 있습니다.비판적인인증서 작성자(및/또는 인증 기관)가 요구하는 경우이 인증서를 확인한 사람~ 해야 하다이 확장 프로그램에 대해 알아보기그렇지 않으면 인증서가 유효하지 않은 것으로 간주됩니다.

"기본 제약 조건" 확장은 가장 기본적인 인증서 확장입니다. 인증서가 일반 인증서("CA: False")인지 인증 기관 인증서("CA: True")인지 여부를 결정하고 뒤에 오는 선택적 경로 길이 값을 사용합니다. 이 CA 인증서는 중간 CA 인증서의 최대 허용 깊이입니다.

모든 최신 시스템에서는 "기본 제약 조건" 인증서 확장이 항상 중요한 확장이 되어야 합니다.

따라서 다음 속성은 다음과 같습니다.

X509v3 Basic Constraints: critical
CA: False

인간의 말로는 "이것은아니요CA 인증서. CA 인증서가 필요하다면 누군가가 뭔가 잘못한 것이 틀림없습니다. 이 제한 사항을 이해하지 못하는 경우 어떤 목적으로도 이 인증서에 의존해서는 안 됩니다. ” 즉, 이는 CA가 아닌 인증서에 대한 완전히 정상적이고 예상되는 확장입니다.

중요하지 않음인증서를 확인하려는 프로그램이 X.509v3 확장의 의미를 이해할 수 없으면 이를 무시해도 됩니다.

보안 부팅은 부팅 시 인증 기관을 확인할 수 없으므로 이러한 속성은 보안 부팅에 의미가 없습니다. 보안 부팅이 적용되면 펌웨어는 기존 마스터 키(PK) 또는 키 교환 키(KEK) 변경 요청이 현재 PK 인증서에 해당하는 개인 키로 서명되었는지, 그리고 기존 PK 인증서에 대한 변경 사항이 있는지 확인해야 합니다. 마스터 키(PK) 또는 키 교환 키(KEK) 키(PK) 또는 키 교환 키(KEK)에 대한 요청이 서명되었는지 여부입니다. 현재 PK 인증서 또는 현재 KEK 인증서에 해당하는 개인 키로 서명할 기존 화이트리스트(db), 블랙리스트(dbx) 또는 타임스탬프(dbt) 키를 업데이트합니다. 시작 시 로드된 실행 코드는 블랙리스트(dbx) 항목과 일치해서는 안 되며 화이트리스트(db) 인증서 중 하나와 일치하는 키로 서명되어야 합니다. 또는 실행 파일의 암호화 해시가 화이트리스트에 직접 포함되어야 합니다. 이러한 검사는 X.509 PKI 계층 구조와 완전히 독립적입니다.

보안 부팅 키 인증서는 여전히 회사 PKI 계층 구조의 일부일 수 있으므로 필요한 경우 인증서를 외부에서 확인할 수 있으며 이 경우 X.509v3 인증서 확장이 적용될 수 있습니다. 그러나 부팅 시 보안 부팅 검사의 경우 X.509v3 인증서 확장은 일반적으로 완전히 무시되는 것 같습니다.

shim.efi부트로더는 일부 시스템 펌웨어에서 시스템 소유자가 보안 부팅 키를 유용한 방식으로 수정하는 것을 허용하지 않는다는 사실 때문에 개발되었습니다. 이는 Microsoft가 서명한 보안 부팅에 대한 확장을 제공하며 shim.efi펌웨어 제어와 독립적임을 합리적으로 강력하게 보장하지만 유사한 안전 조건에서 다른 보안 시작 키 변수와 함께 사용되는 두 번째 화이트리스트(MOK, 시스템 소유자 키)를 제공합니다. .

MOK 등록 프로세스에는 NVRAM 변수와shim.efi 연산 결과는 다음과 같습니다.아니요또는 이와 유사한 기능을 사용하여 롤백할 수 있는 일반 파일에 저장됩니다 timeshift. 실제로 적절한 NVRAM 변수는 UEFI 부팅 서비스에 의한 액세스만 지정하는 속성으로 생성되므로 shim.efi생성 후에는 다른 UEFI 부팅 시간 도구만 수정할 수 있습니다... 펌웨어가 UEFI에 따라 작동하고 다음과 같다고 가정합니다. 보안 시작 표준.

관련 정보