Heartbleed

desno|thumb|Simbol Heartbleeda
**Heartbleed** je *bug* (greška) u izvornom kodu OpenSSL biblioteke koji je zbog rasprostranjenja imao posljedice za veliki dio interneta. U 2014. su mnogi svjetski mediji objavljivali o tome.

## Opis 
mini|Šema napada preko Hearthbleed buga
Greška je nastala tokom implementacije Heartbreak dodatka, koji osigurava prijenos informacija na nivou TLS i DTLS. Heartbreak je predviđen da korisnik A šalje korisniku B dodatne pakete veličine 16 kB (*payload* i *padding*), koje se vraćaju nazad. Na taj način se ispituje postojeća veza sa serverom.
Kod implementacije Heartbreaka nije predviđena kontrola veličine paketa, time je moguće da potencijalni napadač predstavljajući se kao korisnik A, šalje pakete i od 64 kB. Druga strana (korisnik B) vraća pakete iste veličine.

Ovaj postupak napadač može više puta zaredom uraditi. Testovi su potvrdili da se na taj način mogu učitati osim privatnog ključa X.509 za serverski certifikat, korisničko ime i lozinka za server.

## Nastanak 
Izvorni kod sa OpenSSL bugom unesen je 31. decembra 2011. od strane jedinog saradnika u timu OpenSSL fondacije. Ova verzija objavljena je pod brojem 1.0.1 i dostupljena 14. marta 2012. Prije toga je na njemačkom fakultetu u Münsteru jedan student napravio izmjene u izvornom kodu u okviru svoje disertacije. Tema je bila SCTP (Stream Control Transmission Protocol), izmijenjeni kod sa Heartbreak dodatkom predao je po završetku OpenSSL organizaciji.

Student je imao pomoć dvojice saradnika prilikom specifikacije prema RFC 6520. Kada je student branio svoju dizertaciju, izmjenu dizajna je obrazložio tim da će biti poboljšana zaštita od kriptoanalitičkih napada tzv. ubačenog teksta (en. Known-Plaintext).

## Otkriće 
Na dan 7. aprila 2014. OpenSSL fondacija izdala je upozorenje da bi verzije 1.0.1 do 1.0.1f, kao i 1.0.2 beta do 1.0.2 beta1 mogle sadržavati Hearthbleed grešku. Moguće je kompilirati OpenSSL i bez Heartbreake varijante čime ona postaje imuna za Hearthbleed. Ovaj sigurnosni propust je ostao neprimjećen ukupno 27 mjeseci, sve dok Antii Karjalainen (Coednomicon, Oulu, Finska) i Neel Mehta (Google Security), nezavisno jedan od drugog, nisu otkrili i uspješno otklonili grešku.

## Posljedice 
Pored kompromitacije korisničkog imena i lozinke za server, moguće je naknadno dešifrirati s privatnim ključem i cjelokupni prijašnji prenos podataka. Izuzetak su oni podaci koji su zaštićeni pomoću Perfect Forward Secrecy. Uz to je moguće s kompromitovanom serverskim certifikatom izvršiti kriptoanalitički napad "čovjek u sredini" (en.Man-in-the-middle). Ovaj bug se smatra da je obuhvatio pretežno email korisnike kao i chat stranice. To važi samo za one servere koji koriste dotičnu verziju OpenSSL-a. SSH se smatra sigurnim pošto ne koristi TLS. Do sada je obuhvaćeno oko 500.000 web stranica. Zbog mnoštva obuhvaćenih sistema, i sami komercijani proizvođači certifikata stajali su u aprilu 2014. pred velikim izazovom. Kriptolog i stručnjak za sigurnost interneta Bruce Schneier dao je, tim povodom, sljedeći komentar:

*Katastrofalno je prava riječ. Na skali od 1 do 10 to je 11* (eng. *Catastrophic is the right word. On the scale of 1 to 10, this is an 11*)

Theo de Raadt dizajner za OpenBSD i OpenSSH nazvao je "neodgovornim" postupak OpenSSL tima, zbog toga što su stavili brzinu objavljivanja nove verzije važnijim od kontrole vitalnih sigurnosnih funkcija. Konkretno se radilo o tome da se za OpenSSL koriste funkcije *malloc* i *free*  čime se zaobilaze mogući zaštitni mehanizmi operativnog sistema. OpenSSL fondacija je izjavila da su njihovi resursi ograničeni i da se ne radi o problemu vodećih struktura, tim povodom su zatražili veću finansijsku pomoć. Linux fondacija je pokrenula inicijativu *Core Infrastructure Initiative* kojoj su se priključile poznate kompanije. Navodno su Amazon, Cisco, Dell, Facebook, Fujitsu, Google, IBM, Intel, Microsoft i još neki drugi spremni donirati milione dolara koji bi se utrošili za OpenSSL kao i druge projekte. OpenSSL fondacija, bi prema prvim informacijama, imala na raspolaganju oko 100.000 dolara godišnje.

Eventualna kompromitacija ne ostavlja tragove na dotičnom sistemu, pa nije moguće ustanoviti da li je ovaj sigurnosni proboj ranije već upotrebljavan. Postoje indicije za određene događaje u novembru 2013. Informativna agencija Bloomberg objavila je o "dvije informisane osobe", prema kojime je Heartbleed masivno upotrebljavan od strane NSA, što je od strane NSA odmah demantovano. Michael Daniel, glasnogovornik NSA je na zvaničnom blogu Bijele kuće izjavio da se proboji upotrebljavaju u određenim slučajevima ali samo za "sprečavanje terorističkih napada". U tom slučaju NSA i ne objavljuje eventualno otkrivene bugove.

U okviru povlačenja problematičnih certifikata,(CRL i OCSP) nisu postojale mogućnosti da se isti podrobno ispitaju.

## Razno 
* Kod kanadske porezne uprave zapažena je krađa oko 900 identifikacionih brojeva za socijalno osiguranje, i to samo u roku od 6 sati.
* Cisco Systems je objavio da su pojedini modeli IP telefona obuhvaćeni Heartbleed problematikom.
* Operativni sistem Android s verzijom 4.1.1, dostupnoj u aprilu 2014, nije obuhvaćen HeartBleedom.
* Postojeće osvježavanje firmwarea dovelo je do potpunog zakazivanja NAS marke Synology.

## Također pogledajte 
* RSA
* Enigma
* Kriptoanaliza
* NSA afera

## Vanjski linkovi 
* Zvanična stranica od Codenomicon Ltd., na kojoj je otrkiće HeartBleeda objavljeno  18.4.2014. 
* *Golem.de*: Fragen und Antworten zu Heartbleed 18.4.2014. 
* Funkcija HeartBleed eksploita 18.4.2014. 
* Štete nastale HeartBleedom, ove lozinke moraju se odmah izmijeniti. Spisak dotičnih veb stranica i mejl provajdera 18.4.2014. 
* Kako ispitati da li je neka stranica ranjiva i da li je certifikat promijenjen? 24.4.2014. 

## Reference 
Kategorija:Programiranje
Kategorija:Događaji 2014