0:30
10/4/2014

Przedwczoraj jako jedni z pierwszych w Polsce zwróciliśmy uwagę na atak Heartbleed na OpenSSL. Przypomnijmy, że dzięki niemu atakujący może pozyskać dane, które znajdują się w pamięci serwera — wystarczy, że wyśle do niego odpowiednio spreparowane żądanie. Już wczoraj pojawiły się pierwsze narzędzia, które umożliwiają przeprowadzenie ataku nawet gimnazjalistom z IQ na poziomie temperatury pokojowej. Poniżej prezentujemy ich przegląd oraz listę serwisów, z których na skutek Heartbleeda wyciekły lub dalej wyciekają dane. A wam radzimy, jeśli wczoraj logowaliście się na jakiś serwer po HTTPS, aby profilaktycznie zmienić w nim swoje hasło.

Heartbleed, czyli serwery krwawią danymi

Na początku zaznaczmy, że tak poważna i “szeroka” podatności dawno nie miała miejsca w internecie. Od przedwczoraj obserwowaliśmy setki serwerów, z których pamięci wyciekają loginy, hasła, e-maile, klucze SSL, ciasteczka sesyjne i inne dane. Atak jest banalny do przeprowadzenia (kilkanaście narzędzi jest już gotowych do użycia) …wystarczy wybrać niezapatchowany jeszcze serwer i …czekać. Tu warto nadmienić, że na atak podatne są nie tylko webserwery, ale również serwery poztowe (STARTLS) oraz bramki SSL VPN.

Robert przeskanował internet pod kątem serwerów wspierających SSL. Odnalazł 28 581 134 hostów — tylko 615 268 było podatnych na atak HeartBleed. Dodatkowe 330 531 serwerów wspierało mechanizm heartbeat w SSL, ale nie było podatnych na ataki (były to zapewne maszyny już załatane). Dostępna jest też specjalna lista TOP 1000 stron internetowych wraz z informacją, czy są one podatne na atak Hartbleed

Poniżej przykład wycieku danych z serwera Nasgo, wirtualnej giełdy:

Heartbleed w akcji

Heartbleed w akcji, fot. antek

O ile popularniejsze polskie serwisy internetowe należy pochwalić za szybką reakcję, czyli wgranie łatki, to z naszych obserwacji wynika, że chyba wszystkie z nich zakładają, że nikomu nie udało się przeprowadzić na ich infrastrukturę udanego ataku — żadna bowiem znana nam firma nie wymusiła zmiany haseł wśród swoich użytkowników, ani nie unieważniła swojego certyfikatu SSL. A właśnie tego typu działania to w przypadku takiej luki prawidłowa, choć przyznajemy, że nieco paranoiczna reakcja — nie można bowiem zakładać, że ktoś nie wykorzystał obecnego przecież od 2 lat błędu — a tym bardziej, że nie wykorzystał go tuż po jej upublicznieniu, tj. w nocy z poniedziałku na wtorek, zwłaszcza, że sam atak Heartbleed nie pozostawia żadnych śladów w logach serwera…

Dla bezpieczeństwa, jeśli ktoś do poniedziałku korzystał z podatnej na atak wersji OpenSSL-a (1.0.1 do “f”) i wspierał mechanizm heartbeat, to powinien założyć, że pewne jego dane mogły wyciec. Prawda jest taka, że nie może mieć 100% pewności iż nie padł ofiarą.

Weź sprawy w swoje ręce

Na szczęście nie zawsze atakujący ma możliwość przechwycić klucz prywatny do certyfikatu (który umożliwia długofalowy podsłuch ruchu do serwera lub/i wykradanie ciastek prowadzące do przejmowania kont). Miejcie więc nadzieję, że tak się stało w serwisach z których wczoraj korzystaliście — że atakujący nie uzyskał klucza, a jedynie zapoznał się np. z kilkoma hasłami. I nawet jeśli ich właściciele nie podjęli żadnych kroków zmierzających do resetu haseł, to sami zadbajcie o swoje bezpieczeństwo i na wszelki wypadek po prostu zmieńcie hasło, bo chociaż prawdopodobieństwo tego, że akurat wasze hasło wyciekło są niewielkie, to mimo wszystko jest niezerowe ;)

Heartbleed i spektakularne wpadki znanych marek

Tuż po publikacji informacji o ataku, można było wykradać dane z pamięci serwerów Amazonu AWS ELB oraz Cloudfront SSL, na szczęście szybko je zaktualizowano. Tego problemu nie mieli korzystający z Cloudflare — firma pochwaliła się, że o błędzie dowiedziała się wcześniej i mogła za wczasu zaktualizować swoją infrastrukturę.

Przez długi czas podatne na atak były serwery Yahoo:

Heartbleed Yahoo

Heartbleed wycelowany w Yahoo

Ktoś wykorzystał też podatność na serwerach Steama i podmienił konto jednego z partnerów na komunikat z prośbą o załatanie serwera “bo Heartbleed” :-)

Heartbleed na Steamie - nieautoryzowany dostęp uzyskany przez ...Heartbleed

Heartbleed na Steamie – nieautoryzowany dostęp uzyskany przez …Heartbleed

Kanadyjska skarbówka z powodu Heartbleed zablokowała możliwość rozliczeń przez internet i anulowała kary za opóźnienie złożenia zeznania.

W Polsce udało nam się namierzyć pewien znany serwis kierowany do studentów, z którego wyciekły dane powiązane z phpMyAdminem:

HeartBleed i hasło do MyPhpAdmina

HeartBleed i phpMyAdmin

Ale jeszcze większą wtopą był aż 6 dniowy brak aktualizacji serwerów firm mPay.pl / Cardmobile.pl pozwalających korzystać z kart kredytowych przez internet. Z serwisu wyciekały dane osobowe oraz numery dodawanych kart kredytowych.

wyciek danych karty dodawanej do serwisu

wyciek danych karty dodawanej do serwisu, fot. DOgi

Czy jestem podatny na atak Heartbleed?

Na koniec przypomnijmy narzędzia, przy pomocy których można zweryfikować, czy podatność występuje na naszym serwerze:

Najsensowniej wygląda http://possible.lv/tools/hb/, które ostrzega nie tylko przed tym, czy nasza konfiguracja OpenSSL-a wspiera mechanizm heartbeatów, ale czy jest on podatny na atak, oraz czy certyfikat SSL-owy ma datę sprzed ukazania się patcha (co oznacza, że jeśli ktoś wykorzystał dziurę na tym serwerze przed jego załataniem, to certyfikat należy uznać za “skompromitowany”).

Heartbleed OpenSSL

Heartbleed OpenSSL

Jest też http://rehmann.co/projects/heartbeat/ oraz wspomniany już w naszym poprzednim artykule http://filippo.io/Heartbleed/.

A także szereg skryptów: heartbleeder.py lub hb-test.py oraz ssltest-stls.py

I dodatków do przeglądarek — zarówno Firefoksa jak i Google Chrome — automatycznie pokazują one, czy oglądana strona jest podatna na atak:

chrome

Wyszedł też już specjalny Heartbleedowy moduł do metasploita, automatyzujący atak:

heartbleed-remote-example

…i na sam koniec, reguły dla iptables, które blokują atak na systemach, których z jakiegoś powodu nie można zaktualizować (plus reguły logujące próby ataku — a tych jest coraz więcej w ostatnich godzinach ;)

# Log rules
iptables -t filter -A INPUT -p tcp --dport 443 -m u32 --u32 \
"52=0x18030000:0x1803FFFF" -j LOG --log-prefix "BLOCKED: HEARTBEAT"

# Block rules
iptables -t filter -A INPUT -p tcp --dport 443 -m u32 --u32 \
"52=0x18030000:0x1803FFFF" -j DROP

# Wireshark rules
$ tshark -i interface port 443 -R 'frame[68:1] == 18'
$ tshark -i interface port 443 -R 'ssl.record.content_type == 24'

Oraz próbka nagrania ataku do wytresowania Waszych IPS/IDS-ów lub wprost — reguła do Snorta.

PS. Pamiętajcie także, że atak Heartbleed dotyczy również wycieku pamięci z klienta (nie tylko serwera!) — a więc wejście na “złośliwą” stronę WWW może skończyć się wykradzeniem przez nią danych z pamięci Waszego komputera.


Przeczytaj także:



61 komentarzy

Dodaj komentarz
    • Komentarze przeczytaj moze najpierw:

      I think this post is completely mistaken. The two length fields in a TLS heartbeat request are the length of the TLS record, and the length of the payload that the requestor wants echoed back in the response. The bug occurs when the (claimed) payload length is longer than the record length. It seems to be your impression that if the attacker sets a payload length of 65535 bytes but only sends 1 byte of actual payload, then OpenSSL will allocate a 65535 bytes, copy 1 byte, and leave the rest of the destination buffer uninitialized. That’s not the case. It will allocate 65535 bytes and copy 65535 bytes, therefore reading off the end of the source buffer into whatever comes next on the heap. There’s no guarantee whatsoever as to whether or not what comes next on the heap is leftover freed data.

      wiec jesli tam bedzie pkey to go dostaniesz.

    • O, dzięki, inaczej bym dalej powtarzał głupoty.

    • “…That this happens during connection negotiation – which is why it’s available to an unauthenticated attacker. Williams also noted that the risk that the vulnerability could reveal site certificates means that if an attacker – or a spook – has previously recorded encrypted sessions, they will now be able to decrypt that traffic…”

      http://www.theregister.co.uk/2014/04/10/many_clientside_vulns_in_heartbleed_says_sans

  1. Serce mi krwawi jak pomyślę ile wannabe h4xorów ruszyło do ściągania skryptów i testowania ich w praktyce. Żadnej inwencji twórczej…

    • Nie wannabe h4xorów, a script kiddies – to określenie jest bardziej znane i adekwatne do takich osób.

  2. Koledzy z niebezpiecznika, a możecie wypowidzieć się o (nie)bezpieczeństwie związanym z SSH i z tym bugiem, patrzecie na to:

    ==> messages syslog messages (ssl,ssh-connection) [preauth]

  3. (proszę scalić tego posta)
    ==> messages syslog messages (ssl,ssh-connection) [preauth]

  4. http://pastebin.com/SckBfygC

  5. ” Dostępna jest też specjalna lista TOP 1000 stron internetowych wraz z informacją, czy są one podatne na atak H[e]artbleed”

    TOP 1000? Ciekawe skąd autor wziął listę skoro nawet wiocha.pl tam jest. ;-)

  6. Apropos testowania w poszukiwaniu podatnosci na serwerach – https://www.ssllabs.com/ dodalo w swoim tescie SSL https://www.ssllabs.com/ssltest/index.html eksperymentalnie (na chwile obecna) test heartbleed.

    Pozdrawiam.

    Andrzej

  7. “Pamiętajcie także, że atak Heartbleed dotyczy również wycieku pamięci z klienta”
    nie dotyczy windowsa, mogliście dodać, tak ucinając przyszłe wątpliwości

    • Dotyczy, jeśli klient używa OpenSSL. Co rzadkością nie jest

  8. Może lamerskie pytanie. A jak jest z openvpn? Używa bibliotek openssl?

    • Wczoraj pojawiła się wersja 2.3.3 – aktualizuj!

    • Tak, uzywa OpenSSLa który jest w systemie. Sprawdzamy przez
      openssl version
      Jeżeli chodzi o klienta, to najnowszy (pod windows) ze strony (2.3.2) uzywa OpenSSL 1.0.1f czyli vulnerable…

    • Informacja o OpenVPNie: https://community.openvpn.net/openvpn/wiki/heartbleed

  9. Serce mi krwawi jak widzę takie rzeczy…

  10. Czemu zastanawia mnie ile osób zalogowało się na konto xumuk z pierwszego screena?

    • Też zalogowałem się na to konto i to przy pierwszej próbie. Teraz dzięki niebezpiecznikowi jestem przestępcą. Publikowanie takich danych jest nieodpowiedzialne, chyba nikt z redakcji ich nawet nie przejrzał.

    • golem – przekazaliśmy twój adres IP milicji.

  11. powyższe reguły iptables, nie blokują, a ograniczają skalę ataku, jeśli ktoś będzie mocno chciał, to u32 da się obejść, dodatkowo lepszą praktyką jest limitowanie logowania w iptables, aby nie wywołać sobie self DoS’a

  12. “nawet gimnazjalistom z IQ na poziomie temperatury pokojowe” to określenie jest wręcz idealne :d

  13. “ale również serwery poztowe (STARTLS)” powinno być STARTTLS ;-)

  14. Heh, wczoraj i dzisiaj po jednym ataku na STMP i IMAP. Skąd wiem? Bo mam starą wersję biblioteki bez wsparcia dla heartbeat. Wywaliło śliczne błędy do sysloga. Oba ataki z chińskiej sieci. Duch Mao czuwa!

    Czasami lenistwo (brak upgrade’u do wheezy) popłaca :-)

    • tak, też to wczoraj widziałem, na szczęście po upgradzie openssl przegenerowałem wszystkie certyfikaty [self-signed :-(]. Na szczęście po tym doznałem napadu (pewnie chińskiego) na moje SMTP/IMAP.

  15. U mnie test strony zatrzymuje się na informacji:
    TLS extension 15 (heartbeat) seems disabled, so your server is probably unaffected.
    I nie podaje nic więcej.

  16. Ciekawe kto upublicznił ten błąd i przez to zalazł za skórę NSA utrudniając im pracę. Nazwisko proszę.

  17. Yahoo,Outlook i Gmail hasła i weryfikacja dwuetapowa jest bezpieczna?

    • Outlook.com nie używa openssl. Google i Yahoo były podatne.

  18. ciekawa sprawa, że tylko Cloudflare wiedział wcześniej i zabezpieczył serwery tydzień przed upublicznieniem informacji o bugu

  19. […] Nie będę tłumaczył o co dokładnie chodzi z Heartbleed, bo specjaliści już to zrobili, chociażby na łamach Niebezpiecznika… […]

  20. czyli co mamy wszystkie hasła na wszystkich stronach zmieniać…? do poczty onetowej np?

  21. Sundcloud wyświetla komunikaty o zmianie hasła w związku z tym błędem. http://blog.soundcloud.com/2014/04/09/heartbleed/

  22. Sporym problemem jest to, że niektórzy robią tylko coś w rodzaju apt-get install openssl i myślą, że jest po temacie, a usługa pozostaje dalej dziurawa…

    • Słuszna uwaga, czasem trzeba jeszcze upgrejdnąć  libssl-dev – pozdrowienia dla Debianowców ;)

    • raczej chodziło o windowsowy zabieg, czyli “uruchomić ponownie…” usługi

    • Dokładnie to chodziło o jedno i o drugie. :) Czyli zarówno o konieczność aktualizacji libssl, jak i restart stosownych usług.

  23. […] mija 3 dzień od upublicznienia jednej z poważniejszych dziur dotyczących serwerów WWW, serwerów poczty i serwerów VPN, które bazują na OpenSSL. Warto jednak podkreślić, że atak […]

  24. Co jeśli administrator zaktualizował/załatał OpenSSL ale nie zaktualizował swoich SSL Certificate ?

    https://lastpass.com/heartbleed/?h=dropbox.com

    WARNING: dropbox.com was confirmed as vulnerable either publicly via statement or on 4/8/2014 LINK

    Site: dropbox.com
    Server software: nginx
    Vulnerable: Definitely (known use OpenSSL)
    SSL Certificate: Unsafe (created 10 months ago at Jun 18 07:00:37 2013 GMT)
    Assessment: Wait for the site to update before changing your password

    Na Twitterze parę osób zadało pytanie kiedy Dropbox uaktualni swoje SSL Certificate jednak pytanie pozostaje bez odpowiedzi

    Google niestety również nie uaktualnił swoich certyfikatów, a co zrobiło np. Yahoo . Zrobił to nawet Microsoft, chociaż on nie był podatny na atak HeartBleed.

    Czy w takim razie zmiana hasła ma jakikolwiek sens jeśli dana strona posiada certyfikaty utworzone wcześniej jak 07.04.2014 ?

    Może mi ktoś to objaśnić ?

  25. :) pocztę na onecie też lepiej omijać :)

    https://lastpass.com/heartbleed/?h=konto.onet.pl

  26. Cześć!

    Strona testująca:
    http://filippo.io/Heartbleed/
    oraz Chromebleed checker (dodatek do chrome)
    są niewiarygodne – testowałem na podatnych stronach i oba się myliły (a nawet nie potrafiły odpowiadać deterministycznie).

    • Widzę, że:
      http://filippo.io/Heartbleed/
      nadal CERT Polska reklamuje…

      Niewiarygodny! Wystarczy podać podatny na Heartbleed URL, wcisnąć kilkakrotnie “Go!” i w końcu otrzymamy zapewnienie, że wszystko z nim OK.
      To zachowanie jest częste i powtarzalne – zatem informacja jest bezwartościowa.

    • Tester:

      http://filippo.io/Heartbleed/

      już poprawiony, o czym wydawca poinformował na stronie.
      Moje testy to potwierdzają.

  27. A czy podatny na atak jest rowniez ING?

  28. Szanowny Panie,

    informuję, że strona ING Banku Śląskiego jest w pełni zabezpieczona certyfikatem SSL/TLS i nie jest podatna na atak heartbleed.

    W przypadku dodatkowych zapytań, zachęcam do ponownego wysłania wiadomości lub kontakt z infolinią pod numerem 32 357 00 10/801 601 607.

    • Rozumiem, że to cytat?

      To prawda, ING w tej chwili nie jest podatny.
      Nawet zadbali o nowy certyfikat, więc spokojnie można (należy) zmienić hasła!

    • Nie jest czy nigdy nie była? Certyfikat jest niezmieniony.

    • Gdzie niby zmienili ten certyfikat? Bo na https://online.ingbank.pl/ ciągle jest wystawiony 14.08.2012

    • No dobra, widzę, że na głównej zmienili. Szkoda tylko, że do bankowości online nie.

  29. […] sprawdzić podatność na atak naszego serwera. Kilka z nich polecanych jest przez Niebezpiecznik. Sprawdzamy […]

  30. Czegoś nie rozumiem
    Ubuntu w wersjach 10-14 zawiera OpenSSL 1.0.1 – 1.0.1f
    Mimo to testowanie różnymi narzędziami witryn SSL na występowanie dziury – wykazuje, że dziury nie ma…

    Dwa – są jakieś narzędzia do sprawdzenia innych usług z SSL?
    – SMTPS,
    – SSTP,
    – OpenVPN ?

  31. Sam sobie odpowiem … Ubuntu 7 kwietnia opublikowało poprawki do systemów

    http://www.ubuntu.com/usn/usn-2165-1/

    Ubuntu 13.10:
    libssl1.0.0 1.0.1e-3ubuntu1.2
    Ubuntu 12.10:
    libssl1.0.0 1.0.1c-3ubuntu2.7
    Ubuntu 12.04 LTS:
    libssl1.0.0 1.0.1-4ubuntu5.12

    Jako iż u mnie Ubuntu same wgrywają krytyczne poprawki to system “sam się załatał” :)

  32. Najciemniej pod latarnią
    http://possible.lv/tools/hb/?domain=assecobs.pl

  33. […] na jego końcu obiecuję wstawić skoczną piosenkę). Pisaliśmy już co prawda zarówno o tym na czym polega atak Heartbleed, jak się przed nim ochronić …oraz uczulaliśmy was na to, że Heartbleed pozwala wykradać […]

  34. ADF.LY prosi o zmianę haseł:
    “Due to the recent ‘HeartBleed’ OpenSSL vulnerability (http://www.heartbleed.com) we have reset the passwords on all AdFly accounts that have logged in between 12:00 7th April 2014 and 12:00 9th April 2014 GMT.

    This is a security precaution.

    Please use this Lost Password (http://adf.ly/lostpass) form to reset your password to something unique and not used elsewhere on the Internet.

    If you have any questions or concerns, please do not hesitate to contact us:

    http://adf.ly/contact

    JOLLA usunęła lukę w najnowszej aktualizacji Sailfish OS (Update 5) http://www.jollausers.com/2014/04/4112014-sailfish-os-update-5-is-out-brings-mms-and-more/

  35. A mnie zastanawia inna rzecz, w odniesieniu do tych ‘dużych’ – czy oni używają w ogóle tego rozszerzenia? Bo jeżeli nie, to zarówno względy wydajnościowe (zabawa a’la ricer) jak i bezpieczeństwa (jak na załączonym obrazku) nakazują wyłączanie zbędnych funkcji na etapie kompilacji. To powinien obejmować kontrakt na dostawę i utrzymanie oprogramowania, a w firmach IT być obowiązkiem zespołu bezpieczenstwa czy administratorów.
    To chyba znak czasów, że analiza wymagań i optymalizacja są droższe, niż dołożenie kolejnej szafy serwerów – pozostaje samo bezpieczeństwo, ale tym się przejmują zawczasu jedynie paranoicy.

  36. […] TVN24 BIS donosi o aresztowaniu 19-latka za wykradnięcie danych kanadyjskich podatników — serwery ichniejszego fiskusa były podatne na Heartbleed. […]

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.

RSS dla komentarzy: