
Puppet 배포판을 수정 및 마이그레이션하는 데 도움이 되는 Puppet 모듈 (CVE-2011-3872)
이 모듈은 CVE-2011-3872 AltNames 취약점을 영구적으로 해결하는 데 도움을 줍니다.
자세한 사용 가이드는 다음을 참조하세요:
certdnsnames 설정이 한 번이라도 활성화된 적이 있다면, 귀하의 사이트는 CVE-2011-3872 AltNames 취약점을 통한 공격에 취약합니다.Puppet 마스터에서 certdnsnames를 사용한 적이 있다면 잠재적으로 취약합니다. 모든 Puppet Enterprise 사용자는 어느 시점에서 certdnsnames를 사용했습니다.
취약한지 빠르게 테스트하려면 이 모듈에 포함된 scan_certs 스크립트를 사용할 수 있습니다. (Puppet Enterprise의 경우 bin/의 사본을 사용하고, 오픈소스 Puppet의 경우 bin/webrick의 사본을 사용합니다.)
# bin/scan_certs
Status as of: 2011-10-23 19:42:26
Total Certificates Found: 7 *
Potentially Vulnerable: 7 (100.0%)
...
이 스크립트는 완벽하지 않습니다. Puppet CA의 인증서 캐시에 의존하기 때문입니다. 캐시가 삭제되거나 수정된 적이 있다면 스크립트가 위음성을 반환할 수 있습니다. 또한 다음 명령을 실행하여 에이전트 노드의 로컬 인증서를 검사할 수 있습니다:
openssl x509 -text -noout -in $(puppet agent --configprint hostcert)
...그리고 X509v3 Subject Alternative Name 필드가 있는지 확인합니다.
의심스러운 경우 취약점을 대응할 것을 권장합니다.
사이트를 보호하려면 두 가지 요구 사항을 충족해야 합니다:
certdnsnames 설정을 비활성화하거나/그리고 Puppet을 영향을 받지 않는 버전으로 업그레이드하세요.두 번째 요구 사항을 충족하는 방법은 여러 가지가 있습니다. 다음과 같은 방법이 있습니다:
PUPPET을 사용하여 사이트를 대응하려면, 이 모듈에 포함된 README-detailed.markdown 파일을 참조하세요.
SSH를 사용하여 CA를 즉시 교체하려면, 이 모듈에 포함된 README-ssh-only.markdown 파일을 참조하세요.
이 취약점에 대한 자세한 정보(FAQ, 업데이트된 Puppet 버전에 대한 세부 정보, 보안 핫픽스 링크 포함)는 다음을 방문하세요: http://puppetlabs.com/security/cve/cve-2011-3872.