Vad är Heartbleed-sårbarheten?

click fraud protection

En av de mest välkända sårbarheterna i mitten av 2010-talet kallades "Heartbleed". Heartbleed var särskilt allvarligt eftersom det var programvaran den påverkade "OpenSSL", det huvudsakliga kryptografiska biblioteket för HTTPS-anslutningar, som används mycket. För att göra saken värre hade sårbarheten funnits i OpenSSL i mer än två år tidigare det upptäcktes, publicerades och lappades, vilket innebar att många människor använde en sårbar version.

Heartbleed var en sårbarhet för dataläckor i heartbeat-förlängningen som när den utnyttjades läckte data från RAM från servern till klienten. Heartbeat-tillägget används för att upprätthålla en anslutning mellan webbservern och klienten utan att göra en normal sidförfrågan.

I fallet med OpenSSL skickar klienten ett meddelande till servern och informerar servern om hur långt meddelandet är, upp till 64KB. Servern är sedan tänkt att eka samma meddelande tillbaka. Avgörande är dock att servern faktiskt inte kontrollerade att meddelandet var så långt som klienten hävdade att det var. Detta innebar att en klient kunde skicka ett 10KB meddelande, hävda att det var 64KB och få ett 64KB svar, med de extra 54KB som bestod av nästa 54KB RAM, oavsett vilken data som lagrades där. Denna process är väl visualiserad av

XKCD-serie #1354.

Bild med tillstånd av xkcd.com.

Genom att göra många små hjärtslagsförfrågningar och hävda att de var stora, kunde en angripare bygga en bild av det mesta av serverns RAM genom att sammanföra svaren. Data som lagras i RAM-minne som kan läcka inkluderar krypteringsnycklar, HTTPS-certifikat samt okrypterade POST-data som användarnamn och lösenord.

Obs: Det är mindre känt men hjärtslagsprotokollet och utnyttjandet fungerade också åt andra hållet. En skadlig server kan ha konfigurerats för att läsa upp till 64KB användarminne per hjärtslagsbegäran.

Problemet upptäcktes av flera säkerhetsforskare oberoende den första april 2014 och avslöjades privat till OpenSSL så att en patch kunde skapas. Felet publicerades när patchen släpptes den sjunde april 2014. Den bästa lösningen för att lösa problemet var att applicera plåstret, men det var också möjligt att åtgärda problemet genom att inaktivera hjärtslagsförlängningen om lappning omedelbart inte var ett alternativ.

Tyvärr, trots att utnyttjandet är offentligt och allmänt välkänt, uppdaterade många webbplatser fortfarande inte omedelbart, med sårbarheten som fortfarande hittas ibland även år senare. Detta ledde till att ett antal fall av utnyttjandet användes för att få tillgång till konton eller läcka data.