다음을 통해 공유


Tbsi_Revoke_Attestation 함수(tbs.h)

ELAM 드라이버가 정책 위반(예: 루트킷)을 감지하면 PCR을 무효화합니다.

구문

TBS_RESULT Tbsi_Revoke_Attestation();

반환 값

반환 코드/값 설명
TBS_SUCCESS
0(0x0)
함수가 성공했습니다.
TBS_E_INTERNAL_ERROR
2150121473(0x80284001)
내부 소프트웨어 오류가 발생했습니다.
참고 TBS_E_INTERNAL_ERROR 반환되면 시스템 이벤트 로그에 오류 코드가 0x80070032 TBS 이벤트 원본의 이벤트 ID 16385가 포함될 수 있습니다. 이는 하드웨어 플랫폼이 운영 체제에 TCG 이벤트 로그를 제공하지 않음을 나타낼 수 있습니다. 경우에 따라 플랫폼 제조업체에서 BIOS 업그레이드를 설치하여 이 문제를 해결할 수 있습니다.
 

설명

이 함수는 커널 모드에서 호출할 수 있습니다.

관리 권한으로 이 함수를 실행해야 합니다. 이 함수는 지정되지 않은 값으로 PCR[12]을 확장하고 TPM에서 이벤트 카운터를 증분합니다. 두 작업 모두 필요하므로 앞으로 여기에서 만든 모든 따옴표에서 트러스트가 끊어집니다. PCR이 최대 절전 모드에서 다시 설정되고 PCR[12]로 확장되면 사라지기 때문에 이벤트 카운터의 간격은 손상된 로그 체인을 나타냅니다.

따라서 WBCL 파일은 TPM 전원이 켜지고 원격 시스템이 시스템의 보안 상태에 대한 신뢰를 형성할 수 없는 나머지 시간 동안 TPM의 현재 상태를 반영하지 않습니다. 맬웨어 방지 시스템은 추가 수정 또는 경고를 수행할 수 있지만 증명이 지원되는 경우 무효화 단계가 중요합니다.

컴퓨터가 최대 절전 모드로 전환되고 이후에 다시 시작되면 이전 PCR 범위가 손실되고 손상된 신뢰가 더 이상 PCR 측정값에 반영되지 않습니다. 이 문제를 해결하기 위해 Tbsi_Revoke_Attestation 함수는 TPM에 있는 단조 이벤트 카운터도 증가합니다. 추가 TPM 증명 유효성 검사에서는 보관된 WBCL 로그의 부팅 카운터 값에 차이가 있음을 알 수 있습니다. 이러한 간격이 발견되면 증명 유효성 검사 코드는 다른 필수 이벤트가 로그에 없는 경우와 마찬가지로 유효성 검사에 실패해야 합니다. TPM의 카운터는 롤백할 수 없으며, 사실 이후에는 누락된 WBCL을 생성할 수 없습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2012 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 tbs.h
라이브러리 Tbs.lib
DLL Tbs.dll