Złamanie zabezpieczeń komputera nigdy nie było tak tanie. Pisanie kodu wymaga czasu i wysiłku, ale każdy entuzjasta bezpieczeństwa szuka przede wszystkim skutecznej platformy do jego wdrożenia – i tu wkracza Raspberry Pi Zero. Ryzyko pozostawienia komputera bez opieki nabiera nowych wymiarów wraz z PoisonTap, atakiem zdolnym przechwytywać ruch internetowy nawet w systemie chronionym hasłem oraz instalować backdoor, co umożliwia zdalny dostęp.
Jestem jedyną osobą, która dotyka komputerów w domu i każda prośba związana z internetem przechodzi przez moje ręce, co czyni mnie swego rodzaju proxy. To nie jest reguła ani nic podobnego: wiedzą, że komputery to narzędzia pracy i potrzebuję ich w optymalnym stanie. Niektóre wyłączają się lub przechodzą w stan uśpienia po kilku minutach, a wszystkie są chronione hasłem. Zakłada się, że to powinno wystarczyć, ale teraz przenieśmy te parametry na komputery publiczne, terminale biurowe i każdy inny system pozostawiony bez opieki na chwilę. Możliwości naruszenia takiego systemu są już ogromne, gdy ma się fizyczny dostęp, ale jeśli czasu nie ma zbyt wiele, chodzi o to, by maksymalnie zautomatyzować atak.
Jak działa PoisonTap?
To prowadzi nas do PoisonTap, nowego projektu Samy'ego Kamkara, znanego z badań nad podatnościami geolokalizacji, SkyJack atakującego drony w powietrzu oraz akcesorium RollJam przechwytującego sygnały pilotów, aby otwierać drzwi. Podstawą PoisonTap jest Raspberry Pi Zero, które mimo słabej dostępności wciąż kosztuje pięć dolarów, oraz odrobina oprogramowania – dokładnie Node.js. Ogólnie rzecz biorąc, gdy PoisonTap zostanie podłączony do portu USB, oszukuje komputer w taki sposób, że nie prezentuje się jako urządzenie USB, lecz jako połączenie Ethernet, które udaje internet (innymi słowy, staje się bramą). Gdy tylko komputer wyśle żądanie HTTP z przeglądarki (czy to telemetria, reklama ze strony internetowej itp.), PoisonTap odpowiada gradem złośliwych iframe'ów dla miliona witryn – tych najważniejszych według Alexa. Do tego dochodzi otwarcie backdoora oraz przechwytywanie plików cookie i całych sesji, którymi atakujący może zarządzać z zdalnego serwera.
Problem z zaufaniem do USB
Administratorzy systemów mogą zneutralizować PoisonTap u źródła, wymuszając HTTPS dla całego generowanego ruchu, jednak historia jest nieco bardziej skomplikowana po stronie terminali. Skuteczność PoisonTap zależy od wielu czynników (zaszyfrowany komputer z głębokim uśpieniem może całkowicie zignorować fizyczne połączenie), ale jego pierwszy ruch obnaża szczegół, którym firmy takie jak Apple i Microsoft powinny zająć się wreszcie. To niedopuszczalne, aby system operacyjny natychmiast i bez względu na bezpieczeństwo reagował na cokolwiek podłączonego przez USB. Jedną z pierwszych rzeczy, które wykorzystało złośliwe oprogramowanie, było słynne autoodtwarzanie (pamiętacie te wszystkie autorun.inf uruchamiające śmieci?). Jak długo mamy czekać na wprowadzenie czegoś w rodzaju „automatycznego wotum nieufności” wobec nieznanych urządzeń od razu po ich podłączeniu? Kiedyś wyśmiewaliśmy paranoiczną Kontrolę kont użytkowników, ale z czymś takim jak PoisonTap nikt się już nie śmieje...