r   e   k   l   a   m   a
r   e   k   l   a   m   a

LibreSSL, czyli już ponad 90 tys. linijek kodu wyleciało z OpenSSL, by nie dopuścić do powtórki z luki Heartbleed

Strona główna AktualnościOPROGRAMOWANIE

Koszty załatania luki Heartbleed we wszystkich dotkniętych nią urządzeniach (to nie tylko serwery, wirtualne czy fizyczne, ale też routery czy nawet słuchawki VoIP-owych telefonów) szacowane są na co najmniej kilka miliardów dolarów. Secunia utrzymuje, że naprawy zajmą jeszcze długie miesiące – i trudno się z tym nie zgodzić, skoro tak znana firma jak Cisco zidentyfikowała już 44 podatne na atak produkty, a do tej pory zdołała przygotować łatki do czterech z nich. W tej paskudnej sytuacji wielką szansą dla całej branży jest inicjatywa twórców systemu OpenBSD, którzy rozpoczęli prace nad własnym forkiem biblioteki OpenSSL – LibreSSL.

OpenSSL jest biblioteką przypominającą przerośnięty szwajcarski scyzoryk. Znaleźć w niej można kod odnoszący się do wymarłych systemów operacyjnych, są tam kryptosystemy uznane za niebezpieczne i praktycznie nieużywane. Analiza tego przerośniętego tłuszczem kodu nie jest łatwa, więc nie dziwi specjalnie, że Heartbleeda społeczność deweloperska nie była w stanie zauważyć przez dwa lata.

Nadzieją dla branży ma być nowa biblioteka, o nazwie LibreSSL. Stoją za nią programiści projektu OpenBSD – systemu operacyjnego, w którym bezpieczeństwo jest najważniejszą kwestią, przedkładaną nad wszystkie inne. Ich lider Theo de Raadt, postać znana i kontrowersyjna, publicznie skrytykował twórców OpenSSL, określając ich jako nieodpowiedzialny zespół. Założenie jest proste: stworzyć w pełni kompatybilną bibliotekę (na kompatybilną na poziomie API, czyli zgodną z zewnętrznym oprogramowaniem korzystającym dotąd z OpenSSL), której kod zostanie przepisany, uproszczony i poddany kompletnemu audytowi pod kątem ewentualnych luk w zabezpieczeniach.

Na razie sytuacja wygląda nieco żartobliwie – strona domowa projektu używa niesławnego fontu Comic Sans, gdyż jej autorzy deklarują, że są zbyt zajęci kasowaniem i przepisywaniem kodu OpenSSL, by mieć czas na robienie porządnych stron internetowych. Jeśli chcecie im pomóc w zrobieniu takiej strony, to lepiej sobie odpuśćcie. Zespół OpenBSD pomocy innej niż finansowa sobie nie życzy.

Po przejrzeniu udostępnionego już kodu widać, że faktycznie czasu na znalezienie lepszego fonta mogło nie być. Repozytorium ujawnia setki refaktoryzacji, poprawek i eliminacji. Co prawda większość z nich obejmuje na razie przepisanie kodu w C do postaci KNF (kernel normal form), ale jest to konieczna część pracy, by nie pogubić się w przyszłości w niezbyt elegancko wyglądającym kodzie oryginału. Sporo jest też kasowania – z LibreSSL wyleciał kod dla starych wersji Windows i Mac OS-a (Classic), a także takich zabytków jak VMS, NetWare czy OS/2. Podczas prac nad forkiem z kodu OpenSSL „wyleciało” już ponad 90 tysięcy linijek.

Niestety na początku LibreSSL ma być przeznaczone tylko dla OpenBSD, będzie domyślną biblioteką kryptograficzną w OpenBSD 5.6, zapowiadaną na listopad. Niecierpliwi użytkownicy innych systemów operacyjnych muszą poczekać – wsparcie dla Linuksa i innych OS-ów z czasem się pojawi, ale dopiero gdy kod LibreSSL uznany zostanie za stabilny i bezpieczny.

Może więc dobrze by było, gdyby do debiutu LibreSSL na większej liczbie platform twórcy aplikacji zastanowili się jednak nad wykorzystaniem w oprogramowaniu alternatyw dla OpenSSL, takich jak np. znacznie bardziej elegancki i zwarty (najmniejsza implementacja działa na urządzeniach mających zaledwie 64 KB RAM) PolarSSL? Uzależnienie bezpieczeństwa oprogramowania od jednej biblioteki jest, jak pokazała historia Heartbleed, zbyt dużym ryzykiem.

r   e   k   l   a   m   a
© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.