다음을 통해 공유


CTL 확인

인터로퍼가 기존 항목에 대해 가짜 CTL(인증서 신뢰 목록)을 대체하는 것을 더 어렵게 만들려면 CTL을 사용할 때마다 CTL에서 서명을 확인합니다. 신뢰할 수 있는 서명이 없는 CTL은 사용하지 마세요.

CTL 서명 확인하려면

  1. 원하는 CTL을 포함하는 인증서 저장소 엽니다.
  2. CTL의 CTL_CONTEXT에 대한 핸들을 가져옵니다. 이 작업은 CTL_CONTEXT핸들을 반환하는 함수(예: CertFindCTLInStore)를 호출하여 수행할 수 있습니다.
  3. CryptMsgGetAndVerifySigner을 호출하여, 2단계에서 검색된 CTL_CONTEXThCryptMsg 매개 변수로 전달합니다. 또한, 신뢰할 수 있는 원본의 인증서가 포함된 인증서 저장소의 핸들을 rghSignerStore 매개 변수로 전달하고, dwFlags 매개 변수로 CMSG_TRUSTED_SIGNER_FLAG 을 설정합니다. 함수가 TRUE 반환하면 서명이 확인되고 CTL 서명자의 PCCERT_CONTEXT 대한 포인터가 ppSigner 매개 변수에 반환됩니다.