b'\n_START_ARTICLE_\nHeartbleed\n_START_PARAGRAPH_\nHeartbleed \xc3\xa8 un bug di sicurezza nella libreria di crittografia OpenSSL, che \xc3\xa8 un\xe2\x80\x99implementazione ampiamente usata del protocollo TLS (Transport Layer Security). \xc3\x88 stato introdotto nel software nel 2012 e aperto al pubblico nell\xe2\x80\x99aprile 2014. Heartbleed potrebbe essere sfruttato indipendentemente dal fatto che l\xe2\x80\x99istanza OpenSSL stia girando come server o client TLS. \xc3\x88 il risultato di una validazione input impropria (data dalla mancanza di controllo dei limiti) nell\xe2\x80\x99implementazione dell\xe2\x80\x99estensione heartbeat del protocollo TLS, da qui il nome del bug. La vulnerabilit\xc3\xa0 \xc3\xa8 classificata come un over-read del buffer, una situazione in cui vengono letti pi\xc3\xb9 dati di quelli che dovrebbero essere ammissibili._NEWLINE_Heartbleed \xc3\xa8 registrato nel database Common Vulnerabilities and Exposures come CVE-2014-0160. Il Canadian Cyber Incident Response Centre ha rilasciato un comunicato sulla sicurezza avvisando gli amministratori di sistema riguardo al bug. Una versione corretta di OpenSSL \xc3\xa8 stata rilasciata nel 7 aprile 2014, nello stesso giorno in cui Heartbleed \xc3\xa8 stato reso noto al pubblico._NEWLINE_Al 20 maggio 2014, l\xe2\x80\x991,5% degli 800,000 siti pi\xc3\xb9 popolari con il protocollo TLS attivo erano ancora vulnerabili all\xe2\x80\x99Heartbleed._NEWLINE_Altre implementazione del TLS oltre OpenSSL, come GnuTLS, Network Security Service di Mozilla, e le piattaforme di implementazione di TLS di Windows, non sono mai state affette dal bug perch\xc3\xa9 il difetto \xc3\xa8 esistito solo nell\xe2\x80\x99implementazione TLS di OpenSSL pi\xc3\xb9 che nel protocollo in s\xc3\xa9 per s\xc3\xa9.\n_START_SECTION_\nStoria\n_START_PARAGRAPH_\nL\xe2\x80\x99estensione Heartbeat per i protocolli Transport Layer Security (TLS) e Datagram Transport Layer Security (DTLS) venne proposta come standard nel febbraio 2012 da RFC 6520. Offre un modo per testare e tenere vivi connessioni di comunicazione sicure senza il bisogno di rinegoziare la connessione ogni volta. Nel 2011, uno degli autori di RFC, Robin Seggelmann, poi uno studente di un dottorato di ricerca della Fachhochschule M\xc3\xbcnster, implementarono l\xe2\x80\x99estensione Heartbeat per OpenSSL. Successivamente Seggelmann richiese di mettere i risultati del suo lavoro in OpenSSL e i suoi cambiamenti furono revisionati da Stephen N. Henson, uno dei quattro sviluppatori principali di OpenSSL. Henson non not\xc3\xb2 il bug nell\xe2\x80\x99implementazione di Seggelmann e introdusse il codice imperfetto nel repository del codice sorgente di OpenSSL nel 31 dicembre 2011. Il difetto si sparse con il rilascio della versione 1.0.1 di OpenSSL nel 14 marzo 2012. Il supporto a Heartbeat era abilitato di default, lasciando vulnerabili le versioni affette.\n_START_SECTION_\nScoperta\n_START_PARAGRAPH_\nIn accordo a Mark J. Cox di OpenSSL, Neel Mehta del team di sicurezza di Google segnal\xc3\xb2 segretamente Heartbleed nel 1 aprile 2014 alle 11:09 UTC._NEWLINE_Il bug fu nominato da un ingegnere al Codenomicon, una compagnia di cybersecurity finlandese che cre\xc3\xb2 anche il logo con un cuore che sanguina e fond\xc3\xb2 il dominio heartbleed.com per spiegare il bug al pubblico. Mentre il team di sicurezza segnal\xc3\xb2 per primo Heartbleed a OpenSSL, sia Google che Codenomicon lo scoprirono indipendentemente nello stesso momento circa. Codenomicon segnala il 3 aprile 2014 come la loro data di scoperta e di notifica alla National Cyber Security Center in Finlandia (NCSC-FI) per il coordinamento delle vulnerabilit\xc3\xa0._NEWLINE__NEWLINE_Nel momento della rivelazione, qualcosa come il 17% (circa mezzo milione) dei web server sicuri in internet, certificati dalle Certification Authority diventarono vulnerabili agli attacchi, permettendo il furto delle chiavi private dei server e i cookie di sessioni e le password degli utenti. Electronic Frontier Foundation, Ars Technica  e Bruce Schneier ritennero il bug Heartbleed catastrofico. Il colonnista della cybersecurity Joseph Steinberg di Forbes scrisse:_NEWLINE_Alcuni potrebbero pensare che Heartbleed sia la peggior vulnerabilit\xc3\xa0 mai esistita (almeno in termini del suo potenziale impatto) da quando il traffico commerciale inizi\xc3\xb2 a scorrere in internet._NEWLINE_Un portavoce del Gabinetto Britannico raccomand\xc3\xb2 che:_NEWLINE_Le persone dovrebbero prendere nota di cambiare le password dei siti che usano._NEWLINE_La maggior parte dei siti hanno corretto il bug e sono nella posizione migliore per consigliare quale azione, se necessario, le persone devono prendere._NEWLINE_Nel giorno della rivelazione il Progetto Tor consigli\xc3\xb2:_NEWLINE_Se si necessita di una forte anonimit\xc3\xa0 o privacy in Internet, si potrebbe voler stare distanti da Internet per i prossimi giorni, finch\xc3\xa9 le cose si sistemano._NEWLINE_The Sydney Morning Herald pubblic\xc3\xb2 una timeline della scoperta il 15 aprile 2014, mostrando che alcune organizzazioni erano state in grado di sistemare il bug prima dell\xe2\x80\x99annuncio pubblico. In alcuni casi, non \xc3\xa8 chiaro come l\xe2\x80\x99abbiano scoperto.\n_START_SECTION_\nBugfix e implementazione\n_START_PARAGRAPH_\nBodo Moeller e Adam Langley di google prepararono il fix per Heartbleed. La patch risultante fu aggiunta all\xe2\x80\x99issue tracker di Red Hat nel 21 marzo 2014. Stephen N. Henson apllic\xc3\xb2 la patch al sistema di controllo versioni di OpenSSL il 7 aprile di quell\xe2\x80\x99anno. La prima versione corretta, 1.0.1g, fu rilasciata lo stesso giorno. Nel 21 giugno 2014, 309,197 web server pubblici erano ancora vulnerabili.\n_START_SECTION_\nRinnovo dei certificati e revoche\n_START_PARAGRAPH_\nIn accordo a Netcraft, circa 30,000 dei 500,000+ certificati X.509 che potevano essere compromessi a causa di Heartbleed furono ripubblicati nuovamente nel 11 aprile 2014, bench\xc3\xa9 alcuni furono revocati._NEWLINE__NEWLINE_Per il 9 marzo 2014 solo il 43% dei siti web affetti avevano ripubblicato i loro certificati; in pi\xc3\xb9, il 7% dei certificati di sicurezza ripubblicati usavano ancora le chiavi che potenzialmente potevano essere compromesse. Netcraft comment\xc3\xb2:_NEWLINE_Con il riuso delle stesse chiavi private, un sito che era affetto dal bug Heartbleed continua a correre lo stesso rischio di quelli che non hanno ancora rimpiazzato i loro certificati SSL._NEWLINE_eWeek disse:_NEWLINE_[Hearbleed \xc3\xa8] probabilmente un rischio che rimarr\xc3\xa0 ancora per mesi, se non per anni.\n_START_SECTION_\nExploitation\n_START_PARAGRAPH_\nIl Canada Revenue Agency segnal\xc3\xb2 un furto di Social Insurance Numbers appartenenti a 900 contribuenti, e disse che fu possibile sfruttando il bug durante un periodo di 6 ore l\xe2\x80\x998 aprile 2014. Dopo la scoperta, l\xe2\x80\x99agenzia chiuse il suo sito ed estese il termine di presentazione dei contribuenti dal 30 aprile al 5 maggio. L\xe2\x80\x99agenzia disse che avrebbe fornito un servizio di protezione del credito gratuitamente agli affetti dal furto. Il 16 aprile RCMP annunci\xc3\xb2 che avevano accusato uno studente di ingegneria informatica in relazione al furto con uso non autorizzato di un computer e malizia in relazione ai dati._NEWLINE_Il sito genitoriale britannico Mumsnet ebbe molti account utente dirottati e il suo CEO fu impersonato da un utente maligno. Il sito, pi\xc3\xb9 tardi, pubblic\xc3\xb2 una spiegazione dell\xe2\x80\x99incidente dicendo che fu causato da Heartbleed e che fu prontamente sistemato dallo staff tecnico._NEWLINE_Ricercatori anti-malware utilizzarono anch\xe2\x80\x99essi Heartbleed in loro vantaggio per accedere a forum segreti usati da cybercriminali. Furono inoltre condotti studi utilizzando macchine deliberatamente vulnerabili. Ad esempio, il 12 aprile 2014, almeno due ricercatori indipendenti riuscirono a rubare chiavi private da un server sperimentale creato appositamente da CloudFlare. Successivamente il professor J. Alex Halderman dell\xe2\x80\x99University of Michigan, il 15 aprile 2014, segnal\xc3\xb2 che il suo server honeypot, un server volutamente vulnerabile utilizzato per analizzare gli attacchi, aveva ricevuto numerosi attacchi originati dalla Cina. Halderman concluse che, dal momento che il server era ben nascosto, quegli attacchi fossero di larga scala e stessero affliggendo ampie aree di Internet._NEWLINE_Nell\xe2\x80\x99agosto del 2014, fu reso pubblico che la vulnerabilit\xc3\xa0 Heartbleed aveva permesso agli hacker di rubare chiavi di sicurezza dal Community Health Systems, la seconda catena di ospedali pi\xc3\xb9 grande per profitti degli Stati Uniti, compromettendo i dati confidenziali di 4.5 milioni di pazienti. La violazione avvenne una settimana dopo che Heartbleed fu reso pubblico.\n_START_SECTION_\nPossibile conoscenza ed exploitation precedenti\n_START_PARAGRAPH_\nMolti dei maggiori siti web sistemarono il bug o disabilitarono Heartbeat nel giro di qualche giorno dal suo annuncio, ma non \xc3\xa8 chiaro se l\xe2\x80\x99exploit fosse gi\xc3\xa0 conosciuto dai potenziali hacker e in che misura sia stato sfruttato._NEWLINE_Basandosi sull\xe2\x80\x99esaminazione dei log dei ricercatori, \xc3\xa8 stato segnalato che alcuni attaccanti potrebbero aver sfruttato la vulnerabilit\xc3\xa0 per almeno cinque mesi prima della sua scoperta e del suo annuncio. Errata Security puntualizz\xc3\xb2 che un programma non maligno largamente usato chiamato Massacan, introdotto sei mesi prima della rivelazione di Heartbleed, interrompe bruscamente la connessione durante l\'handshaking allo stesso modo di Heartbleed, generando gli stessi messaggi di log, aggiungendo "Due nuove cose che producono gli stessi messaggi di errore potrebbero sembrare che i due siano correlati, ma ovviamente non lo sono."_NEWLINE_In accordo con Bloomber News, due fonti interne sconosciute informarono che la National Security Agency statunitense era al corrente del difetto da poco dopo la sua comparsa ma, invece di segnalarlo, lo tenne segreto insieme ad altre zero-day vulnerabilities in modo da sfruttarle per dei propositi propri dell\xe2\x80\x99NSA. L\xe2\x80\x99NSA ha negato l\xe2\x80\x99accusa, stando a Richard A. Clarke, un membro della National Intelligence Review Group on Intelligence and Communications Technologies che recens\xc3\xac la policy della sorveglianza elettronica degli USA; l\xe2\x80\x9911 aprile 2014 disse a Reuters che l\xe2\x80\x99NSA non sapeva nulla di Heartbleed. L\xe2\x80\x99allegazione spinse il governo statunitense a fare per la prima volta una dichiarazione pubblica sulla policy delle zero-day vulnerabilities, accettando la raccomandazione del rapporto 2013 del gruppo di revisione che affermava: \xe2\x80\x9cin praticamente tutte le istanze, per codice usato su ampia scala, \xc3\xa8 di interesse nazionale eliminare vulnerabilit\xc3\xa0 software piuttosto che usarle per le collezioni dell\xe2\x80\x99intelligence Americana\xe2\x80\x9d, e dicendo che la decisione di nasconderle deve essere passata dall\xe2\x80\x99NSA alla Casa Bianca.\n_START_SECTION_\nComportamento\n_START_PARAGRAPH_\nL\xe2\x80\x99RFC 6520 Hearbeat Extension testa le connessioni sicure TLS/DTLS permettendo ad un computer ad un estremo della connessione di mandare messaggi Heartbeat Request, che consistono in un payload, tipicamente una stringa di testo, insieme alla lunghezza del payload come un integer di 16 bit. Il computer ricevente deve quindi mandare lo stesso esatto payload indietro al mittente._NEWLINE_La versione affetta di OpenSSL alloca un buffer di memoria per il messaggio che deve essere restituito basato sulla lunghezza del campo del messaggio di richiesta, senza riguardi per la vera dimensione del messaggio di payload. A causa del fallimento nel controllo preciso dei limiti, il messaggio di ritorno consiste nel payload, seguito possibilmente da qualsiasi cosa si trovi allocato nel buffer di memoria._NEWLINE_Heartbleed \xc3\xa8 successivamente sfruttato mandando una richiesta heartbeat malformata con payload minuscolo e un campo molto grande per la macchina vulnerabile (generalmente un server) in modo da provocare una risposta da parte della vittima, permettendo all\xe2\x80\x99attaccante di leggere fino a 64 kilobyte dalla memoria della vittima che molto probabilmente era gi\xc3\xa0 stata usata recentemente dal protocollo OpenSSL. Nel caso dell\xe2\x80\x99Heartbeat, viene mandata una richiesta al destinatario del tipo \xe2\x80\x9cmandami indietro la parola di quattro lettere \xe2\x80\x98bird\xe2\x80\x99\xe2\x80\x9d, che risulta nella risposta \xe2\x80\x9cbird\xe2\x80\x9d, mentre nel caso dell\xe2\x80\x99Heartbleed viene mandata una richiesta maligna del tipo \xe2\x80\x9cmandami indietro la parola di 500 lettere \xe2\x80\x98bird\xe2\x80\x99\xe2\x80\x9d che causa una risposta da parte della vittima che consiste in una parola composta da \xe2\x80\x9cbird\xe2\x80\x9d e altri 496 caratteri contenuti nel buffer della memoria. Gli attaccanti cos\xc3\xac facendo possono ottenere dati sensibili, compromettendo la confidenzialit\xc3\xa0 delle comunicazioni della vittima. Sebbene un attaccante ha un buon controllo sulla dimensione del blocco di memoria esposto, non ha controllo sulla sua locazione, e per questo non pu\xc3\xb2 scegliere che contenuto verr\xc3\xa0 rivelato.\n_START_SECTION_\nVersioni di OpenSSL affette\n_START_PARAGRAPH_\nLe versioni affette di OpenSSL vanno dalla versione 1.0.1 alla versione 1.0.1f (inclusa). Le versioni seguenti (da 1.0.1g in avanti) e quelle precedenti (da 1.0.0 e pi\xc3\xb9 vecchie) non sono vulnerabili. Le installazioni delle versioni affette sono vulnerabili, a meno che OpenSSL venga compilato con: DOPENSSL_NO_HEARTBEATS.\n_START_SECTION_\nProgrammi e funzioni vulnerabili\n_START_PARAGRAPH_\nI file sorgenti dei programmi vulnerabili sono t1_lib.c e d1_both.c e le funzioni vulnerabili sono tls1_process_heartbeat() e dtls_process_heartbeat().\n_START_SECTION_\nPatch\n_START_PARAGRAPH_\nIl problema pu\xc3\xb2 essere risolto ignorando i messaggi Heartbeat Request che chiedono pi\xc3\xb9 dati di quelli necessari per i payload._NEWLINE_La versione 1.0.1g di OpenSSL aggiunge alcuni controlli di limiti per prevenire l\xe2\x80\x99over-read del buffer. Per esempio, il seguente test fu introdotto per determinare se una richiesta heartbeat inneschi Heartbleed; scarta silenziosamente richieste maligne._NEWLINE_if (1 + 2 + payload + 16 > s->s3->rrec.length) return 0; /*silently discard per RFC 6520 sec. 4 */_NEWLINE_Il sistema di controllo versioni contiene una lista completa di cambiamenti.\n_START_SECTION_\nImpatto\n_START_PARAGRAPH_\nI dati ottenuti da un attacco Heartbleed possono includere scambi non criptati tra le parti TLS che potrebbero essere riservate, inclusi i dati dalle richieste POST delle form compilate dagli utenti. Inoltre, i dati confidenziali esposti possono includere anche dati segreti per l\xe2\x80\x99autenticazione, come i cookie di sessione e le password, che potrebbero permettere agli attaccanti di impersonare un utente del servizio._NEWLINE_Un attacco potrebbe anche rivelare le chiavi private delle parti compromesse, che potrebbero abilitare l\xe2\x80\x99attaccante a decriptare le comunicazioni (traffico futuro o passato catturato da intercettazioni passive, a meno che non venga usato un perfect forward secrecy, nel qual caso solo il traffico futuro pu\xc3\xb2 essere decrittato se intercettato da attacchi man-in-the-middle)._NEWLINE_Un attaccante che ha ottenuto l\xe2\x80\x99occorrente per l\xe2\x80\x99autenticazione potrebbe impersonare l\xe2\x80\x99utente dopo che la vittima abbia sistemato il bug Heartbleed, nel caso in cui il materiale per l\xe2\x80\x99autenticazione sia ancora valido (ad esempio, finch\xc3\xa9 la password non viene cambiata o la chiave privata non venga revocata). Heartbleed comunque costituisce una minaccia critica alla confidenzialit\xc3\xa0. Poi, un attaccante che impersona una vittima potrebbe anche alterare i dati. Indirettamente le conseguenze di Heartbleed potrebbero andare ben oltre una violazione di confidenzialit\xc3\xa0 per molti sistemi._NEWLINE_Un\'indagine condotta su adulti americani nell\'aprile 2014 ha mostrato che il 60% aveva sentito parlare di Heartbleed. Tra quelli che usano internet, il 39% avevano protetto il loro account online, per esempio cambiando password o cancellando l\xe2\x80\x99account; il 29% credevano che le loro informazioni personali fossero messe a rischio a causa del bug Heartbleed; il 6% infine pensavano che le loro informazioni personali fossero state rubate.\n_START_SECTION_\nVulnerabilit\xc3\xa0 client-side\n_START_PARAGRAPH_\nSebbene il bug abbia ricevuto molta attenzione a causa della minaccia che rappresentava per i server, i client TLS che usavano le istanze affette di OpenSSL erano comunque vulnerabili. Con ci\xc3\xb2 che The Guardian ha quindi soprannominato Reverse Heartbleed, i server malevoli sono in grado di sfruttare Heartbleed per leggere i dati dalla memoria di un client vulnerabile. Il ricercatore in sicurezza Steve Gibson disse di Heartbleed:_NEWLINE_Non si tratta solamente di una vulnerabilit\xc3\xa0 server-side, \xc3\xa8 anche una vulnerabilit\xc3\xa0 client-side perch\xc3\xa9 anche il server, o qualunque dispositivo a cui si \xc3\xa8 connessi, \xc3\xa8 in grado di fare una richiesta heartbeat al client tanto quanto il client \xc3\xa8 in grado di farla._NEWLINE_I dati rubati possono contenere username e password. Reverse Heartbleed ha interessato milioni di istanze dell\'applicazione. Alcune delle applicazioni vulnerabili sono listate nella sezione \xe2\x80\x9cApplicazioni Software\xe2\x80\x9d qui sotto.\n_START_SECTION_\nSistemi specifici affetti\n_START_PARAGRAPH_\nCisco Systems ha identificato 78 dei suoi prodotti come vulnerabili, compresi i sistemi telefonici IP e i sistemi di telepresenza (videoconferenza).\n_START_SECTION_\nRimedi\n_START_PARAGRAPH_\nLa vulnerabilit\xc3\xa0 a Heartbleed \xc3\xa8 risolta aggiornando OpenSSL a una versione patchata (1.0.1g o pi\xc3\xb9 nuove). OpenSSL pu\xc3\xb2 essere usato sia come un programma stand-alone, sia come una libreria a collegamento dinamico; in questo modo, l\xe2\x80\x99aggiornamento pu\xc3\xb2 richiedere il restart dei processi caricati con una versione vulnerabile di OpenSSL e il re-link dei programmi e delle librerie che sono ad esso linkati staticamente. In pratica ci\xc3\xb2 significa che vengono aggiornati i pacchetti che sono linkati staticamente a OpenSSL, e il restart dei programmi funzionanti per la rimozione della copia in memoria della versione vecchia e vulnerabile di OpenSSL._NEWLINE_Dopo che la vulnerabilit\xc3\xa0 e patchata, l\xe2\x80\x99amministratore server deve annunciare la potenziale violazione di riservatezza. Dal momento che Heartbleed ha permesso agli attaccanti di scoprire le chiavi private, queste devono essere trattate come se fossero compromesse; le coppie di chiavi devono essere rigenerate e i certificati che le usano devono essere riemessi; i vecchi certificati devono essere revocati. Heartbleed ha inoltre la possibilit\xc3\xa0 di aver esposto altri segreti contenuti in memoria; per questo altri materiali di autenticazione (come le password) devono essere cambiate. \xc3\x88 raramente possibile confermare che un sistema affetto dal bug non sia stato compromesso, o determinare se un\xe2\x80\x99informazione specifica non sia trapelata._NEWLINE_Siccome \xc3\xa8 difficile o addirittura impossibile determinare se le credenziali possono essere compromesse o meno e come possono essere state usate da un attaccante, alcuni sistemi potrebbero richiedere ulteriori interventi di riparazione anche dopo aver corretto la vulnerabilit\xc3\xa0 e aver sostituito le credenziali. Per esempio, le firme fatte dalle chiavi che erano in uso con la versione vulnerabile di OpenSSL potrebbero tranquillamente essere state fatte da un attaccante; ci\xc3\xb2 alza la probabilit\xc3\xa0 che l\xe2\x80\x99integrit\xc3\xa0 del sistema sia stata violata, e apre le firme al ripudio. La validazione delle firme e la legittimit\xc3\xa0 di altri tipi di autenticazione fatti con chiavi potenzialmente compromesse (come l\xe2\x80\x99uso del certificato client) deve essere fatto con riguardo al sistema specifico coinvolto.\n_START_SECTION_\nConsapevolezza della revoca del certificato di sicurezza del browser\n_START_PARAGRAPH_\nDa quando Heartbleed ha minacciato la privacy delle chiavi private, gli utenti di un sito web compromesso potrebbero continuare a soffrire degli effetti di Heartbleed fino a che il browser non venga messo al corrente della revoca dei certificati o i certificati compromessi scadono. Per questo motivo il rimedio dipende anche dagli utenti che utilizzano browser con elenchi di revoche di certificati aggiornati (o supporto OCSP) e revisioni di certificati d\'onore.\n_START_SECTION_\nCause principali, possibili lezioni e reazioni\n_START_PARAGRAPH_\nSeppur difficile valutare il danno totale causato da Heartbleed, eWEEK stima un punto di partenza di 500$ americani._NEWLINE_Il paper di David A. Wheeler intitolato How to Prevent next Heartbleed analizza il perch\xc3\xa9 Heartbleed non \xc3\xa8 stato scoperto prima, e promuove alcune tecniche che potrebbero aver portato a scoperte pi\xc3\xb9 rapide, oltre a tecniche che avrebbero potuto diminuire il suo impatto. Stando a Wheeler, il modo pi\xc3\xb9 efficiente che avrebbe potuto prevenirlo sta in una suite di test atipici che esegue accuratamente ci\xc3\xb2 che definisce test negativo, ossia testare che input non validi non devono aver successo. Wheeler evidenzia come una singola suite di test general-purpose sarebbero utili come base per qualsiasi implementazione di TLS._NEWLINE_In accordo ad un articolo scritto da Robert Merkel, The Conversation, Heartbleed ha rivelato un fallimento massivo sull\xe2\x80\x99analisi dei rischi. Merkel pensa che OpenSSL dia pi\xc3\xb9 importanza alle performance piuttosto che alla sicurezza, che ormai, secondo la sua opinione, non ha pi\xc3\xb9 senso. Ma Merkel considera che OpenSSL non dovrebbe essere incolpato tanto quanto i suoi utenti, che decidono di usarlo senza finanziare migliori test e revisioni. Merkel spiega come due aspetti determinino il rischio che bug simili possano causare vulnerabilit\xc3\xa0: il primo, il codice sorgente della libreria, influenza il rischio di scrivere bug con tale impatto; il secondo, i processi di OpenSSL, influenzano le probabilit\xc3\xa0 di catturare i bug rapidamente. Per il primo aspetto, Merkel menziona l\xe2\x80\x99utilizzo del linguaggio di programmazione C come un fattore di rischio che ha favorito l\xe2\x80\x99apparizione di Heartbleed, facendo da eco per l\xe2\x80\x99analisi di Wheeler._NEWLINE_Sullo stesso aspetto, Theo de Raadt, fondatore e leader di OpenBSD e OpenSSH, critica gli sviluppatori di OpenSSL per aver scritto la loro propria routine di gestione della memoria e per questo di aver aggirato la libreria in C per le contromisure agli exploit di OpenBSD, dicendo che \xe2\x80\x9cOpenSSL non \xc3\xa8 sviluppato da un team responsabile.\xe2\x80\x9d Dopo la rivelazione di Heartbleed infatti, i membri del progetto OpenBSD hanno creato un fork di OpenSSL chiamato LibreSSL._NEWLINE_L\xe2\x80\x99autore della modifica che ha introdotto Heartbleed, Robin Seggelmann, ha ammesso di aver mancato la validazione di una variabile contenente una lunghezza (dell\xe2\x80\x99input) e ha negato qualsiasi intenzione di creare un\xe2\x80\x99implementazione imperfetta. A seguito della comparizione di Heartbleed, Segglemann ha suggerito di concentrarsi sul secondo aspetto, legato al fatto che OpenSSL non \xc3\xa8 revisionato da un numero di persone sufficiente. Sebbene il lavoro di Seggelmann venne controllato da uno degli sviluppatori principali di OpenSSL, la revisione era principalmente incentrata sulla verifica di un aumento delle funzionalit\xc3\xa0, una condizione che purtroppo ha reso pi\xc3\xb9 complesso l\xe2\x80\x99accorgimento di possibili vulnerabilit\xc3\xa0._NEWLINE__NEWLINE_Ben Laurie, lo sviluppatore OpenSSL in questione, ha dichiarato che una verifica della sicurezza di OpenSSL avrebbe sicuramente trovato Heartbleed. L\xe2\x80\x99ingegnere software John Walsh ha commentato:_NEWLINE_Pensateci, OpenSSL ha solamente due persone [full-time] che lo sviluppano, mantengono, testano e che verificano 500,000 righe di codice critico._NEWLINE_Il presidente fondatore di OpenSSL, Steve Marquess, disse \xe2\x80\x9cIl mistero non \xc3\xa8 che pochi volontari sovraccarichi di lavoro non si siano accorti del bug; il mistero \xc3\xa8 come mai ci\xc3\xb2 non accada pi\xc3\xb9 spesso.\xe2\x80\x9d David A. Wheeler descrisse le revisioni come un eccellente metodo per trovare vulnerabilit\xc3\xa0 in casi simili, ma not\xc3\xb2 che \xe2\x80\x9cOpenSSL usa strutture complesse non necessarie, che rendono pi\xc3\xb9 difficoltoso sia per le persone che per le macchine revisionarlo.\xe2\x80\x9d Infatti scrisse:_NEWLINE_Dovrebbe esserci un impegno continuo a semplificare il codice, perch\xc3\xa9 altrimenti aggiungendo funzionalit\xc3\xa0 si arriver\xc3\xa0 lentamente ad avere del software molto complesso. Il codice dovrebbe subire un refactoring nel tempo per renderlo semplice e chiaro, non solo per aggiungere nuove features. L\xe2\x80\x99obbiettivo dovrebbe essere quello di programmare ci\xc3\xb2 che \xc3\xa8 \xe2\x80\x9covviamente giusto\xe2\x80\x9d, in opposizione ad un codice che \xc3\xa8 talmente complicato da \xe2\x80\x9cnon vederne i problemi\xe2\x80\x9d._NEWLINE_LibreSSL ha eseguito una grossa pulizia, rimuovendo pi\xc3\xb9 di 90,000 linee di codice in C solamente in una settimana._NEWLINE_Stando a Dan Kaminsky, ricercatore per la sicurezza, Heartbleed \xc3\xa8 un segno di un problema economico che deve essere sistemato. Vedendo il tempo occupato per trovare questo semplice errore in un ancor pi\xc3\xb9 semplice feature di una dipendenza \xe2\x80\x9ccritica\xe2\x80\x9d, Kaminsky teme ancor pi\xc3\xb9 vulnerabilit\xc3\xa0 se non viene fatto nulla a riguardo. Quando Heartbleed \xc3\xa8 stato scoperto, OpenSSL era mantenuto da un insieme di volontari, di cui uno solo lavorava full-time. Le donazioni annuali a OpenSSL erano all\xe2\x80\x99incirca 2,000$ americani. Il sito di Heartbleed di Codenomicon ha consigliato di effettuare donazioni al progetto OpenSSL. Dopo di ci\xc3\xb2, per i 2/3 giorni seguenti alla comparsa di Heartbleed le donazioni sono arrivate a 841$ americani; a riguardo, Kaminsky ha commentato \xe2\x80\x9cStiamo costruendo la pi\xc3\xb9 importante tecnologia per l\xe2\x80\x99economia globale su un\xe2\x80\x99infrastruttura incredibilmente sottosviluppata.\xe2\x80\x9d Il core developer Ben Laurie ha qualificato il progetto come \xe2\x80\x9ccompletamente non finanziato\xe2\x80\x9d. Seppur OpenSSL Software Foundation non ha un programma bug bounty, l\xe2\x80\x99iniziativa Internet Bug Bounty ha premiato Neel Mehta di Google con 15,000$ americani per aver scoperto Heartbleed e per averlo reso noto a tutti._NEWLINE_Paul Chiusano ritiene che Heartbleed potrebbe essere il risultato di un fallimento dell\xe2\x80\x99economia software._NEWLINE_La risposta collettiva delle industrie alla crisi fu il Core Infrastructure Initiative, un progetto multimilionario annunciato da Linux Foundation il 24 aprile 2014 per fornire fondi agli elementi critici dell\'infrastruttura di informazione globale. L\'iniziativa intende consentire agli sviluppatori principali di lavorare a tempo pieno sui loro progetti e pagare per verifiche della sicurezza di infrastrutture software e hardware, viaggi e altre possibili spese. OpenSSL \xc3\xa8 un candidato a diventare il primo destinatario dei finanziamenti dell\'iniziativa._NEWLINE_Dopo averlo scoperto, Google ha fondato Project Zero, che \xc3\xa8 incaricato di trovare falle zero-day per aiutare a mettere in sicurezza il Web e la societ\xc3\xa0.'