Microsoft 보안 권고 2915720

Windows Authenticode 서명 확인의 변경 내용

게시 날짜: 2013년 12월 10일 | 업데이트: 2014년 7월 29일

버전: 1.4

일반 정보

요약

Microsoft는 Windows Authenticode 서명 형식으로 서명된 이진 파일에 대한 서명을 확인하는 방법을 변경하기 위해 지원되는 모든 Microsoft Windows 릴리스에 대한 업데이트 가용성을 발표합니다. 변경 내용은 보안 게시판 MS13-098에 포함되지만 옵트인 기준으로만 사용하도록 설정됩니다. 사용하도록 설정하면 Windows Authenticode 서명 확인에 대한 새 동작이 더 이상 WIN_CERTIFICATE 구조에서 불필요한 정보를 허용하지 않으며 Windows는 더 이상 비준수 이진 파일을 서명된 것으로 인식하지 않습니다. Microsoft는 이후 릴리스의 Microsoft Windows에서 이 동작을 기본 동작으로 만들 수 있습니다.

권장 사항. Microsoft는 실행 파일 작성자가 WIN_CERTIFICATE 구조에 불필요한 정보를 포함하지 않도록 하여 서명된 모든 이진 파일을 새 확인 표준에 준수하는 것을 고려할 것을 권장합니다. 또한 고객이 이 변경 사항을 적절하게 테스트하여 환경에서 동작하는 방식을 평가하는 것이 좋습니다. 자세한 내용은 이 권고의 제안된 작업 섹션을 참조하세요.

권고 세부 정보

문제 참조

이 문제에 대한 자세한 내용은 다음 참조를 참조하세요.

참조 ID
보안 게시판 MS13-098 
일반 정보 코드 서명 \ WinVerifyTrust 함수 \ Authenticode 이식 가능한 실행 파일 서명 형식 소개
특정 정보 Windows 루트 인증서 프로그램 - 기술 요구 사항

권고 FAQ

권고의 범위는 무엇입니까? 
이 권고의 목적은 Microsoft Windows에서 Authenticode 서명된 이진 파일을 확인하는 방법에 대한 선택적 변경 사항을 고객에게 알리는 것입니다.

이 권고가 2014년 7월 29일에 개정된 이유는 무엇입니까?
이 권고는 2014년 7월 29일에 수정되어 여기에 설명된 더 엄격한 Windows Authenticode 서명 확인 동작이 옵트인 기준으로 사용하도록 설정되고 지원되는 Microsoft Windows 릴리스에서 기본 동작이 수행되지 않음을 발표했습니다.

Microsoft는 더 엄격한 Windows Authenticode 서명 확인 동작을 어떻게 구현합니까?
2013년 12월 10일 Microsoft는 보안 게시판 MS13-098 을 릴리스하여 더 엄격한 Authenticode 서명 확인 동작에 대한 기본 코드를 배포했습니다. 이전에 이 권고는 2014년 8월 12일까지 Microsoft에서 MS13-098구현된 변경 내용을 기본 기능으로 사용하도록 설정할 것이라고 발표했습니다. 그러나 이러한 변화에 적응하기 위해 고객과 협력하면서 기존 소프트웨어에 미치는 영향이 높을 수 있다고 판단했습니다. 따라서 Microsoft는 더 이상 엄격한 확인 동작을 기본 요구 사항으로 적용할 계획이 없습니다. 그러나 더 엄격한 확인을 위한 기본 기능은 기본 있으며 고객의 재량에 따라 사용하도록 설정할 수 있습니다.

새 서명 확인 동작을 사용하도록 설정하려면 어떻게 해야 하나요? 
새 Authenticode 서명 확인 동작을 사용하도록 설정하려는 고객은 시스템 레지스트리에서 키를 설정하여 이 작업을 수행할 수 있습니다. 키가 설정되면 Windows Authenticode 서명 확인에서 WIN_CERTIFICATE 구조에 불필요한 정보가 포함된 Authenticode 서명이 있는 이진 파일을 더 이상 인식하지 않습니다. 고객은 언제든지 이 레지스트리 키를 사용하지 않도록 설정하여 기능을 사용하지 않도록 선택할 수 있습니다. 지침은 아래의 제안된 작업을 참조하세요.

이 변경을 사용하도록 설정했습니다. 기본적으로 적용되지 않도록 지금 수행해야 하나요?  더 엄격한 확인 동작을 이미 사용하도록 설정하고 문제가 없는 고객은 확인 동작을 사용하도록 선택할 수 있습니다. 새 동작에 애플리케이션 호환성 문제가 발생하는 고객 또는 단순히 새 동작을 사용하지 않도록 설정하려는 고객은 EnableCertPaddingCheck 레지스트리 키를 제거하여 기능을 사용하지 않도록 설정할 수 있습니다. 지침은 아래의 제안된 작업을 참조하세요.

나는이 변경을 사용하도록 설정하지 않았다, 나는 기본적으로 적용되지 않습니다 지금 아무것도 할 필요가 있습니까?
아니요. MS13-098과 함께 설치된 더 엄격한 확인 동작은 시스템에 상주하지만 활성화될 때까지 휴면 기능이 됩니다.

새 확인 동작이 이미 설치된 소프트웨어에 영향을 주나요?
새로운 더 엄격한 확인 동작을 사용하도록 설정하면 Windows Authenticode 서명 형식으로 서명된 PE(이식 가능한 실행 파일) 이진 파일에 주로 적용됩니다. 이 형식으로 서명되지 않았거나 WinVerifyTrust를 사용하여 서명이 새 동작의 영향을 받지 않는지 확인하지 않는 이진 파일입니다. 영향을 받을 가능성이 가장 큰 이진 파일은 다운로드 시 사용자 지정된 인터넷을 통해 배포되는 PE 설치 관리자 파일입니다. 사용자가 영향을 인식할 수 있는 가장 일반적인 시나리오는 새 애플리케이션을 다운로드하고 설치하는 동안입니다. 이는 고객이 더 엄격한 확인 동작을 사용하도록 선택한 경우에만 해당되며, 그 후에 사용자는 유효성 검사에 실패한 서명이 있는 새 애플리케이션을 설치하려고 할 때 경고 메시지를 관찰할 수 있습니다.

새 확인 동작이 AppLocker 정책에 영향을 주나요?
더 엄격한 확인 동작을 사용하도록 선택한 고객의 경우 서명되는 파일에 따라 달라지거나 특정 게시자가 필요한 AppLocker 규칙은 파일의 서명이 더 엄격한 Authenticode 서명 확인 요구 사항을 충족하지 않는 경우 영향을 받을 수 있습니다.

새 확인 동작이 소프트웨어 제한 정책에 영향을 주나요?
더 엄격한 확인 동작을 사용하도록 선택한 고객의 경우 서명 중인 파일에 의존하거나 특정 게시자가 필요한 소프트웨어 제한 정책은 파일의 서명이 더 엄격한 Authenticode 서명 확인 요구 사항을 충족하지 않는 경우 영향을 받을 수 있습니다.

새로운 더 엄격한 확인 동작은 내 이진 비준수로 간주합니다. 내 옵션은 무엇입니까?
이진 파일이 더 엄격한 Authenticode 서명 확인 동작을 준수하지 않는 것으로 간주되는 경우 Microsoft가 기본적으로 더 엄격한 동작을 적용하지 않기 때문에 새 확인 동작을 사용하도록 설정하지 않은 시스템에서는 문제가 되지 않습니다. 그러나 새 확인 동작이 활성화된 시스템에서 이진 실패 유효성 검사 문제를 해결하려면 이진 파일을 Windows Authenticode 서명 형식을 엄격하게 준수하여 다시 서명해야 하며 특히 WIN_CERTIFICATE 구조에 불필요한 정보를 포함하지 않습니다.

Microsoft에서 제공하지 않는 서명 도구를 사용하여 서명하는 경우 서명이 더 엄격한 확인 프로세스를 준수하지 않는 것으로 인식될 가능성이 있나요?
예. 더 엄격한 확인 동작을 사용하도록 선택하는 고객의 경우 Microsoft에서 제공하지 않는 서명 도구를 사용하여 이진 파일에 서명하면 서명이 더 엄격한 확인 동작을 준수하지 않는 것으로 인식될 위험이 있습니다. Microsoft 제품 또는 microsoft에서 제공하는 서명 도구(예: signtool.exe)를 사용하면 서명이 규격으로 인식되도록 하는 데 도움이 됩니다.

Windows Authenticode란? 
Windows Authenticode는 소프트웨어 이진 파일의 원본 및 무결성을 결정하는 데 사용되는 디지털 서명 형식입니다. Authenticode는 PKCS(공개 키 암호화 표준) #7 서명된 데이터 및 X.509 인증서를 사용하여 Authenticode 서명된 이진 파일을 소프트웨어 게시자의 ID에 바인딩합니다. "Authenticode 서명"이라는 용어는 WinVerifyTrust 함수를 사용하여 생성되고 확인된 디지털 서명 형식을 나타냅니다.

Windows Authenticode 서명 확인이란?
Windows Authenticode 서명 확인은 지정된 개체에 대한 서명 검사 및 신뢰 확인의 두 가지 기본 작업으로 구성됩니다. 이러한 활동은 WinVerifyTrust 함수에 의해 수행되며, 서명 검사 실행한 다음 작업 식별자를 지원하는 트러스트 공급자에게 문의를 전달합니다(있는 경우). WinVerifyTrust 함수에 대한 자세한 기술 정보는 WinVerifyTrust 함수를 참조 하세요.

Authenticode에 대한 소개는 코드 서명 소개를 참조하세요.

제안된 작업

  • Microsoft 루트 인증서 프로그램 기술 요구 사항 검토

    이 권고에서 다루는 항목에 대해 자세히 알아보고자 하는 고객은 Windows 루트 인증서 프로그램 - 기술 요구 사항을 검토 해야 합니다.

  • 이진 서명 프로세스 수정

    Authenticode 서명 확인 동작의 변경에 기초한 기술 세부 정보를 검토한 후에는 고객이 Authenticode 서명에 WIN_CERTIFICATE 구조에 불필요한 정보가 포함되지 않도록 하는 것이 좋습니다. 또한 실행 파일 작성자는 Authenticode 서명된 이진 파일을 새 확인 표준에 따르는 것이 좋습니다. 이진 서명 프로세스를 수정하고 새 동작을 사용하도록 설정하려는 작성자는 옵트인(opt-in)을 기반으로 할 수 있습니다. 지침은 Windows 루트 인증서 프로그램 - 기술 요구 사항을 참조하세요.

  • Authenticode 서명 확인 개선 테스트

    Microsoft는 고객이 Authenticode 서명 확인을 완전히 구현하기 전에 해당 환경에서 이 변경 내용이 어떻게 작동하는지 테스트하는 것이 좋습니다. Authenticode 서명 확인 향상을 사용하도록 설정하려면 아래에 설명된 대로 EnableCertPaddingCheck 값을 추가하도록 레지스트리를 수정합니다.

    경고 MS13-098 업데이트에 포함된 기능 변경을 사용하도록 설정하기 위해 이러한 단계를 수행하면 비준수 이진 파일이 서명되지 않은 상태로 표시되므로 신뢰할 수 없게 렌더링됩니다.

    참고 레지스트리 편집기를 잘못 사용하는 경우 운영 체제를 다시 설치해야 하는 심각한 문제가 발생할 수 있습니다. Microsoft는 레지스트리 편집기를 잘못 사용하여 발생하는 문제를 해결할 수 있다고 보장할 수 없습니다. 레지스트리 편집기 사용에 따른 위험은 사용자가 책임져야 합니다.

    MS13-098 업데이트를 설치한 후 다음을 수행합니다.

    32비트 버전의 Microsoft Windows의 경우

    텍스트 편집기(예: 메모장)에 다음 텍스트를 붙여넣습니다. 그런 다음 .reg 파일 이름 확장명(예: enableAuthenticodeVerification.reg)을 사용하여 파일을 저장합니다.

    Windows Registry Editor Version 5.00  
    [HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Wintrust\Config]   
    "EnableCertPaddingCheck"="1"  
    

    이 .reg 파일을 두 번 클릭하여 개별 시스템에 적용할 수 있습니다.

    변경 내용을 적용하려면 시스템을 다시 시작해야 합니다.

    64비트 버전의 Microsoft Windows의 경우

    텍스트 편집기(예: 메모장)에 다음 텍스트를 붙여넣습니다. 그런 다음 .reg 파일 이름 확장명(예: enableAuthenticodeVerification64.reg)을 사용하여 파일을 저장합니다.

    Windows Registry Editor Version 5.00  
    [HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Wintrust\Config]   
    "EnableCertPaddingCheck"="1"
    
    [HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Cryptography\Wintrust\Config] 
    "EnableCertPaddingCheck"="1"
    

    이 .reg 파일을 두 번 클릭하여 개별 시스템에 적용할 수 있습니다.

    변경 내용을 적용하려면 시스템을 다시 시작해야 합니다.

    MS13-098 업데이트에 포함된 기능 변경 사용의 영향 비준수 이진 파일은 서명되지 않은 상태로 표시되므로 신뢰할 수 없는 상태로 렌더링됩니다.

    기능을 사용하지 않도록 설정하는 방법입니다. 다음을 수행하여 이전에 추가한 레지스트리 값을 삭제합니다.

    32비트 버전의 Microsoft Windows의 경우 텍스트 편집기(예: 메모장)에 다음 텍스트를 붙여넣습니다. 그런 다음 .reg 파일 이름 확장명(예: disableAuthenticodeVerification.reg)을 사용하여 파일을 저장합니다.

    Windows Registry Editor Version 5.00  
    [HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Wintrust\Config]   
    "EnableCertPaddingCheck"=-
    

    이 .reg 파일을 두 번 클릭하여 개별 시스템에 적용할 수 있습니다.

    변경 내용을 적용하려면 시스템을 다시 시작해야 합니다.

    64비트 버전의 Microsoft Windows의 경우 메모장 같은 텍스트 편집기에서 다음 텍스트를 붙여넣습니다. 그런 다음 .reg 파일 이름 확장명(예: disableAuthenticodeVerification64.reg)을 사용하여 파일을 저장합니다.

    Windows Registry Editor Version 5.00  
    [HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Wintrust\Config]   
    "EnableCertPaddingCheck"=-
    
    [HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Cryptography\Wintrust\Config]   
    "EnableCertPaddingCheck"=-
    

이 .reg 파일을 두 번 클릭하여 개별 시스템에 적용할 수 있습니다.

변경 내용을 적용하려면 시스템을 다시 시작해야 합니다.

추가 제안된 작업

  • PC 보호

    고객이 방화벽을 사용하도록 설정하고 소프트웨어 업데이트를 받고 바이러스 백신 소프트웨어를 설치하는 컴퓨터 보호 지침을 따르도록 계속 권장합니다. 자세한 내용은 Microsoft 금고ty 및 Security Center를 참조하세요.

  • Microsoft 소프트웨어 업데이트 유지

    Microsoft 소프트웨어를 실행하는 사용자는 최신 Microsoft 보안 업데이트를 적용하여 컴퓨터가 최대한 보호되도록 해야 합니다. 소프트웨어가 최신 상태인지 확실하지 않은 경우 Microsoft 업데이트를 방문하여 컴퓨터에서 사용 가능한 업데이트를 검색하고 사용자에게 제공되는 우선 순위가 높은 업데이트를 설치합니다. Microsoft 제품에 대한 업데이트를 제공하도록 자동 업데이트를 사용하도록 설정하고 구성한 경우 업데이트가 릴리스될 때 사용자에게 전달되지만 업데이트가 설치되어 있는지 확인해야 합니다.

기타 정보

MAPP(Microsoft Active Protections Program)

고객을 위한 보안 보호를 개선하기 위해 Microsoft는 매월 보안 업데이트 릴리스마다 주요 보안 소프트웨어 공급자에게 취약성 정보를 제공합니다. 보안 소프트웨어 공급자는 이 취약성 정보를 사용하여 바이러스 백신, 네트워크 기반 침입 탐지 시스템 또는 호스트 기반 침입 방지 시스템과 같은 보안 소프트웨어 또는 디바이스를 통해 고객에게 업데이트된 보호를 제공할 수 있습니다. 보안 소프트웨어 공급자로부터 활성 보호를 사용할 수 있는지 여부를 확인하려면 MAPP(Microsoft Active Protections Program) 파트너나열된 프로그램 파트너가 제공하는 활성 보호 웹 사이트를 방문하세요.

Feedback

지원

  • 미국 및 캐나다의 고객은 보안 지원에서 기술 지원을 받을 수 있습니다. 자세한 내용은 Microsoft 도움말 및 지원을 참조하세요.
  • 해외 고객은 현지 Microsoft 자회사로부터 지원을 받을 수 있습니다. 자세한 내용은 국제 지원을 참조하세요.
  • Microsoft TechNet Security 는 Microsoft 제품의 보안에 대한 추가 정보를 제공합니다.

부인

이 권고에 제공된 정보는 어떠한 종류의 보증도 없이 "있는 그대로" 제공됩니다. Microsoft는 특정 목적에 대한 상품성 및 적합성에 대한 보증을 포함하여 명시적이거나 묵시적인 모든 보증을 부인합니다. 어떠한 경우에도 Microsoft Corporation 또는 해당 공급업체는 Microsoft Corporation 또는 공급업체가 이러한 손해의 가능성을 통보한 경우에도 직접, 간접, 부수적, 결과적, 비즈니스 이익 손실 또는 특별 손해를 포함한 모든 손해에 대해 책임을 지지 않습니다. 일부 주에서는 결과적 또는 부수적 손해에 대한 책임의 배제 또는 제한을 허용하지 않으므로 앞에서 설명한 제한이 적용되지 않을 수 있습니다.

수정 내용

  • V1.0(2013년 12월 10일): 공지 게시됨.
  • V1.1(2013년 12월 13일): 인증 서명 확인 개선 제안 작업의 레지스트리 키 정보를 수정했습니다. 제안된 작업을 적용하거나 적용하려는 고객은 수정된 정보를 검토해야 합니다.
  • V1.2(2014년 2월 11일): MS13-098로 구현된 휴면 변경이 2014년 6월 10일에 사용하도록 설정될 것임을 고객에게 알리는 권고를 다시 릴리스했습니다. 이 날짜 이후 Windows는 더 이상 비준수 이진 파일을 서명된 것으로 인식하지 않습니다. 자세한 내용은 이 권고 사항의 권장 사항제안된 작업 섹션을 참조하세요.
  • V1.3(2014년 5월 21일): 비준수 이진 파일이 더 이상 서명된 것으로 인식되지 않는 경우 2014년 8월 12일의 새로운 마감 날짜를 반영하도록 권고가 수정되었습니다. 이제 2014년 6월 10일 마감 날짜 대신 MS13-098로 구현된 휴면 변경 내용이 2014년 8월 12일로 설정됩니다.
  • V1.4(2014년 7월 29일): Microsoft가 지원되는 Microsoft Windows 릴리스에서 더 이상 엄격한 확인 동작을 기본 기능으로 적용할 계획이 없음을 알리도록 권고가 수정되었습니다. 다시 기본 옵트인 기능으로 사용할 수 있습니다. 자세한 내용은 권고 FAQ 섹션을 참조하세요.

페이지 생성 2014-07-29 14:38Z-07:00.