Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

날짜 변경

설명

2023/10/10

"Windows 업데이트 타임라인"에서 강력한 매핑 기본 변경 내용에 대한 정보가 추가되었습니다.

6/30/2023

전체 적용 모드 날짜가 2023년 11월 14일에서 2025년 2월 11일로 변경되었습니다(이 날짜는 이전에 2023년 5월 19일에서 2023년 11월 14일로 나열됨).

1/26/2023

2023년 2월 14일부터 2023년 4월 11일로 비활성화 모드 제거 변경

요약

CVE-2022-34691,CVE-2022-26931 CVE-2022-26923은 KDC(Kerberos 키 배포 센터)가 인증서 기반 인증 요청을 서비스할 때 발생할 수 있는 권한 상승 취약성을 해결합니다. 2022년 5월 10일 보안 업데이트 이전에는 인증서 기반 인증이 컴퓨터 이름 끝에 달러 기호($)를 고려하지 않습니다. 이렇게 하면 관련 인증서를 다양한 방법으로 에뮬레이트(스푸핑)할 수 있습니다. 또한 UPN(사용자 계정 이름)과 sAMAccountName 간의 충돌로 이 보안 업데이트에서도 해결하는 다른 에뮬레이션(스푸핑) 취약성이 도입되었습니다. 

조치 취하기

환경을 보호하려면 인증서 기반 인증에 대해 다음 단계를 완료합니다.

  1. 2022년 5월 10일 업데이트를 사용하여 인증서 기반 인증을 서비스하는 Active Directory 인증서 서비스 및 Windows 도메인 컨트롤러를 실행하는 모든 서버를 업데이트합니다( 호환 모드 참조). 2022년 5월 10일 업데이트는 전체 적용 모드와 호환되지 않는 인증서를 식별하는 감사 이벤트를 제공합니다.

  2. 업데이트를 설치한 후 한 달 동안 도메인 컨트롤러에 감사 이벤트 로그가 만들어지지 않으면 모든 도메인 컨트롤러에서 전체 적용 모드 를 사용하도록 설정합니다. 2025년 2월 11일까지 모든 디바이스가 전체 적용 모드로 업데이트됩니다. 이 모드에서는 인증서가 강력한(보안) 매핑 조건( 인증서 매핑 참조)에 실패하면 인증이 거부됩니다.

감사 이벤트

2022년 5월 10일 Windows 업데이트는 다음 이벤트 로그를 추가합니다.

강력한 인증서 매핑을 찾을 수 없으며 인증서에 KDC에서 유효성을 검사할 수 있는 새 SID(보안 식별자) 확장이 없습니다.

이벤트 로그

시스템

이벤트 형식

KDC가 호환성 모드인 경우 경고

KDC가 적용 모드인 경우 오류 발생

이벤트 소스

Kdcsvc

이벤트 ID

39

41(Windows Server 2008 R2 SP1 및 Windows Server 2008 SP2의 경우)

이벤트 텍스트

KDC(키 배포 센터)에서 유효하지만 강력한 방식으로 사용자에게 매핑할 수 없는 사용자 인증서(예: 명시적 매핑, 키 신뢰 매핑 또는 SID를 통해)가 발견되었습니다. 이러한 인증서는 명시적 매핑을 통해 사용자에게 직접 대체되거나 매핑되어야 합니다. 자세한 내용은 https://go.microsoft.com/fwlink/?linkid=2189925 참조하세요.

사용자: 주체 이름> <

인증서 주체: 인증서> <주체 이름

인증서 발급자: 발급자 FQDN(정규화된 도메인 이름)<>

인증서 일련 번호: 인증서> 일련 번호 <

인증서 지문: 인증서> <지문

사용자가 Active Directory에 존재하기 전에 인증서가 사용자에게 발급되었으며 강력한 매핑을 찾을 수 없습니다. 이 이벤트는 KDC가 호환 모드인 경우에만 기록됩니다.

이벤트 로그

시스템

이벤트 형식

Error

이벤트 소스

Kdcsvc

이벤트 ID

40

48(Windows Server 2008 R2 SP1 및 Windows Server 2008 SP2의 경우

이벤트 텍스트

KDC(키 배포 센터)에서 유효하지만 강력한 방식으로 사용자에게 매핑할 수 없는 사용자 인증서(예: 명시적 매핑, 키 신뢰 매핑 또는 SID를 통해)가 발견되었습니다. 또한 인증서는 매핑된 사용자보다 앞서서 거부되었습니다. 자세한 내용은 https://go.microsoft.com/fwlink/?linkid=2189925 참조하세요.

사용자: 주체 이름> <

인증서 주체: 인증서> <주체 이름

인증서 발급자: 발급자 FQDN> <

인증서 일련 번호: 인증서> 일련 번호 <

인증서 지문: 인증서> <지문

인증서 발급 시간: 인증서> FILETIME <

계정 생성 시간: AD> 주체 개체의 FILETIME <

사용자 인증서의 새 확장에 포함된 SID가 사용자 SID와 일치하지 않으므로 인증서가 다른 사용자에게 발급되었음을 의미합니다.

이벤트 로그

시스템

이벤트 형식

Error

이벤트 소스

Kdcsvc

이벤트 ID

41

49(Windows Server 2008 R2 SP1 및 Windows Server 2008 SP2의 경우)

이벤트 텍스트

KDC(키 배포 센터)에 유효하지만 매핑된 사용자와 다른 SID가 포함된 사용자 인증서가 발견되었습니다. 결과적으로 인증서와 관련된 요청이 실패했습니다. 자세한 내용은 https://go.microsoft.cm/fwlink/?linkid=2189925 참조하세요.

사용자: 주체 이름> <

사용자 SID: 인증 주체> <SID

인증서 주체: 인증서> <주체 이름

인증서 발급자: 발급자 FQDN> <

인증서 일련 번호: 인증서> 일련 번호 <

인증서 지문: 인증서> <지문

인증서 SID: 새 인증서 확장> 있는 <SID

인증서 매핑

도메인 관리자는 사용자 개체의 altSecurityIdentities 특성을 사용하여 Active Directory의 사용자에게 인증서를 수동으로 매핑할 수 있습니다. 이 특성에는 6개의 지원되는 값이 있으며, 세 가지 매핑은 약한(안전하지 않음)으로 간주되고 나머지 3개는 강력한 것으로 간주됩니다. 일반적으로 매핑 형식은 재사용할 수 없는 식별자를 기반으로 하는 경우 강력한 것으로 간주됩니다. 따라서 사용자 이름 및 전자 메일 주소를 기반으로 하는 모든 매핑 형식은 약한 것으로 간주됩니다.

매핑

예시

유형

설명

X509IssuerSubject

"X509:<IssuerName<S>SubjectName을>있습니다."

약한

X509SubjectOnly

"X509:<S>SubjectName"

약한

X509RFC822

"X509:<RFC822>user@contoso.com"

약한

이메일 주소

X509IssuerSerialNumber

"X509:<IssuerName<SR>1234567890>있습니다."

강력

권장

X509SKI

"X509:<SKI>123456789abcdef"

강력

X509SHA1PublicKey

"X509:<SHA1-PUKEY>123456789abcdef"

강력

고객이 새 SID 확장으로 인증서를 다시 발급할 수 없는 경우 위에서 설명한 강력한 매핑 중 하나를 사용하여 수동 매핑을 만드는 것이 좋습니다. Active Directory에서 사용자 altSecurityIdentities 특성에 적절한 매핑 문자열을 추가하여 이 작업을 수행할 수 있습니다.

참고 발급자, 제목 및 일련 번호와 같은 특정 필드는 "정방향" 형식으로 보고됩니다. altSecurityIdentities 특성에 매핑 문자열을 추가할 때 이 형식을 반전해야 합니다. 예를 들어 사용자에게 X509IssuerSerialNumber 매핑을 추가하려면 사용자에게 매핑하려는 인증서의 "발급자" 및 "일련 번호" 필드를 검색합니다. 아래 샘플 출력을 참조하세요.

  • 발급자: CN=CONTOSO-DC-CA, DC=contoso, DC=com

  • SerialNumber: 2B0000000011AC000000012

그런 다음 Active Directory에서 사용자의 altSecurityIdentities 특성을 다음 문자열로 업데이트합니다.

  • "X509:<DC=com, DC=contoso,CN=CONTOSO-DC-CA<SR>120000000000AC11000000002B를>"

Powershell을 사용하여 이 특성을 업데이트하려면 아래 명령을 사용할 수 있습니다. 기본적으로 도메인 관리자만 이 특성을 업데이트할 수 있는 권한이 있습니다.

  • set-aduser 'DomainUser' -replace @{altSecurityIdentities= "X509:<I>DC=com,DC=contoso,CN=CONTOSO-DC-CA<SR>1200000000002B"}

SerialNumber를 되돌릴 때는 바이트 순서를 유지해야 합니다. 즉, SerialNumber "A1B2C3"을 반대로 실행하면 "3C2B1A"가 아닌 "C3B2A1" 문자열이 발생합니다. 자세한 내용은 HowTo: altSecurityIdentities 특성에서 사용할 수 있는 모든 메서드를 통해 사용자를 인증서에 매핑을 참조하세요.

Windows 업데이트 타임라인

중요 사용 단계는 사용 안 함 모드 레지스트리 키 설정을 무시하는 Windows용 2023년 4월 11일 업데이트로 시작됩니다. 

2022년 5월 10일 Windows 업데이트를 설치하면 디바이스가 호환 모드가 됩니다. 인증서를 사용자에게 강력하게 매핑할 수 있는 경우 인증이 예상대로 발생합니다. 인증서를 사용자에게만 약하게 매핑할 수 있는 경우 인증이 예상대로 발생합니다. 그러나 인증서가 사용자보다 오래된 경우가 아니면 경고 메시지가 기록됩니다. 인증서가 사용자보다 오래된 경우 인증서 백업 레지스트리 키가 없거나 범위가 백데이트 보정 범위를 벗어나면 인증이 실패하고 오류 메시지가 기록됩니다.  인증서 백업 레지스트리 키가 구성된 경우 날짜가 백데이트 보정에 속하는 경우 이벤트 로그에 경고 메시지를 기록합니다.

2022년 5월 10일 Windows 업데이트를 설치한 후 한 달 이상 후에 나타날 수 있는 경고 메시지를 watch. 경고 메시지가 없는 경우 인증서 기반 인증을 사용하여 모든 도메인 컨트롤러에서 전체 적용 모드를 사용하도록 설정하는 것이 좋습니다. KDC 레지스트리 키를 사용하여 전체 적용 모드를 사용하도록 설정할 수 있습니다.

이 모드로 이전에 업데이트되지 않는 한 2025년 2월 11일 이상까지 모든 디바이스를 전체 적용 모드로 업데이트합니다. 인증서를 강력하게 매핑할 수 없는 경우 인증이 거부됩니다.

인증서 기반 인증이 환경에서 이동할 수 없는 약한 매핑을 사용하는 경우 레지스트리 키 설정을 사용하여 도메인 컨트롤러를 사용 안 함 모드로 배치할 수 있습니다. Microsoft 는 이를 권장하지 않으며 2023년 4월 11일에 사용 안 함 모드를 제거합니다.

2024년 2월 13일 이상 Windows 업데이트를 Server 2019 이상에 설치하고 RSAT 선택적 기능이 설치된 클라이언트를 지원하면 Active Directory 사용자 & 컴퓨터의 인증서 매핑은 기본적으로 X509IssuerSerSubject를 사용하는 약한 매핑 대신 X509IssuerSerialNumber를 사용하여 강력한 매핑을 선택하는 것입니다. 설정을 원하는 대로 변경할 수 있습니다.

문제 해결

  • 관련 컴퓨터의 Kerberos 운영 로그를 사용하여 로그인에 실패한 도메인 컨트롤러를 확인합니다. 이벤트 뷰어 > 애플리케이션 및 서비스 로그\Microsoft \Windows\Security-Kerberos\Operational으로 이동합니다.

  • 계정이 인증을 시도하는 도메인 컨트롤러의 시스템 이벤트 로그에서 관련 이벤트를 찾습니다.

  • 인증서가 계정보다 오래된 경우 인증서를 다시 발급하거나 계정에 보안 altSecurityIdentities 매핑을 추가 합니다(인증서 매핑 참조).

  • 인증서에 SID 확장이 포함된 경우 SID가 계정과 일치하는지 확인합니다.

  • 인증서를 사용하여 여러 계정을 인증하는 경우 각 계정에는 별도의 altSecurityIdentities 매핑이 필요합니다.

  • 인증서에 계정에 대한 보안 매핑이 없는 경우 하나 추가하거나 도메인을 추가할 수 있을 때까지 호환 모드로 둡니다.

TLS 인증서 매핑의 예는 IIS 인트라넷 웹 애플리케이션을 사용하는 것입니다.

  • CVE-2022-26391CVE-2022-26923 보호를 설치한 후 이러한 시나리오에서는 기본적으로 인증서 매핑 및 인증을 위해 S4U(Kerberos Certificate Service for User) 프로토콜을 사용합니다.

  • Kerberos 인증서 S4U 프로토콜에서 인증 요청은 클라이언트에서 도메인 컨트롤러로가 아니라 애플리케이션 서버에서 도메인 컨트롤러로 흐릅니다. 따라서 관련 이벤트는 애플리케이션 서버에 있습니다.

레지스트리 키 정보

2022년 5월 10일부터 2025년 2월 11일 이후에 릴리스된 Windows 업데이트에서 CVE-2022-26931 및 CVE-2022-26923 보호를 설치한 후 다음 레지스트리 키를 사용할 수 있습니다.

이 레지스트리 키는 KDC의 적용 모드를 사용 안 함 모드, 호환성 모드 또는 전체 적용 모드로 변경합니다.

중요

이 레지스트리 키를 사용하는 것은 필요한 환경에 대한 임시 해결 방법이며 주의해서 수행해야 합니다. 이 레지스트리 키를 사용하는 것은 사용자 환경에 대해 다음을 의미합니다.

  • 이 레지스트리 키는 2022년 5월 10일에 릴리스된 업데이트부터 호환성 모드에서만 작동합니다.

  • 이 레지스트리 키는 전체 적용 모드를 사용하도록 설정하는 2025년 2월 11일에 릴리스된 Windows용 업데이트를 설치한 후 지원되지 않습니다.

레지스트리 하위 키

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Kdc

StrongCertificateBindingEnforcement

데이터 형식

REG_DWORD

데이터

1 – 강력한 인증서 매핑이 있는지 확인합니다. 그렇다면 인증이 허용됩니다. 그렇지 않으면 인증서에 새 SID 확장이 있는 경우 KDC가 검사 유효성을 검사합니다. 이 확장이 없으면 사용자 계정이 인증서보다 앞선 경우 인증이 허용됩니다.

2 – 강력한 인증서 매핑이 있는지 확인합니다. 그렇다면 인증이 허용됩니다. 그렇지 않으면 인증서에 새 SID 확장이 있는 경우 KDC가 검사 유효성을 검사합니다. 이 확장이 없으면 인증이 거부됩니다.

0 – 강력한 인증서 매핑 검사 사용하지 않도록 설정합니다. 이렇게 하면 모든 보안 향상 기능이 비활성화되므로 권장되지 않습니다.

이 값을 0으로 설정하면 컴퓨터 인증서 기반 인증이 성공하려면 아래 Schannel 레지스트리 키 섹션에 설명된 대로 CertificateMappingMethods 를 0x1F 설정해야 합니다.

다시 시작해야 합니까?

아니요

서버 애플리케이션에 클라이언트 인증이 필요한 경우 Schannel은 TLS 클라이언트가 제공하는 인증서를 사용자 계정에 자동으로 매핑하려고 시도합니다. 인증서 정보를 Windows 사용자 계정과 연결하는 매핑을 만들어 클라이언트 인증서로 로그인하는 사용자를 인증할 수 있습니다. 인증서 매핑을 만들고 사용하도록 설정한 후 클라이언트가 클라이언트 인증서를 표시할 때마다 서버 애플리케이션은 해당 사용자를 적절한 Windows 사용자 계정과 자동으로 연결합니다.

Schannel은 성공할 때까지 사용하도록 설정한 각 인증서 매핑 방법을 매핑하려고 합니다. Schannel은 S4U2Self(Service-for-User-To-Self) 매핑을 먼저 매핑하려고 합니다. 이제 주체/발급자, 발급자 및 UPN 인증서 매핑이 약한 것으로 간주되며 기본적으로 사용하지 않도록 설정되었습니다. 선택한 옵션의 비트 마스크 합계는 사용할 수 있는 인증서 매핑 메서드 목록을 결정합니다.

SChannel 레지스트리 키 기본값은 0x1F 이제 0x18. Schannel 기반 서버 애플리케이션에서 인증 오류가 발생하는 경우 테스트를 수행하는 것이 좋습니다. 도메인 컨트롤러에서 CertificateMappingMethods 레지스트리 키 값을 추가하거나 수정하고 0x1F 설정하여 문제를 해결하는지 확인합니다. 자세한 내용은 도메인 컨트롤러의 시스템 이벤트 로그에서 이 문서에 나열된 오류를 확인합니다. SChannel 레지스트리 키 값을 이전 기본값(0x1F)으로 변경하면 약한 인증서 매핑 방법을 사용하는 되돌리기.

레지스트리 하위 키

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\Schannel

CertificateMappingMethods

데이터 형식

DWORD

데이터

0x0001 - 주체/발급자 인증서 매핑(약한 - 기본적으로 사용 안 함)

0x0002 - 발급자 인증서 매핑(약한 - 기본적으로 사용 안 함)

0x0004 - UPN 인증서 매핑(약한 - 기본적으로 사용 안 함)

0x0008 - S4U2Self 인증서 매핑(강력)

0x0010 - S4U2 자체 명시적 인증서 매핑(강력)

다시 시작해야 합니까?

아니요

추가 리소스 및 지원은 "추가 리소스" 섹션을 참조하세요.

CVE-2022-26931CVE-2022-26923을 처리하는 업데이트를 설치한 후 사용자 인증서가 사용자 생성 시간보다 오래된 경우 인증이 실패할 수 있습니다. 이 레지스트리 키는 사용자 환경에서 약한 인증서 매핑을 사용하고 인증서 시간이 설정된 범위 내에서 사용자 생성 시간 이전일 때 성공적인 인증을 허용합니다. 인증서 시간 및 사용자 만들기 시간은 강력한 인증서 매핑으로 확인되지 않으므로 이 레지스트리 키는 강력한 인증서 매핑을 사용하는 사용자 또는 컴퓨터에 영향을 주지 않습니다. StrongCertificateBindingEnforcement가 2로 설정된 경우 이 레지스트리 키는 아무런 영향을 주지 않습니다.

이 레지스트리 키를 사용하는 것은 필요한 환경에 대한 임시 해결 방법이며 주의해서 수행해야 합니다. 이 레지스트리 키를 사용하는 것은 사용자 환경에 대해 다음을 의미합니다.

  • 이 레지스트리 키는 2022년 5월 10일에 릴리스된 업데이트부터 호환성 모드 에서만 작동합니다. 백업 보정 오프셋 내에서 인증이 허용되지만 약한 바인딩에 대한 이벤트 로그 경고가 기록됩니다.

  • 이 레지스트리 키를 사용하도록 설정하면 인증서 시간이 설정된 범위 내의 사용자 생성 시간 이전일 때 사용자를 약한 매핑으로 인증할 수 있습니다. 약한 매핑은 2025년 2월 11일에 릴리스된 Windows용 업데이트를 설치한 후 지원되지 않습니다. 그러면 전체 적용 모드가 활성화됩니다.

레지스트리 하위 키

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Kdc

CertificateBackdatingCompensation

데이터 형식

REG_DWORD

데이터

근년 단위의 해결 방법 값:

  • 50년: 0x5E0C89C0

  • 25년: 0x2EFE0780

  • 10년: 0x12CC0300

  • 5년: 0x9660180

  • 3년: 0x5A39A80

  • 1년: 0x1E13380

참고 사용자 환경에서 인증서의 수명을 알고 있는 경우 이 레지스트리 키를 인증서 수명보다 약간 더 길게 설정합니다.  사용자 환경의 인증서 수명을 모르는 경우 이 레지스트리 키를 50년으로 설정합니다. 이 키가 없는 경우 기본값은 10분으로, ADCS(Active Directory Certificate Services)와 일치합니다. 최대값은 50년(0x5E0C89C0)입니다.

이 키는 인증 인증서 발급 시간과 사용자/컴퓨터 계정에 대한 계정 생성 시간 간에 KDC(키 배포 센터)가 무시하는 시간 차이를 초 단위로 설정합니다.

중요 환경에 필요한 경우에만 이 레지스트리 키를 설정합니다. 이 레지스트리 키를 사용하면 보안 검사 사용하지 않도록 설정됩니다.

다시 시작해야 합니까?

아니요

엔터프라이즈 인증 기관

CA(엔터프라이즈 인증 기관)는 2022년 5월 10일 Windows 업데이트를 설치한 후 온라인 템플릿에 대해 발급된 모든 인증서에서 기본적으로 OID(개체 식별자)(1.3.6.1.4.1.311.25.2)를 사용하여 중요하지 않은 새 확장을 추가하기 시작합니다. 해당 템플릿의 msPKI-Enrollment-Flag 값에서 0x00080000 비트를 설정하여 이 확장 추가를 중지할 수 있습니다.

다음 certutil 명령을 실행하여 사용자 템플릿의 인증서를 새 확장에서 제외합니다.

  1. 엔터프라이즈 관리자 또는 동등한 자격 증명을 사용하여 인증 기관 서버 또는 도메인에 가입된 Windows 10 클라이언트에 로그인합니다.

  2. 명령 프롬프트를 열고 관리자 권한으로 실행을 선택합니다.

  3. certutil -dstemplate 사용자 msPKI-Enrollment-Flag +0x00080000 실행합니다. 

이 확장을 추가하지 않으면 새 확장에서 제공하는 보호가 제거됩니다. 다음 중 하나 후에만 이 작업을 수행하는 것이 좋습니다.

  1. KDC의 Kerberos 프로토콜 인증에서 PKINIT(초기 인증)에 대한 공개 키 암호화에 해당 인증서가 허용되지 않는지 확인합니다.

  2. 해당 인증서에는 다른 강력한 인증서 매핑이 구성되어 있습니다.

Microsoft CA가 아닌 배포가 있는 환경은 2022년 5월 10일 Windows 업데이트를 설치한 후 새 SID 확장을 사용하여 보호되지 않습니다. 영향을 받는 고객은 해당 CA 공급업체와 협력하여 이 문제를 해결하거나 위에서 설명한 다른 강력한 인증서 매핑을 활용하는 것을 고려해야 합니다.

추가 리소스 및 지원은 "추가 리소스" 섹션을 참조하세요.

질문과 대답

아니요, 갱신이 필요하지 않습니다. CA는 호환성 모드로 제공됩니다. ObjectSID 확장을 사용하여 강력한 매핑을 원하는 경우 새 인증서가 필요합니다.

추가 리소스

TLS 클라이언트 인증서 매핑에 대한 자세한 내용은 다음 문서를 참조하세요.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×