Fałszywe certyfikaty dla domen Google – podsumowanie

Fałszywe certyfikaty dla domen Google – podsumowanie

Na początku mijającego tygodnia, Google, za pośrednictwem swojego bloga, poinformowało, że odkryło kilka nieautoryzowanych certyfikatów SSL wydanych ich swoich domen. Przyjrzyjmy się jak do tego doszło i jak na ten incydent zareagowali twórcy przeglądarek.

Testowy certyfikat pośredni

O podejrzanych certyfikatach Google dowiedziało się 20 marca. Ich wystawcą był pośredni Urząd Certyfikacji należący do egipskiej firmy Mideast Communication Systems (MCS), który z kolei wystawiony został przez główny Urząd Certyfikacji chińskiej organizacji zwanej China Internet Network Information Center (CNNIC). Skrót SHA-1 certyfikatu pośredniego to: e1 f3 59 1e 76 98 65 c4 e4 47 ac c3 7e af c9 e2 bf e4 c5 76, a wśród domen należących do Google dla których wystawiono fałszywe certyfikaty znalazły się m.in. *.google.com, *.googleapis.com i www.gmail.com.

Certyfikat MCS (zwróćcie uwagę na okres ważności)

Certyfikat pośredni MCS (zwróćcie uwagę na okres ważności)

Certyfikat CNNIC jest uznawany za zaufany w większości przeglądarek dzięki czemu potencjalne nadużycia z wykorzystaniem fałszywych certyfikatów mogły zostać przeprowadzone bez żadnych ostrzeżeń z ich (przeglądarek) strony. Użytkownicy nie byliby jednak całkowicie bezbronni. Jednym z mechanizmów, który uchroniłby ich przed byciem ofiarą ataku jest Public Key Pinning wdrożony obecnie w Chrome i Firefoxie.

O sprawie Google szybko poinformowało inne przeglądarki oraz chiński urząd certyfikacji, który dwa dni później przesłał wytłumaczenia. Wyjaśnił on, że certyfikat pośredni wystawił dla swojego egipskiego partnera, który zamierzał wykorzystywać go jedynie do wystawiania certyfikatów dla swoich domen. Niestety dla MCS (i tym samym dla CNNIC) nie wszystko poszło zgodnie z planem.

SSL forward proxy, inżynier MCS i Chrome

Jak informuje MCS, w oficjalnej odpowiedzi na całą sytuację, klucz prywatny certyfikatu pośredniego został, w celach testowych, umieszczony na jednym z firewalli. Już sam ten fakt firmie MCS chluby nie przynosi.

Jak dalej wyjaśnia MCS firewall ten był skonfigurowany do działania w trybie zwanym SSL forward proxy, który przechwytuje żądania klientów i dopiero przekazuje je do serwera docelowego. W przypadku żądań HTTPS generuje on automatycznie certyfikat SSL dla domeny będącej adresem docelowym i przedstawia go użytkownikowi. Dzięki temu możliwe jest przeprowadzanie ataków man-in-the-middle.

Testy przebiegały pomyślnie do momentu, aż jeden z inżynierów firmy MCS odwiedził kilka serwisów Google korzystając z przeglądarki Chrome. Nie byłoby w tym nic niezwykłego, gdyby nie fakt, że jego żądania także przechodziły przez firewall działający we wspomnianym trybie. Doprowadziło to do wygenerowania kilku fałszywych certyfikatów SSL (podpisanych zaufanym certyfikatem) dla domen należących do Google o czym – dzięki mechanizmom wbudowanym w swojej przeglądarce – szybko dowiedział się ich właściciel.

Po tym incydencie firma MCS natychmiast usunęła certyfikat ze swojego urządzenia, a CNNIC unieważniło go.

Google przyznało, że nie zarejestrowało nadużyć z wykorzystaniem fałszywych certyfikatów. Cała sytuacja prawdopodobnie nie spowodowała więc zagrożenia dla użytkowników serwisów Google. Nie oznacza to jednak, że wobec firmy MCS nie wyciągnięto odpowiednich konsekwencji.

Reakcje przeglądarek

Zarówno Google, Mozilla jak i Microsoft zdecydowały o cofnięciu zaufania dla certyfikatu pośredniego należącego do MCS.

Google umieściło certyfikat na liście unieważnionych poprzez mechanizm CRLSets z której korzysta Chrome. Mozilla dodała go do listy OneCRL, która zostanie wdrożona wraz z Firefoxem 37. Także Microsoft wycofał certyfikat MCS ze swoich zaufanych magazynów, wykorzystywanych między innymi przez Internet Explorer, Operę i Chrome.

Co więcej, Mozilla rozważa ograniczenie zakresu domen dla których CNNIC mogłoby wydawać certyfikaty, a pojawiają się nawet głosy o całkowitym usunięciu certyfikatu głównego (root) CNNIC z listy zaufanych. Powodem jest złamanie zapisów polityki, która obowiązuje wszystkie Urzędy Certyfikacji należące do programu Mozilli. Obecnie ciągle trwają rozmowy na ten temat.

Ciekawostką może być fakt, że już 5 lat temu toczyła się dyskusja na temat obecności roota CNNIC w produktach Mozilli.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *