Dekodowanie tajemniczego sygnału pochodzącego z helikoptera

dodał 1 lutego 2014 o 08:12 w kategorii HowTo  z tagami:
Dekodowanie tajemniczego sygnału pochodzącego z helikoptera

Ciekawe zagadki czyhają nas nas wszędzie – czasami również w lewym kanale audio niepozornego filmu z pościgu samochodowego w serwisie Youtube. Udowodniła to pewna Finka, specjalizująca się w analizie sygnałów i kryptologii.

W ciągu ostatniego roku dwukrotnie już linkowaliśmy do materiałów . Raz był to artykuł o podsłuchiwaniu bezprzewodowej klawiatury, a za drugim razem analiza komunikatów radiowych z przystanków autobusowych. Tym razem postanowiliśmy jednak nie tylko zlinkować, ale i opisać najnowsze, bardzo ciekawe odkrycie Finki.

Zwykły szum w nagraniu

Oona zauważyła w serwisie Youtube wideo pokazujące pościg policyjny filmowany z helikoptera. W trakcie jego oglądania zwróciła uwagę na dziwny dźwięk, pojawiający się w lewym kanale audio, który z początku wydawał się jej interferencją pochodzącą z silnika maszyny. Posłuchajcie sami.

Dzięki swojemu doświadczeniu Oona szybko rozpoznała, że nie jest to zwykła interferencja, a cyfrowy sygnał. Wyodrębniła lewy kanał i wygenerowała jego spektrogram. Patrząc na modulację wywnioskowała, że pewnie jest to proste BFSK.

BFSK , czyli binarne kluczowanie z przesuwem częstotliwości polega na przesyłaniu sygnału cyfrowego (zer i jedynek) przez zmianę częstotliwości nośnej – niższa z reguły oznacza zero, a wyższa jeden.

W badanym przypadku nośna zmieniała się między 1200 a 2200 Hz a zmiany następowały z częstotliwością 1200 razy na sekundę, co oznaczało prędkość transmisji 150B/s. Oona przeprowadziła demodulację sygnału za pomocą filtrów górno- i dolnoprzepustowych i w efekcie otrzymała strumień danych do dalszej analizy.

Modulacja w powiększeniu

Modulacja w powiększeniu

Analiza danych

W danych łatwo można było zauważyć, że tworzą je pakiety po 47 bajtów, oddzielone powtórzeniami bajtu 0x80. Co jednak zawiera transmisja? Co ciekawe większość bitów w trakcie transmisji pozostaje bez zmian, a modyfikowane są jedynie 3 grupy danych.

Widoczne bajty ulegające zmianie

Widoczne bajty ulegające zmianie

Badane hipotezy obejmowały podstawowe możliwości – lokalizacja helikoptera, informacje o ustawieniu kamery lub znaczniki czasu nagrania. Za pierwszą opcją przemawiała relacja pomiędzy dwoma grupami wartości, w których stopniowej zmianie ulegają jedynie ostatnie trzy cyfry. Próba narysowania trasy, którą mogą przedstawiać koordynaty, okazała się sukcesem. Powstała pętla idealnie pokrywała się z drogą, którą pokonywał ścigany przez policję i helikopter samochód. Zapis, w którym jedna minuta kątowa na mapie odpowiada 100 jednostkom współrzędnych pokrywa się z danymi GPS. Przy okazji udało się zidentyfikować trzeci parametr jako kąt ustawienia kamery. Po analizie całości zapisu udało się odtworzyć pełną trasę pokonaną przez helikopter.

Trasa helikoptera na Google Earth

Trasa helikoptera na Google Earth

Za transmisję danych zapewne odpowiadał nadajnik podobny do Nucomm Skymaster TX, który wraz z sygnałem wideo przesyła także współrzędne GPS kamery.

Jeśli podobało się Wam odkrycie Finki, to polecamy lekturę jej bloga oraz obejrzenie jej świetnego występu na niedawnej konferencji 30C3.