Dziura w OpenSSL, o jakiej się nie śniło

No bo jak inaczej nazwać błąd, który pozwala na zdalny dostęp do pamięci podatnej maszyny? Co prawda „tylko” 64kB i „tylko” związanej z procesem korzystającym z biblioteki zawierającej błąd, ale biorąc pod uwagę, do czego OpenSSL służy… Wyciec mogą klucze (jeśli nie zostaną zmienione, to w przypadku ich przechwycenia będzie można podsłuchać transmisję nawet po aktualizacji biblioteki), loginy i hasła (jeśli użytkownicy nie zmienią haseł, to atakujący będzie mógł się dostać do serwisów nawet po zmianie certyfikatów i aktualizacji biblioteki).

Heartbleed

Źródło: http://heartbleed.com/

Błąd związany z OpenSSL w Debianie sprzed blisko 6 lat to przy tej dziurze pikuś – wtedy wystarczyło zaktualizować pakiet i zmienić klucze. Teraz na dobrą sprawę należałoby zmienić wszystkie certyfikaty SSL (o ile były używane na choć jednej podatnej maszynie) i skłonić wszystkich użytkowników do zmiany haseł. Niekoniecznie technicznych użytkowników, dodajmy.

Ważne jest to o tyle, że niektóre popularne polskie serwisy oferujące darmową (i nie tylko) pocztę były podatne. I to dość długo (nie wiem, czy nadal nie są). Jeśli atakujący uzyska dostęp do poczty, a używamy tej skrzynki do przypominania hasła w innych serwisach to zmiana w nich haseł nie rozwiązuje problemu.

Dodatkowo sprawdzanie podatności systemów było utrudnione. Popularny test sprawdzający podatność na atak z powodu obciążenia zgłaszał… false negatives. Czyli system był podatny, a narzędzie testujące twierdziło, że jest OK. I to w pewnym momencie, wg moich obserwacji, w jakichś 9x% prób… Problemu tego nie miało narzędzie CLI, ale dość szybko przestało ono być dostępne. Zapewne dlatego, że skutkiem ubocznym tego narzędzia był zrzut pamięci i dostęp do wrażliwych danych.

Na koniec mały paradoks. Systemy, w których logowanie było bez szyfrowania nie są podatne na dziurę (za to były i są podatne na podsłuchanie transmisji). Podobnie jak Debian Squeeze, czyli oldstable, któremu wkrótce skończy się support bezpieczeństwa. Użyta w nim wersja OpenSSL jest na tyle stara, że nie jest podatna.

Na razie status jest taki, że jest dostępna poprawka, załatana jest część systemów (wczoraj o ok. 17 było naprawdę sporo dziurawych). Widziałem tylko jedną firmę (polską), która poinformowała o błędzie użytkowników i zaleciła zmianę certyfikatów (ale już ani słowa o hasłach). Osobiście zalecam zwykłym użytkownikom w tej chwili zmianę ważniejszych haseł (zwł. pocztowych!) i obserwację sytuacji. Gdy opadnie kurz, tj. administratorzy załatają systemy i wymienią certyfikaty – ponowna zmiana haseł, tym razem wszystkich (ale naprawdę wszystkich wszystkich).

Błędowi poświęcona jest specjalna strona i tam odsyłam po szczegóły. Tak jeszcze patrzę na to, co napisałem parę lat temu i chyba tekst dane, niezależnie od tego jak zabezpieczane, nie są bezpieczne i prędzej czy później nastąpi ich ujawnienie łapie się na jakieś motto.

UPDATE: Ważna uwaga, o której zapomniałem. Jeśli aktualizujemy OpenSSL w systemie, to trzeba jeszcze zrestartować usługi. W Debianie można skorzystać z polecenia checkrestart (pakiet debian-goodies), ale na przynajmniej jednym systemie pokazywał, że nie ma nic do restartu, choć był apache i zabbix-server. Można zamiast tego użyć:

lsof -n | grep ssl | grep DEL

Linux – co warto seedować?

Jakiś czas temu postawiłem NAS w domu (jest zaległy szkic wpisu od… dawna, pewnie w końcu się zbiorę i go opublikuję). Łącze jest przyzwoite (2 Mbit uploadu) i słabo wykorzystane, a nie chciałem, żeby leżało odłogiem i postanowiłem wesprzeć projekty open source poprzez seedowanie plików.

Minęło jakieś półtora miesiąca od ostatniej zmiany plików, więc można pokusić się o jakieś wnioski. Plik/katalog i ratio:

tails-i386-0.22.1 - 15,0
debian-7.4.0-amd64-netinst.iso - 4,4
debian-7.4.0-amd64-CD-1.iso - 7,1
debian-7.4.0-i386-netinst.iso - 5,1
debian-7.4.0-i386-CD-1.iso - 7,8
debian-7.4.0-armel-netinst.iso - 1,6
debian-7.4.0-armel-CD-1.iso - 1,2

Jak widać, największym zainteresowaniem cieszy się opisywana kiedyś dystrybucja T(A)ILS, w przypadku Debiana zaskakuje niemal równa popularność architektur i386 oraz amd64 (liczyłem, że będzie duża przewaga amd64, przecież to niemal każdy współczesny procesor wspiera). IMO zupełnie nie warto seedować obrazów z architekturą armel.

Zdaję sobie sprawę, że lista jest mocno niekompletna, ale niestety nadal nie kupiłem docelowego dysku i miejsce mnie mocno ogranicza. Przy najbliższej wymianie plików wyleci armel, a pojawi się jakieś Ubuntu albo i Kali Linux.

UPDATE: Próbka jest na razie bardzo mała bo jakieś 4 dni, ale wygląda, że Kali Linux (architektura amd64, następca BackTrack, czyli dystrybucja Linuksa przeznaczona dla pentesterów) jest strzałem w dziesiątkę. Ratio 2,44, kolejny w kolejności ma 1,07…

UPDATE2: Zdecydowanie Kali Linux! Amd64 – ratio 37,3 , i386 – 25,9 w ciągu 4 tygodni.Tails – 5,01 w ciągu 2 tygodni, czyli po normalizacji czasu ratio ok. 10. Dość podobnie jak w krótkim okresie, jak widać.

Trawa jest bardziej zielona – ponownie.

Niektórzy to chyba się nigdy nie zmienią. Przeglądam stare wpisy o zmianie pracy i mam wrażenie, że nic się nie zmieniło, jeśli chodzi o moje podejście. Krótki opis sytuacji – jakieś dwa(? może nieco mniej, ale tak to odbieram; półtora roku przynajmniej) lata temu większość udziałów w obecnej firmie wykupiła inna firma. Wywołało to w owym czasie spore zamieszanie u nas, bo nikt nie wiedział, co będzie, jak będzie itd. Po jakimś czasie się sytuacja się ustabilizowała, wiele się nie zmieniło, wszyscy przeszli nad tym do porządku dziennego, praca toczyła się po staremu. Ale jakieś ziarno niepewności zostało.

Niedawno czynnie pojawiła się we władzach firmy osoba z firmy, która wykupiła większość udziałów. Kilka(naście) tygodni temu miła pani z HR przeprowadziła wywiady z ludźmi w firmie. Co kto robi, co mu się podoba, co nie, kompetencje. Taka prawie rozmowa rekrutacyjna. W sumie jedyną informacją jaką dostałem, było, że jak przejmują firmy to nie zwalniają raczej pracowników. Ale tyle to już zdążyłem wywnioskować. Dodając jeden do jeden wyszło mi, że koniec jest bliski (wbrew temu, co niektórzy pracownicy u nas twierdzili).

No i na początku grudnia dostałem oficjalną informację o wchłonięciu większej części obecnej firmy i propozycję bezproblemowego przejścia do firmy obok. Zmiana stanowiska, zmiana warunków pracy, z szansą na wyprostowanie pewnych upierdliwości, które tu od lat się nie zmieniły, a które z czasem stawały się coraz bardziej irytujące (głównie dyżury). Cóż, jak coś nie zmienia się od lat, to pewnie nie zmieni się nigdy… Wybór między niczym (bo nie dostaliśmy z firmy przejmującej żadnej informacji, jak widzą naszą pracę – stanowiska, warunki – po wchłonięciu) AKA czarną dziurą AKA chyba znowu zostanie po staremu, ale może coś się zmieni (pytanie czy na lepsze) a taką szansą był dość prosty. Została do załatwienia papierkologia i niefajny okres pracy poniekąd na dwa fronty.

Żałuję rozstania z dotychczasową ekipą, bo była naprawdę rewelacyjna i dająca radę z różnymi dziwnymi rzeczami (ilość R’n’D w pracy była zacna, nowości też, trochę szkoda, że nie do końca się to – z różnych względów – na wdrożenia produkcyjne przekładało). Ale nową ekipę znam i też wygląda OK (nie chwaląc dnia przed zachodem słońca). Zresztą ze starą ekipą mam nadzieję utrzymać kontakt, nie tylko zawodowy. Jak będzie, zobaczymy za kwartał, może pół roku. W każdym razie coś się kończy, coś zaczyna.

Zresztą, chyba coś dziwnego na rynku pracy się dzieje, bo prawda jest taka, że ostatnio (powiedzmy ostatni kwartał) wszyscy dookoła zmieniają pracę, a im bliżej końca roku, tym więcej ludzi zmienia. Poczynając od firm, z którymi współpracujemy, po znajomych z netu. Zresztą, właśnie niedawna rozmowa ze znajomym z netu zasiała spore wątpliwości co do sensu dotychczasowej sytuacji. Więc tak czy inaczej do końca stycznia (no, może do końca lutego) musiało się coś zmienić…

I tyle zamiast podsumowania roku 2011 (ten wpis nie miał być w żaden sposób podsumowaniem roku), który był rokiem bardzo mieszanym – trochę plusów, trochę minusów. Jak zwykle. Generalnie nie oceniam go źle.