Heartbleed: wszystko, co musisz wiedzieć o najgorszym błędzie internetu

Heartbleed: wszystko, co musisz wiedzieć o najgorszym błędzie internetu

11.04.2014 10:27, aktual.: 11.04.2014 12:38

Zalogowani mogą więcej

Możesz zapisać ten artykuł na później. Znajdziesz go potem na swoim koncie użytkownika

Możliwe, że poniedziałek 7 kwietnia 2014 roku zostanie zapamiętany jako czarny dzień dla internetu. To właśnie tego dnia upubliczniono informację o luce w bibliotece kryptograficznej Open SSL. Po kilku dniach od ujawnienia błędu w kodzie wiemy już, że jest to jedno z najpoważniejszych, jeśli nie najpoważniejsze zagrożenie dla bezpieczeństwa naszych danych w sieci. Nazwano je "heartbleed", czyli w wolnym tłumaczeniu "krwawiące serce".

Open SSL wykorzystywane jest do szyfrowania komunikacji pomiędzy komputerami, w szczególności między serwerami firm a naszymi prywatnymi maszynami. Luka "heartbleed" umożliwia wyciągnięcie informacji z pamięci RAM zaatakowanego komputera, co w praktyce oznacza, że przestępcy mogli uzyskać dostęp do wielu poufnych informacji, jak choćby hasła i loginy do kont użytkowników. Co więcej, atak może działać w dwie strony –. haker może zarówno zaatakować serwer, jak i umieścić złośliwy kod na własnym serwerze, dzięki czemu będzie mógł wyciągać dane z pamięci RAM naszych komputerów, smartfonów czy tabletów.

Dlaczego luka "heartbleed" jest tak niebezpieczna?

Informacje, które można w pojedynczym ataku wyciągnąć z pamięci RAM stanowią losowe dane - przestępca nie może konkretnie wybrać, co chce odczytać. Rzecz jednak w tym, że lukę "heartbleed" można wykorzystywać wielokrotnie, a niektóre dane są na tyle charakterystyczne, że można je względnie łatwo rozpoznać w gąszczu zdobytych informacji. Do takich danych należą klucze służące do szyfrowania komunikacji między serwerem a komputerami-klientami. To oznacza, że osoba, która taki klucz zdobędzie może podsłuchiwać komunikację między maszynami, poznając treść wszystkich wymienianych danych. Co gorsza, właściciel zaatakowanej maszyny nie byłby świadomy, że nieupoważniona osoba poznała klucz i podsłuchuje teoretycznie zabezpieczoną komunikację.

To nie wszystko. Ujawnione informacje na temat „heartbleed”. mówią, że luka istniała od około 2 lat i nikt nie wie, ile osób wykorzystało ją do podsłuchiwania. Na ataki podatne są wersje biblioteki OpenSSL od 1.0.1 do 1.0.1f, jak również OpenSSL 1.0.2-beta. Dla laika może się to wydawać tylko kolejnym błędem w oprogramowaniu. Problem jednak w tym, że z OpenSSL korzysta aż 2/3 wszystkich serwerów podłączonych do internetu. To oznacza, że przez ostatnie 2 lata podatne na wycieki poufnych, szyfrowanych informacji były usługi takich firm jak choćby Facebook, Google, Amazon czy Yahoo!. Potencjalna skala zagrożenia jest więc ogromna, a jednocześnie rzeczywiste szkody są niemal niemożliwe do oszacowania.

Nawet za rok będą serwery wrażliwe na atak - tego nie da się naprawić Co powinniśmy zrobić i czy zagrożenie już minęło?

Jak ujawnił „Wall Street Journal”, jeszcze zanim podano do publicznej wiadomości istnienie luki „heartbleed”. inżynierowie oprogramowania największych firm działających w internecie wdrażali poprawki. Praktyka działania w sytuacji wykrycia niebezpiecznego błędu w kodzie polega na przekazaniu informacji do najbardziej wrażliwych na atak, a jednocześnie zaufanych firm. Jednocześnie trzeba jednak zadbać, aby nie było żadnych przecieków. Gdyby informacja o istnieniu luki dotarła na fora cyberprzestępców, straty mogłyby być ogromne. W związku z powyższym nie wszystkie firmy mogły dostać wcześniejsze ostrzeżenie i zabezpieczyć swoje usługi jeszcze przed publicznym ujawnieniem istnienia luki.

W przypadku "heartbleed" przed innymi mogły zareagować między innymi Facebook i Google, choć już tacy giganci jak Yahoo! czy Amazon ostrzeżenia nie otrzymali. Co więcej, nawet w samym Google nie wszyscy opiekunowie produktów wiedzieli o błędzie. Z obawy przed przeciekami uznano, że najistotniejsze jest zabezpieczenie tylko najważniejszych usług koncernu. Ostatecznie wyścig z czasem zakończył się w poniedziałek, 7 kwietnia, kiedy publicznie ujawniono istnienie "heartbleed". Od tego momentu właściwie wszystkie firmy świadczące usługi w internecie z wykorzystaniem OpenSSL zaczęły wdrażać poprawki w kodzie.

Dzisiaj, po kilku dniach od ujawnienia luki, na wielu serwerach nadal jeszcze nie naprawiono błędu. We wpisie blogowym opublikowanym przez projekt TOR czytamy, że jeśli chcemy zachować anonimowość w internecie, lepiej w ogóle z niego nie korzystać przez najbliższe dni. Niektórzy eksperci, jak Nicholas Weaver z ICSI twierdzą, że "nawet za rok będą serwery wrażliwe na atak - tego nie da się naprawić".

Ogólne zalecenie dla użytkowników jest niestety dość uciążliwe, ale konieczne, jeśli chcemy mieć pewność bezpieczeństwa w sieci - należy zmienić wszystkie hasła w usługach, z których korzystamy na co dzień. Oczywiście najistotniejsze będzie hasło do konta bankowego. Choć korzystające z OpenSSL banki jako jedne z pierwszych poinformowały o naprawieniu wykrytego błędu, dla własnego bezpieczeństwa lepiej zmienić hasło do serwisu transakcyjnego - bez względu na zagrożenia, warto to robić regularnie.

Czy taka sytuacja może się powtórzyć?

Chciałoby się odpowiedzieć na powyższe pytanie przecząco. Niestety, sam przypadek powstania i wykrycia „heartbleed”. każe być sceptycznym. Najgroźniejsza luka w historii internetu powstała w wyniku trywialnego błędu niemieckiego programisty - Robina Seggelmanna. Jak zdradził dziennikowi „Sydney Herald”, w kodzie jednej z nowych funkcji, którą wdrażał w wigilię 2011 roku, Seggelmann zapomniał sprawdzić jedną ze zmiennych, zawierającą parametr "length". Sam programista określił swój błąd jako trywialny, choć katastrofalny w skutkach.

Przykład ten pokazuje przede wszystkim, jak bardzo wrażliwa i młoda jest jeszcze branża oprogramowania. Wiele międzynarodowych usług o ogromnym zasięgu, sięgającym milionów użytkowników bazuje na programach, w których drobna luka może zagrozić najbardziej kluczowym z punktu widzenia bezpieczeństwa wymiany danych funkcjom. Co więcej, taka luka może pozostać nie wykryta latami. To każe zadać pytanie, jak wiele podobnych błędów nadal pozostaje niedostrzeżonych w kodzie najważniejszych usług.

Rozwiązaniem są, jak zwykle, pieniądze. Przy okazji afery z „heartbleed”. na jaw wyszło, że projekt OpenSSL, z którego korzysta tak wiele bogatych firm, od lat jest niedofinansowany. Być może gdyby zatrudniono dodatkowych testerów oprogramowania, luka Seggelmanna nie zostałaby opublikowana.

gb/jg/gb