Dowód na to, że klawiatury bezprzewodowe to nie najlepszy pomysł

dodał 12 stycznia 2015 o 23:45 w kategorii HowTo  z tagami:
Dowód na to, że klawiatury bezprzewodowe to nie najlepszy pomysł

Samy Kamkar, znany majsterkowicz zajmujący się kwestiami bezpieczeństwa, pokazał właśnie działający projekt sniffera klawiatury bezprzewodowej, ukrytego w ładowarce USB i przesyłającego skradzione informacje do swojego twórcy.

Dron hakujący inne drony, zdalne przejmowanie cudzego dzwonka do drzwi czy też naszyjnik USB instalujący tylne furtki to tylko niektóre z projektów kreatywnego Samy’ego. Tym razem podzielił się z nami ciekawym urządzeniem szpiegowskim pokazującym, że bezprzewodowym klawiaturom nie należy zbytnio ufać.

Magiczne pudełko

Keysweeper, bo tak swój produkt nazwał Samy, wygląda jak większa ładowarka USB. Choć z pozoru zachowuje się jak zwykła ładowarka, lista jego funkcji robi wrażenie. Potrafi:

  • podsłuchiwać transmisje wszystkich bezprzewodowych klawiatur Microsoftu w okolicy,
  • dekodować w czasie rzeczywistym treść naciskanych klawiszy,
  • zapisywać przechwycone dane na serwerze z użyciem własnego modułu GSM,
  • wysyłać alerty przez SMS gdy natrafi na zdefiniowane wcześniej słowo kluczowe, hasło lub link,
  • działać również po odłączeniu od gniazdka dzięki wbudowanemu akumulatorowi,
  • po ponownym podłączeniu naładować akumulator,
  • i oczywiście ładować urządzenia przez port USB.
Urządzenie wygląda niepozornie

Urządzenie wygląda niepozornie

A to wszystko chowa się w naprawdę nie budzącym podejrzeń opakowaniu i kosztuje mniej niż 100 dolarów w najbardziej rozbudowanej wersji. Co faktycznie znajduje się w środku?

Era miniaturyzacji

Urządzenie oparte jest na Arduino, układzie odpowiedzialnym za transmisję radiową klawiatury, ładowarce USB, płytce Adafruit FONA odpowiadającej za komunikację GSM, układzie pamięci, akumulatorze oraz karcie SIM. Do tego dochodzi oprogramowanie napisane przez Samy’ego obsługujące zarówno nadajnik jak i stronę serwerową odpowiedzialną za zbieranie danych.

Anatomia urządzenia

Anatomia urządzenia

Aby zbudować całą platformę Samy musiał zdekodować sygnał przesyłany przez klawiaturę Microsoftu. Zaczął od ustalenia częstotliwości (na podstawie licencji radiowej opisanej na obudowie) oraz przerobienia prostego układu radiowego tak, by mógł działać jako sniffer na właściwej częstotliwości (tu wsparł się pracami Travisa Goodspeeda). Samy opracował także nowy algorytm identyfikacji sygnału klawiatury, skracając czas potrzebny na jego identyfikację z 80 minut do 40 sekund. Inni badacze wcześniej już przeanalizowali metodę szyfrowania używaną w klawiaturach Microsoftu i ustalili, że jest to dość prosta operacja XOR wykorzystująca MAC adres urządzenia i tryb ECB. Samy poprawił trochę implementację algorytmu odszyfrowującego przesyłane dane (ustalił, że początek MAC adresu jest zawsze taki sam) i zaimplementował w swoim gadżecie.

By zmieścić wszystkie urządzenia w obudowie Samy musiał wymienić samą ładowarkę – posłużył się w tym celu znaczniej lepiej zminiaturyzowaną ładowarką dla telefonu komórkowego. Opracował także drugą wersję swojego urządzenia, bez kosztownego modułu GSM, obniżając cenę o około 50%. W tym celu wbudował do urządzenia także dodatkową funkcję – jeśli w pobliżu znajdzie się drugie, identyczne urządzenie, to wymienią się one zebranymi danymi korzystając z układów radiowych. W ten sposób można odebrać logi urządzenia wpiętego do gniazdka przechodząc w jego okolicy z identycznym pudełkiem w kieszeni.

Musimy przyznać, że choć Samy nie dokonał żadnego przełomu w dziedzinie bezpieczeństwa, to jesteśmy pod wrażeniem sposobu, w jaki połączył znane odkrycia programowe z odpowiednią konfiguracją sprzętową. Fajny gadżet.