Komoly tatarozásra szorul a Thunderbolt védelme
Biztonsági szakértők szerint egy rosszindulatú thunderboltos eszközzel teljes kontroll szerezhető a támadott rendszer fölött.
Nem csak a parkolóban talált pendrive, de akár egy ismeretlen USB-C csatlakozós töltő is veszélybe sodorhatja az óvatlan felhasználók érzékeny személyes vagy vállalati adatait - derül ki Theo Markettos, a Cambridge-i Egyetem biztonsági kutatója és Colin Rothwell, Brett Gutstein, Allison Pearce, Peter Neumann, Simon Moore, illteve Robert Watson szakértők kutatásából. A csapat a Thunderbolt, illetve a PCI-E interfész biztonságát vizsgálta, és mint kiderült, az bőven hagy kívánnivalót maga után. Bár a Thunderclap névre keresztelt sebezhetőség több részét a gyártók mára orvosolták, még jócskán akad rés az interfész pajzsán.
Mint Markettos blogposztjában rámutat, a Thunderbolt, illetve az annak alapját adó PCI Express interfészek alacsony szintű, közvetlen memória-hozzáféréssel rendelkeznek, ami kiterjedt jogosultságokat jelent az így csatlakozó eszközök számára, azok tehát jóval nagyobb mozgásteret kapnak mint egy hagyományos, USB-s készülék. Ennek megfelelően a megfelelő védvonalak felhúzása is kiemelten fontos az esetükben, hiszen azok hiányában az interfész komoly biztonsági kockázatot jelenthet. Miután a támadóknak az interfész lényegében korlátlan memória-hozzáférést nyújt, azok teljes kontrollt szerezhetnek a célba vett számítógép fölött, jelszavakat, pénzügyi adatokat, titkosítási kulcsokat vagy egyéb érzékeny információkat is megszerezhetnek, illetve kártékony szoftvereket is a gépre juttathatnak.
Inkább dísz- mint védelmi funkciók
Noha a hasonló esetek megelőzésére léteznek védvonalak, a közvetlen memória-hozzáféréssel rendelkező perifériákhoz, azok a kutató és csapata szerint nem túl acélosak. A fő védelmi megoldást az úgynevezett IOMMU (Input-Output Memory Management Unit) jelenti, amely azt hivatott garantálni, hogy az egyes eszközök csak a feladatukhoz feltétlenül szükséges memóriaterülethez férjenek hozzá. A kutatók szerint ugyanakkor jelenleg a fősodorbeli operációs rendszerek nem alkalmazzák megfelelően a funkciót - már ha egyáltalán használják azt.
A Windows 7, 8, 10 Home és 10 Pro ugyanis sokáig egyáltalán nem támogatta az IOMMU-t, az egyedül a Windows 10 Enterprise-ban volt megtalálható, ugyanakkor ott is csak korlátozott formában, ami a kutatók szerint a legtöbb rendszeren nem nyújt elegendő védelmet. Noha mind a FreeBSD, mind a Linux rendelkezik IOMMU támogatással, a legtöbb népszerű disztribúcióban a funkció alapértelmezetten ki van kapcsolva - a vizsgált operációs rendszerek közül egyedül a macOS volt, amelyik külön beállítás nélkül használta a védvonalat. Sajnos azonban a megoldás jelenlegi implementációi is elég foghíjasak, még azoknál a rendszereknél is, ahol az IOMMU be van kapcsolva. A kutatók által készített, hálózati kártyának álcázott eszközzel például olyan adatokhoz is hozzáfértek, amelyekhez normális esetben nem lett volna jogosultságuk.
A csapat ehhez egy Intel E1000 szoftvermodelljét ültette át egy FPGA-ra, amelyet igény szerint kiegészíthettek egy sor rosszindulatú funkcióval. Az eszközt a rendszer egyszerű hálózati kártyaként ismerte fel, ahhoz a szükséges drivereket is hozzákapcsolta, illetve a hálózati adatcsomagok küldését-fogadását is megkezdte azon keresztül. Ráadásul miután a szakértők megvizsgálták a kártyának kiosztott memóriát kiderült, hogy az olyan hálózati adatforgalomhoz is hozzáfér, amelyhez alapértelmezetten nem szabadna hogy jogosultsága legyen, beleértve VPN információkat és UNIX domain socketeket is, amelyeknek soha nem szabadna elhagyniuk magát a számítógépet.
A rosszindulatú kártyával a kutatók macOS-en és FreeBSD-n is el tudtak indítani tetszőleges szoftvereket rendszergazdai jogosultságok mellett, Linuxon pedig érzékeny kerneladatokhoz is hozzáfértek. A helyzetet macOS-en tovább rontotta, hogy a rendszeren a perifériák egymásra is rálátnak, így a kártya akár a csatlakoztatott USB billentyűzet leütéseit is figyelhette. A habra a cseresznyét pedig a Linux gyengesége tette fel, utóbbinál ugyanis a kártya teljesen ki is tudta kapcsolni az IOMMU által nyújtott védelmet.
Machine recruiting: nem biztos, hogy szeretni fogod Az AI visszafordíthatatlanul beépült a toborzás folyamatába.
A kutatók szerint az interfész gyenge védelmének kihasználására rosszindulatú felek aránylag egyszerűen létrehozhatnak különféle kártékony perifériákat, legyen szó akár a Thunderbolthoz hasonlóan USB-C csatlakozóval szerelt töltőadapterekről vagy kijelzőkről, amelyek látszólag ártalmatlanok, megfelelően is üzemelnek, a háttérben viszont átveszik az uralmat a számítógép fölött.
A nagyobb problémákat már javították - már ahol lehetett
A védelem gyengeségei szerencsére a gyártók előtt sem ismeretlenek, a Thunderclap kapcsán a szakértők már 2016 óta együttműködést folytatnak több vállalattal is, amelyek segítségükkel egy sor problémát már orvosoltak. Az Apple például már a 2016-ban kiadott macOS 10.12.4-ben javította az interfészen keresztül adminisztrátori jogosultságokat biztosító támadási felületet - ugyanakkor mint a szakértők is rámutatnak, kevésbé súlyos Thunderbolt-sérülékenységek még mindig jelen vannak a platformon.
A Windows 10 helyzete is sokat javult, a rendszer 1803-as vagy újabb verzióival érkező eszközökön a Microsoft bevezette a Kernel DMA Protection for Thunderbolt 3 névre keresztelt megoldását, amely már bekapcsolja az IOMMU-t a thunderboltos készülékeknél, igaz a PCI-E eszközöknél továbbra sem. Sajnos miután a funkcióhoz firmware-szintű támogatás is szükséges, az egyszerűen a Windows frissítésével az nem válik elérhetővé, így azok az eszközök amelyek még valamelyik 1803-at megelőző verzióval érkeztek, továbbra is sebezhetők. A linuxos helyzet javításán az Intel dolgozik, a chipgyártó már több javítást is kiadott, amellyel aktiválja az IOMMU-t a Thunderbolt eszközöknél, illetve meggátolja a védelem megkerülését - ezek a változások a Linux kernel 5.0-s kiadásában lesznek elérhetők.
Látható tehát, hogy az erőfeszítések dacára a Thunderclap továbbra is komoly fenyegetést jelent, ezért érdemes ugyanúgy vigyázni az idegen, nem megbízható forrásból származó USB-C-s eszközökkel, mint az utcán talált pendrive-okkal, és lehetőleg nem csatlakoztatni azokat az érzékeny adatokat tartalmazó számítógéphez.