Innehållsförteckning:
Vi fick se något coolt och fruktansvärt (ja, det är möjligt att vara båda samtidigt) tidigare i veckan när Armis Security publicerade detaljerna om en ny Bluetooth-exploit. Den kallas "Blueborne", vilket gör det möjligt för en person med rätt verktyg och som är inom Bluetooth-räckvidden för din smarta sak - bärbar dator, telefon, bil eller något annat som kör Android (liksom de flesta andra operativsystem, inklusive iOS och Windows) - för att få kontroll över enheten utan någon åtgärd från användaren.
Det beror på att utnyttjandet på ett smart sätt angriper delar av programvaran som behövs för att upprätta en anslutning för att kapa själva Bluetooth-stacken, vilket är ganska mycket gjort på ett universellt sätt på grund av hur komplicerad Bluetooth är och hur själva stacken hanterar så många saker OS kan vara gör istället.
Intresserad ännu? Om inte, borde du vara det.
Innan vi går längre, här är de goda (ish) nyheterna: Apple, Google och Microsoft har alla patched exploaten. På Android-sidan såg vi fixen i den här månadens säkerhetsuppdatering släpptes samma dag som sårbarheten offentliggjordes. Detta är verkligen inte en slump och kudos till Armis för att arbeta med de företag som skriver programvaran som vi alla använder varje dag för att fixa detta. Naturligtvis har nästan varje Android-driven enhet inte den här korrigeringen och kommer inte på ett tag.
Jag ska motstå frestelsen att göra detta om Android: s uppdateringsproblem och miljoner-och-en olika skäl till att det händer. Jag säger bara att om du uppskattar att du är skyddad mot de flesta sårbarheter som denna så har du för närvarande tre alternativ: en Android-driven enhet från BlackBerry, en Android-driven enhet direkt från Google eller en iPhone. Du bestämmer vad du ska göra här.
Låt oss istället prata om vad Blueborne är och hur det gör det, liksom vad du kan göra åt det.
Vad är Blueborne?
Det är en serie enkla attacker på olika delar av Bluetooth-stacken som körs på nästan alla smarta enheter i världen. Inklusive 2 miljarder Android-telefoner. Det är inte en MiTM-attack (Man in The Middle), där någon avbryter Bluetooth-trafik mellan dig och en sak du är ansluten till. Istället är det poserat som en enhet som vill upptäcka och ansluta via Bluetooth men utnyttjandet sker innan anslutningsförsöket kommer till ett stadium där en användare måste agera.
För människor i den här typen av saker är den korta versionen av hur exploiten fungerar på Android att angriparen skickar ut en upptäcktsfråga och sedan manipulerar både tidsstämpeln och storleken på en andra upptäcktsfråga för en separat tjänst till samma maskin. Detta orsakar ett buffertunderflöde och kringgår standardprotokollen för Bluetooth-säkerhetshantering för att misslyckas med "fungerar bara" -anslutningen. Även om det låter galen att detta fungerar, är det bättre än standardversionen av BlueZ-stackversionen av exploaten, som är ett rakt upp buffertöverskridande som kringgår varje anslutningskontroll. Jag känner inte tillräckligt med Windows eller iOS för att analysera exploateringskoden för de operativsystemen, men om du trycker på länken i första stycket och kolla in den. Slå sedan på kommentarerna och hjälpa oss alla att förstå bättre.
Om du inte tittar igenom kod (det är en speciell typ av sjukdom, jag erkänner det) är den korta korta versionen att en person med en dator som har en Bluetooth-anslutning kan skriva några rader i en terminal och ansluta till din telefon. Hur lätt det är för honom eller henne att ansluta är löjligt (vi kommer att prata om varför det är senare) och alla med ens bara en passande kunskap om den här typen av saker kan göra det. Det var därför det var viktigt att Armis höll utgåvan tills Apple, Google och Microsoft kunde agera.
Den läskiga delen är vad som händer efter att anslutningen har upprättats. Det finns ingen hemlig magi-app som rotar din telefon och hackar all information. Det är för lätt att förhindra att någon process får den nivån på kontrollen, och behörigheter förhindrar att den händer om inte en process har den åtkomstnivån. Istället kan en angripare fungera som den inloggade användaren. Det är du.
Med 8 miljarder enheter som behöver anslutas är Bluetooth ett stort mål för människor som vill stjäla data.
I exemplet videon ovan ser vi angriparen etablera en Bluetooth-musanslutning till en sovande Pixel och sedan göra samma saker som du kan göra om du höll den i dina händer. Appar kan startas, bilder, video och ljud kan spelas in och dina filer kan laddas ner direkt till angriparens dator. det finns inget på din telefon som säger "Stopp, det här är inte coolt" eftersom det är coolt - det fungerar som du. Och ingen av dina uppgifter är säkra. Om angriparen inte kan få tillgång till en katalog med sandlådor, kan han eller hon helt enkelt öppna den tillhörande appen och dra bilder av vad som finns på skärmen medan den körs.
Den frustrerande delen av allt detta är varför det fungerar. Jag talar inte om hur stacken utnyttjas och någon kraschar sig in, jag menar varför i vidare mening. Varför något detta förhindrande kunde glida förbi experterna som övervakar säkerheten och är riktigt bra på att skriva den här typen av saker från operativsystemet. Och svaret är att det hände på grund av att Bluetooth är en jätte, komplicerad röra.
Det är inte Bluetooth SIG: s (Special Interest Group) fel, även om det är deras ansvar att till slut ta itu med detta. Bluetooth startade 1998 som en enkel trådlös anslutning med kort räckvidd. Det är nu på mer än 8 miljarder enheter över hela världen och har vuxit och vuxit i funktioner och komplexitet. Och det måste vara bakåtkompatibelt, så delar av det måste lämnas som det är när det gäller saker som avancerade säkerhetsstandarder för anslutningar. Om en krypterad anslutning med parad nyckel inte kan upprättas, måste den kunna prova något mindre säkert och fortsätta försöka tills den ansluter till, går slut på olika sätt att försöka, eller säkerhetshanteringsfunktionerna säger att den ska stoppa. Utnyttja SMP-lagret och du är i. Och när nya funktioner läggs till i nyare versioner, blir det bara värre.
Det finns också exploater i egen programvara. Vi vet bara inte om dem förrän det är för sent.
De människor som skriver ett operativsystem och säkerhetsteamet vars uppgift det är att bryta det kommer alla också att ta sin del av ansvaret här. Problemet här är att de har att göra med omöjligt komplex kod i Bluetooth-stacken och medan de är upptagna med att försöka korrigera den mot en sak kan andra saker också utnyttjas. Google ändrade en god bit av den "standard" Bluetooth-implementeringen för Linux, liksom Apple och Microsoft. De saker du använder är väl skyddade mot saker som en man i mittenattacken eller ett sätt att få administratortillstånd via Bluetooth. Det beror på att de traditionellt har varit det sätt som Bluetooth utnyttjades, och det finns alltid gott om arbete för att förhindra att det händer.
Slutligen är detta ett bra exempel på varför open-source-koden är bra. Forskarna på Armis kunde hitta detta utnyttjande, se exakt hur det fungerar och bestämma exakt hur de ska korrigeras eftersom de har tillgång till själva koden. Även om Apple och Microsoft inte använder en helt öppen källkods Bluetooth-stack visste de exakt var de skulle titta på för att lappa sin version. Om alla inblandade företag använde stängd egen kod skulle denna exploit fortfarande existera, men vi skulle inte veta om den förrän det var för sent och andra människor visste om det också.
Vad ska du göra åt det?
Varje person som läser detta har antagligen en eller flera Bluetooth-enheter. Din klocka, din telefon, din bärbara dator, din TV och listan kan fortsätta; Bluetooth finns överallt och på nästan allt. Det betyder att du troligtvis har Bluetooth aktiverat på din telefon, och det är allt som krävs för att vara sårbar för detta om din telefon fortfarande är oöverträffad.
Den räddande nåd här är att Bluetooth är en kortdistansanslutningsstandard. Bluetooth 5 arbetar med att utöka räckvidden, men du är ganska begränsad till cirka 30 fot innan signalen blir dålig. Det betyder att du verkligen bara är i fara när du är inom 30 meter från den person som försöker komma in i din telefon.
Bluetooth: s korta räckvidd innebär att en angripare måste vara nära dig för att använda Blueborne-exploat.
Och hur denna exploit fungerar är skrämmande, men det betyder också att du förmodligen kommer att märka det. Om din telefon sover och är låst kan en angripare fortfarande ansluta. Men så fort de försöker få tillgång till dina grejer eller bli knepiga och försöka ta kontroll, skulle skärmen tändas och de skulle behöva låsa upp telefonen. För nu, åtminstone. Tänk inte för en minut att människor inte arbetar på en väg runt detta eftersom de är det. Och de kommer att hitta det.
Jag kommer inte att föreslå att du slutar använda ditt smartwatch eller ditt favorit Bluetooth-headset och stänga av Bluetooth permanent. Men det finns några saker vi kan göra för att göra det svårare för någon att komma in via Bluetooth medan vi väntar på en korrigering. Och igen - om din telefon har säkerhetsuppdateringen i september 2017 är du skyddad.
- Stäng av Bluetooth när du inte använder det. Du är förmodligen säker hemma eller på jobbet, men om du får vana att stänga av Bluetooth när du inte behöver det kommer du inte glömma nästa gång du går till Starbucks. Det finns inget sätt för en angripare att slå på Bluetooth. Åtminstone ännu inte.
- Se till att du har en säker låsskärm. Dead stop. Om du inte redan har ett lösenord, PIN, mönster, fingeravtryck eller något annat så att din telefon är låst tills du låser upp den själv, gör det nu.
- Stäng av pålitliga enheter medan du är där. Att trycka på en fyrsiffrig PIN-kod eller skanna dina ögonbollar är mycket bekvämare än att få nya kreditkort och prata med din bank, även en gång. Lita på mig, jag har varit där. (Tack, mål. Idioter, jag svär.)
- Lämna inte telefonen utan tillsyn. Sätt den i fickan eller handväskan och ta den med dig även om du bara går bort en minut eller två.
- Om du ser att skärmen slås på, titta och se varför. Detta är den största "bristen" i utnyttjandet; det kommer att slå på skärmen om någon försöker göra någonting efter att de är anslutna.
- Fråga företaget du gav pengar till när du köpte din telefon när du bör förvänta dig en uppdatering för att fixa detta. Att fråga snyggt låter det veta att du bryr dig om det, och när tillräckligt många människor visar att de bryr sig kommer ett företag att besluta att bry sig. Patchen är tillgänglig för alla telefoner som kör Android 4.4 och högre.
Det finns förmodligen inte en armé av människor beväpnade med bärbara datorer och Mountain Dew som patrullerar gatorna, redo att hacka "alla telefoner" via Bluetooth. Men det kan finnas den där killen, och han kunde vara på McDonald's eller på biblioteket eller någon annanstans. I sådana fall är det alltid bättre att vara säker eftersom de saker vi kan göra är ganska enkla.
Dina grejer är värda det.