Sniffing klawiatury poprzez dźwięki jej klawiszy

Li Zhuang, Feng Zhou oraz Doug Tygar udowodnili, iż nagrywając przez 15 minut odgłosy wciskanych klawiszy na klawiaturze jesteśmy w stanie „rozszyfrować” co było z tej klawiatury wpisywane! Nie potrzeba żadnego keyloggera.

Cały sposób polega na tym, iż każdy przycisk na klawiaturze ma swój unikalny dźwięk. Oczywiście z góry nie wiadomo, który dźwięk należy do którego klawisza.

Jednak, jeżeli nagramy dostatecznie dużo tych dźwięków, jesteśmy w stanie odgadnąć cały wpisany tekst. Założenie jest tylko jedno – wpisywane wyrazy muszą naprawdę istnieć w danym języku. Poza tym wszystkie wyrazy muszą pochodzić z tego samego języka.

Bardzo łatwo stworzyć program, który będzie uczył się częstości występowania danego dźwięku. Następnie przełoży to na frekwencje występowania danej litery (lub danej kombinacji liter) w danym języku.

Nakładając na to prościutki filtr (np. mały słownik danego języka), program w łatwy sposób odgadnie wszystkie dane jakie wpisaliśmy z klawiatury.

Podobna technika była znana już wcześniej, stworzona przez Asonov’a i Agrawal’a. Jednak stara technika wymagała, aby nagrywający dźwięki znał przynajmniej „jawny” początek wpisywanego tekstu. W nowej technice nie musimy znać niczego.

Cały algorytm składa się z 3 faz. W fazie pierwszej nagrywane są wszystkie odgłosy wciskanych klawiszy. W fazie drugiej dźwięki te są grupowane w ok. 50 różnych kategoriach (dźwięki w każdej kategorii są maksymalnie do siebie podobne). W fazie 3 dźwięki z grup są już uzupełniane o specyfikacje (np. gramatyczną, leksykalną) danego języka.

W ten sposób powstaje odtworzony tekst. Opublikowana przez autorów publikacja znajduje się tutaj.

Autorzy „odkrycia” nie pomyśleli jednak o jednym: co będzie, jeżeli piszącym okaże się człowiek robiący nagminną ilość błędów? 😀 Jego tekst okazałby się totalną abstrakcją dla zaprezentowanego algorytmu.
Źródło: Freedom to Linker, Slashdot