Awaria w OpenBSD, DragonFly BSD i Electron z powodu wygaśnięcia certyfikatu głównego IdenTrust

Wycofanie certyfikatu głównego IdenTrust (DST Root CA X3), używanego do podpisania krzyżowego certyfikatu głównego Let's Encrypt CA, spowodowało problemy z weryfikacją certyfikatu Let's Encrypt w projektach korzystających ze starszych wersji OpenSSL i GnuTLS. Problemy dotknęły także bibliotekę LibreSSL, której twórcy nie wzięli pod uwagę przeszłych doświadczeń związanych z awariami, które pojawiły się po tym, jak certyfikat główny AddTrust firmy Sectigo (Comodo) CA stał się przestarzały.

Przypomnijmy, że w wersjach OpenSSL do gałęzi 1.0.2 włącznie oraz w GnuTLS przed wersją 3.6.14 występował błąd, który uniemożliwiał prawidłowe przetwarzanie certyfikatów z podpisem krzyżowym, jeśli jeden z certyfikatów głównych używanych do podpisywania stał się nieaktualny , nawet jeśli zachowane zostały inne ważne łańcuchy zaufania (w przypadku Let's Encrypt przestarzały certyfikat główny IdenTrust uniemożliwia weryfikację, nawet jeśli system posiada obsługę własnego certyfikatu głównego Let's Encrypt, ważnego do 2030 roku). Istotą błędu jest to, że starsze wersje OpenSSL i GnuTLS analizowały certyfikat jako łańcuch liniowy, podczas gdy zgodnie z RFC 4158 certyfikat może reprezentować skierowany rozproszony wykres kołowy z wieloma kotwicami zaufania, które należy wziąć pod uwagę.

Aby rozwiązać ten problem, proponuje się usunięcie certyfikatu „DST Root CA X3” z pamięci systemowej (/etc/ca-certificates.conf i /etc/ssl/certs), a następnie uruchomienie polecenia „update -ca-certyfikaty -f -v” „). W CentOS i RHEL możesz dodać certyfikat „DST Root CA X3” do czarnej listy: zrzut zaufania — filtr „pkcs11:id=%c4%a7%b1%a4%7b%2c%71%fa%db%e1% 4b%90%75%ff%c4%15%60%85%89%10" | openssl x509 | sudo tee /etc/pki/ca-trust/source/blacklist/DST-Root-CA-X3.pem Sudo update-ca-trust ekstrakt

Niektóre z awarii, które zaobserwowaliśmy po wygaśnięciu certyfikatu głównego IdenTrust:

  • W OpenBSD przestało działać narzędzie syspatch, używane do instalowania binarnych aktualizacji systemu. Projekt OpenBSD pilnie wydał dziś łatki dla gałęzi 6.8 i 6.9, które rozwiązują problemy w LibreSSL ze sprawdzaniem certyfikatów z podpisem krzyżowym, których jeden z certyfikatów głównych w łańcuchu zaufania wygasł. Aby obejść ten problem, zaleca się przełączenie z HTTPS na HTTP w pliku /etc/installurl (nie zagraża to bezpieczeństwu, ponieważ aktualizacje są dodatkowo weryfikowane za pomocą podpisu cyfrowego) lub wybranie alternatywnego serwera lustrzanego (ftp.usa.openbsd. org, ftp.hostserver.de, cdn.openbsd.org). Możesz także usunąć wygasły certyfikat główny DST Root CA X3 z pliku /etc/ssl/cert.pem.
  • W DragonFly BSD podobne problemy obserwuje się podczas pracy z portami DPort. Podczas uruchamiania menedżera pakietów pkg pojawia się błąd weryfikacji certyfikatu. Poprawka została dzisiaj dodana do gałęzi master, DragonFly_RELEASE_6_0 i DragonFly_RELEASE_5_8. Aby obejść ten problem, możesz usunąć certyfikat DST Root CA X3.
  • Proces weryfikacji certyfikatów Let's Encrypt w aplikacjach opartych na platformie Electron jest zepsuty. Problem został rozwiązany w aktualizacjach 12.2.1, 13.5.1, 14.1.0, 15.1.0.
  • W niektórych dystrybucjach występują problemy z dostępem do repozytoriów pakietów podczas korzystania z menedżera pakietów APT powiązanego ze starszymi wersjami biblioteki GnuTLS. Problem dotyczył Debiana 9, który korzystał z niezałatanego pakietu GnuTLS, co powodowało problemy z dostępem do deb.debian.org użytkownikom, którzy nie zainstalowali aktualizacji na czas (oferowano poprawkę gnutls28-3.5.8-5+deb9u6 17 września). W ramach obejścia zaleca się usunięcie pliku DST_Root_CA_X3.crt z pliku /etc/ca-certificates.conf.
  • Działanie klienta acme w pakiecie dystrybucyjnym do tworzenia zapór ogniowych OPNsense zostało zakłócone; problem został zgłoszony wcześniej, ale programistom nie udało się wypuścić łatki na czas.
  • Problem dotyczył pakietu OpenSSL 1.0.2k w RHEL/CentOS 7, ale tydzień temu została wygenerowana aktualizacja pakietu ca-certificates-7-7.el2021.2.50_72.noarch dla RHEL 7 i CentOS 9, z której IdenTrust certyfikat został usunięty, tj. przejaw problemu został wcześniej zablokowany. Podobna aktualizacja została opublikowana tydzień temu dla Ubuntu 16.04, Ubuntu 14.04, Ubuntu 21.04, Ubuntu 20.04 i Ubuntu 18.04. Ponieważ aktualizacje zostały wydane z wyprzedzeniem, problem ze sprawdzaniem certyfikatów Let's Encrypt dotyczył tylko użytkowników starszych gałęzi RHEL/CentOS i Ubuntu, którzy nie instalowali regularnie aktualizacji.
  • Proces weryfikacji certyfikatu w grpc jest uszkodzony.
  • Kompilacja platformy Cloudflare Pages nie powiodła się.
  • Problemy z usługami internetowymi Amazon (AWS).
  • Użytkownicy DigitalOcean mają problemy z połączeniem się z bazą danych.
  • Platforma chmurowa Netlify uległa awarii.
  • Problemy z dostępem do usług Xero.
  • Próba nawiązania połączenia TLS z internetowym interfejsem API usługi MailGun nie powiodła się.
  • Awarie w wersjach macOS i iOS (11, 13, 14), na które teoretycznie nie powinien mieć wpływu problem.
  • Usługi Catchpoint nie powiodły się.
  • Błąd podczas weryfikacji certyfikatów podczas uzyskiwania dostępu do API PostMan.
  • Zapora sieciowa Guardian uległa awarii.
  • Strona pomocy technicznej Monday.com jest uszkodzona.
  • Platforma Cerb uległa awarii.
  • Kontrola dostępności w Google Cloud Monitoring nie powiodła się.
  • Problem z weryfikacją certyfikatu w Cisco Umbrella Secure Web Gateway.
  • Problemy z połączeniem się z serwerami proxy Bluecoat i Palo Alto.
  • OVHcloud ma problemy z połączeniem się z API OpenStack.
  • Problemy z generowaniem raportów w Shopify.
  • Występują problemy z dostępem do interfejsu API Heroku.
  • Menedżer Live Ledger ulega awarii.
  • Błąd weryfikacji certyfikatu w narzędziach dla programistów aplikacji Facebook.
  • Problemy w Sophos SG UTM.
  • Problemy z weryfikacją certyfikatu w cPanelu.

Źródło: opennet.ru

Dodaj komentarz