Infrared
Last updated
Last updated
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Światło podczerwone jest niewidoczne dla ludzi. Długość fali IR wynosi od 0,7 do 1000 mikronów. Piloty domowe używają sygnału IR do przesyłania danych i działają w zakresie długości fal od 0,75 do 1,4 mikrona. Mikrokontroler w pilocie sprawia, że dioda LED podczerwieni miga z określoną częstotliwością, przekształcając sygnał cyfrowy w sygnał IR.
Aby odbierać sygnały IR, używa się fotoreceptora. On przekształca światło IR w impulsy napięcia, które są już sygnałami cyfrowymi. Zwykle w odbiorniku znajduje się filtr ciemnego światła, który przepuszcza tylko pożądaną długość fali i eliminuje szumy.
Protokoły IR różnią się w 3 czynnikach:
kodowanie bitów
struktura danych
częstotliwość nośna — często w zakresie 36..38 kHz
1. Kodowanie odległości impulsów
Bity są kodowane przez modulację czasu trwania przestrzeni między impulsami. Szerokość samego impulsu jest stała.
2. Kodowanie szerokości impulsów
Bity są kodowane przez modulację szerokości impulsu. Szerokość przestrzeni po wybuchu impulsu jest stała.
3. Kodowanie fazy
Jest również znane jako kodowanie Manchester. Wartość logiczna jest definiowana przez polarność przejścia między wybuchem impulsu a przestrzenią. "Przestrzeń do wybuchu impulsu" oznacza logikę "0", "wybuch impulsu do przestrzeni" oznacza logikę "1".
4. Kombinacja poprzednich i innych egzotyków
Istnieją protokoły IR, które próbują stać się uniwersalne dla kilku typów urządzeń. Najbardziej znane to RC5 i NEC. Niestety, najbardziej znane nie oznacza najbardziej powszechne. W moim otoczeniu spotkałem tylko dwa piloty NEC i żadnego RC5.
Producenci uwielbiają używać swoich unikalnych protokołów IR, nawet w obrębie tej samej grupy urządzeń (na przykład, TV-boxy). Dlatego piloty z różnych firm, a czasami z różnych modeli tej samej firmy, nie są w stanie współpracować z innymi urządzeniami tego samego typu.
Najbardziej niezawodnym sposobem na zobaczenie, jak wygląda sygnał IR pilota, jest użycie oscyloskopu. Nie demoduluje ani nie odwraca odebranego sygnału, jest po prostu wyświetlany "tak jak jest". To jest przydatne do testowania i debugowania. Pokażę oczekiwany sygnał na przykładzie protokołu IR NEC.
Zwykle na początku zakodowanego pakietu znajduje się preambuła. Umożliwia to odbiornikowi określenie poziomu wzmocnienia i tła. Istnieją również protokoły bez preambuły, na przykład Sharp.
Następnie przesyłane są dane. Struktura, preambuła i metoda kodowania bitów są określane przez konkretny protokół.
Protokół IR NEC zawiera krótki kod komendy i kod powtórzenia, który jest wysyłany podczas przytrzymywania przycisku. Zarówno kod komendy, jak i kod powtórzenia mają tę samą preambułę na początku.
Kod komendy NEC, oprócz preambuły, składa się z bajtu adresu i bajtu numeru komendy, dzięki którym urządzenie rozumie, co należy wykonać. Bajty adresu i numeru komendy są powielane z odwrotnymi wartościami, aby sprawdzić integralność transmisji. Na końcu komendy znajduje się dodatkowy bit stopu.
Kod powtórzenia ma "1" po preambule, co jest bitem stopu.
Dla logiki "0" i "1" NEC używa kodowania odległości impulsów: najpierw przesyłany jest wybuch impulsu, po którym następuje pauza, której długość ustala wartość bitu.
W przeciwieństwie do innych pilotów, klimatyzatory nie przesyłają tylko kodu naciśniętego przycisku. Przesyłają również wszystkie informacje, gdy przycisk jest naciśnięty, aby zapewnić, że urządzenie klimatyzacyjne i pilot są zsynchronizowane. To zapobiegnie sytuacji, w której urządzenie ustawione na 20ºC zostanie zwiększone do 21ºC za pomocą jednego pilota, a następnie, gdy użyty zostanie inny pilot, który nadal ma temperaturę 20ºC, temperatura zostanie "zwiększona" do 21ºC (a nie do 22ºC, myśląc, że jest w 21ºC).
Możesz zaatakować podczerwień za pomocą Flipper Zero:
FZ - InfraredUcz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)