BadUSB: Pouhých osmnáct let stará bezpečnostní slabina | Kapitola 2
Seznam kapitol
Když Karsten Nohl a Jakob Lell ze společnosti SRLabs na konferenci Black Hat 2014 oznámili, že USB obsahuje opravdu masivní bezpečnostní díru, byl to maličko šok. Nejen kvůli potenciálním dalekosáhlým dopadům, ale taky proto, že tato díra je s námi už „since 1996". Ještě dva roky a oslaví krásné kulaté výročí.
K čemu je to hackerům dobré? To si takhle vezmete flashdisk, strčíte do počítače a třeba ho i zformátujete, ba i vywipujete, takže ho máte bezpečně prázdný. Přesně tahle ho vidí i antivirové programy – nic tam není. Vtip je ale v tom, že firmware pro mikrokontrolér je pro uživatele i běžící aplikace skrytý. Po chvíli provozu se flashdisk na krátký okamžik změní na klávesnici a „vyklepe" za vás a s vaším oprávněním systémový příkaz, který změní nějaké nastavení, něco nainstaluje a podobně.
Protože jsou mikrokontrolérem vybavena všechna USB zařízení, lze k podobnému typu útoku použít vlastně jakékoliv zařízení, od USB harddisku, přes myš, klávesnici, USB zvukovku a až po tiskárnu anebo webkameru.
Při demonstraci byly využity flashdisky a mobilní telefon, protože jsou nejjednodušší a nabízí velký úložný prostor pro malware, ale v principu nebrání nic hacknutí libovolného zařízení, stačí znát typ kontroléru, vědět, jak ho programovat a jak program správně nahrát. Obecné způsoby byly v přednášce uvedeny, pracnost na hack konkrétního zařízení se odhaduje na jeden až dva člověkoměsíce. Není to jednoduché pro útočníka, ale o to těžší pro toho, kdo se snaží útoku zabránit.
V současnosti neexistuje způsob, jak zjistit, zda je zařízení normální anebo je „zlé". Jak se zařízení naprogramuje, tak se taky chová a může to být velmi rafinované. Z hlediska počítače se změna třídy zařízení (například z flashdisku na klávesnici) jeví jako vysunutí původního a zasunutí nového, mikrokontrolér lze ale naprogramovat tak, aby se choval rafinovaně podle situace. To dělá z relativně snadného cíle v podobě zavirovaného souboru hotový lov na chameleona.
Velmi děsivým konceptem uvedeným na přednášce je „USB style boot virus". Jde o takovou modifikaci USB flashdisku, který aktivně reaguje na stav počítače: Za normálních okolností se tváří pouze jako obyčejný flashdisk. Pokud mikrokontrolér zadetekuje, že počítač bootuje, změní svůj stav na jiný flashdisk, který obsahuje bootovací virus. Volitelně může aktivovat i klávesnici, která provede sama volbu v menu, jako by ji provedl uživatel. Idea je v tom, že „virová část" se aktivuje pouze během bootu, když antivirový software neběží. Za normálních okolností se flashdisk tváří bezproblémově, ať ho skenujete čím chcete.