Niekomercyjny urząd certyfikacji Let’s Encrypt, kierowany przez społeczność, oferuje certyfikaty za darmo dla wszystkich zainteresowanych, o planowanym wycofaniu wielu wcześniej wydanych certyfikatów TLS/SSL. Z 116 milionów obecnie działających certyfikatów Let’s Encrypt zostanie wycofanych nieco ponad 3 miliony (2,6%), z czego około 1 milion to duplikaty przypisane do jednej domeny (błąd głównie dotknął certyfikaty często aktualizowane, dlatego jest tak wiele duplikatów). Wycofanie zaplanowano na 4 marca (dokładny czas pozostaje do ustalenia, ale wycofanie nastąpi najwcześniej o 3 w nocy czasu MSK).
Konieczność wycofania wynika z wykrytej 29 lutego . Problem występuje od 25 lipca 2019 roku i dotyczy systemu weryfikacji zapisów CAA w DNS. Zapis CAA (, Autoryzacja Certyfikatu) pozwala właścicielowi domeny jasno określić, przez który urząd certyfikacji mogą być generowane certyfikaty dla wskazanej domeny. Jeśli urząd certyfikacji nie jest wymieniony w zapisach CAA, ma obowiązek zablokować wydawanie certyfikatów dla tej domeny i poinformować właściciela domeny o próbach kompromitacji. W większości przypadków certyfikat jest żądany natychmiast po pomyślnym przejściu weryfikacji CAA, ale wynik weryfikacji jest uznawany za ważny przez kolejne 30 dni. Przepisy również nakazują przeprowadzenie ponownej weryfikacji najpóźniej na 8 godzin przed wydaniem nowego certyfikatu (tj. jeśli od ostatniej weryfikacji minęło 8 godzin, wymagana jest ponowna weryfikacja).
Błąd występuje, jeśli żądanie certyfikatu obejmuje jednocześnie wiele nazw domen, dla których wymagana jest weryfikacja zapisu CAA. Istota błędu polega na tym, że w momencie ponownej weryfikacji zamiast walidacji wszystkich domen, przeprowadzono ponowną weryfikację tylko jednej domeny z listy (jeśli w żądaniu było N domen, zamiast N różnych weryfikacji, jedna domena była weryfikowana N razy). Dla pozostałych domen ponowna weryfikacja nie była przeprowadzana, a w podejmowaniu decyzji brano pod uwagę dane z pierwszej weryfikacji (tj. używano danych sprzed 30 dni). W konsekwencji, w ciągu 30 dni po pierwszej weryfikacji Let’s Encrypt mógł wydać certyfikat, nawet jeśli wartość zapisu CAA została zmieniona i Let’s Encrypt została usunięta z listy dozwolonych urzędów certyfikacji.
Użytkownicy dotknięci problemem otrzymali powiadomienia e-mail, jeśli przy uzyskiwaniu certyfikatu wypełniono dane kontaktowe. Można sprawdzić swoje certyfikaty, ładując numery seryjne unieważnionych certyfikatów lub korzystając z (hostowanej na adresie IP, przez Roskomnadzor w RF). Można uzyskać numer seryjny certyfikatu dla interesującej domeny za pomocą polecenia:
openssl s_client -connect example.com:443 -showcerts /dev/null \
| openssl x509 -text -noout | grep -A 1 Serial\ Number | tr -d :
Źródło: opennet.ru
