Cloudbleed: najnowsza katastrofa bezpieczeństwa online
Cloudbleed

Niektóre błędy można naprawić w kilka godzin, inne wymagają trochę więcej czasu, a są też takie, które potrafią zepsuć każdemu weekend. Cloudbleed należy do tej ostatniej kategorii. Dzięki wspólnemu wysiłkowi inżynierów Google i ludzi z Cloudflare, negatywne skutki tej luki zostały już zneutralizowane, ale problem polega na tym, że witryny wspierane przez tego dostawcę CDN i zabezpieczeń przeciekały prywatne dane przez miesiące, a nie wiadomo, czy ktoś o złych zamiarach nie podsłuchiwał…

Początek problemu

Zaczęło się od tweeta wysłanego przez Tavisa Ormandy'ego z Project Zero Google do zespołu bezpieczeństwa Cloudflare: „Skontaktujcie się ze mną pilnie”. To było 17 lutego. W piątek. W ciągu kilku godzin Cloudflare ustaliło, że jego platforma cierpi na jedną z najpoważniejszych luk w sieci ostatnich czasów, o cechach podobnych do Heartbleed. Wdrożenie początkowego planu łagodzenia zajęło firmie mniej niż godzinę (dokładnie 44 minuty), co z pewnego punktu widzenia świadczy o jej sprawności. Mimo nadchodzącego weekendu Cloudflare skoordynowało zespoły w San Francisco i Londynie, aby odtworzyć problem, wykryć przyczynę, a następnie zmiażdżyć błąd. Ich wyjaśnienie dla publiczności... zajęło trochę więcej czasu.

Cloudbleed: najnowsza katastrofa bezpieczeństwa online

Techniczne szczegóły

Mówiąc luźno, Cloudbleed to przepełnienie bufora. Cloudflare postanowił użyć nowego parsera HTML, cf-html, jako zamiennika dotychczasowego parsera opartego na Ragel. Podczas adaptacji kodu cf-html i Ragel do swojej platformy wprowadzono błąd (którego „nie” ma w parserach, lecz w implementacji Cloudflare), przez który przetwarzane informacje były zapisywane w innym miejscu już po wypełnieniu bufora. I kluczowe jest tutaj: tutaj „gdzie indziej”. Wyciekające dane wydają się wyrwane z kontekstu, wręcz śmieci. Jednak analiza Ormandy'ego wykryła bardzo niepokojące elementy, od haseł i ciasteczek, przez klucze szyfrujące, żądania HTTPS, prywatne wiadomości, aż po rezerwacje hotelowe. Bomba pęka, gdy uświadomimy sobie, że Google i inne wyszukiwarki wchłaniały te informacje do swoich systemów pamięci podręcznej… a pierwszy wyciek miał miejsce we wrześniu ubiegłego roku.

Jak się chronić?

Jak wpływa to na użytkownika? Jeśli korzystasz z jakiejś witryny lub usługi chronionej przez Cloudflare, zalecane jest zmienić hasło. Dostępne dane sugerują ponad cztery miliony potencjalnie dotkniętych witryn, a na liście znajdują się takie nazwy jak Patreon, Yelp, OKCupid, BitPay, Uber, 1Password, Zendesk, Medium, Bitdefender, Pastebin, FitBit, Change.org, Feedly, Adafruit… nie sposób ich wszystkich wymienić. Pełna lista znajduje się tutaj wraz z podsumowaniem, albo alternatywnie zaleca się skorzystać z CloudBleedCheck, aby sprawdzić dotknięte domeny. Technicznie minęło już dziesięć dni od Cloudbleed, ale wciąż pozostają pamięci podręczne do wyczyszczenia.