Původně se jim říkalo „připojené televizory“ a nyní se nazývají „chytré televizory“. Jde o všechny televizory, které lze připojit k internetu, aby mohly přistupovat ke službám, používat aplikace a chovat se do jisté míry jako naše počítače s webovým prohlížečem. Chytré televizory se připojují k internetu prostřednictvím kabelového připojení Ethernet nebo Wi-Fi v domácí síti. Chytré televizory vyžadují počítačové čipy, které žonglují se zpracováním videa, více obrazovkami a připojením k internetu. Využívají také paměť pro vyrovnávací paměť pro streamované video a hudbu a potřebují další výpočetní výkon pro práci s grafikou. Televizory lze ovládat hlasovými příkazy a aplikacemi spuštěnými na některých chytrých telefonech.
Dan Reynolds, odborník na řešení a školení informační bezpečnosti z Mezinárodního institutu kybernetické bezpečnosti, vysvětluje, že tyto chytré televizory nejsou tak chytré a zabezpečení softwaru není úplně dokonalé. Chytré televizory se podobají internetu věcí (IoT), ale staré zranitelnosti, které byly považovány za zcela vymizelé, jsou v internetu věcí (IoT) opět novými zranitelnostmi. Někdy můžete snadno najít chybu, která vám umožní provádět v televizoru různé akce, včetně přístupu k potenciálně citlivým datům, vzdáleného přístupu k souborům a obrazu disku a nakonec i získání root přístupu k zařízení.
V článku se budeme zabývat různými aspekty dvou nejznámějších značek chytrých televizorů, Samsung a LG, s pomocí profesora kurzu etického hackingu IIcybersecurity.
- Poznání operačního systému SAMSUNG SMART TV
- Jak provést analýzu nad firmwarem Samsung Smart TV
- Připojení k televizoru Samsung
- Připojení programu Wireshark s televizorem Smasung Smart TV
- Smart TV Hotel Mode Hack
- Pochopení operačního systému LG SMART TV
- Připojení k chytré televizi
- Protokol vysílání/příjmu
- OK Acknowledgement
- Potvrzení o chybě
- Power (Příkaz: k a)
- LG TV USB IR-Hack with Arduino
- Jak aktivovat přehrávač USB přes sériový port
- Vlastní firmware
- Slabé ověřování
- Zranitelná rozhraní API televizoru
- Zranitelnosti útoku Man in Middle
Poznání operačního systému SAMSUNG SMART TV
Tizen je operační systém založený na jádře Linux a knihovně GNU C implementující rozhraní API Linuxu. Je zaměřen na velmi širokou škálu zařízení, včetně chytrých telefonů, tabletů, zařízení IVI (in-vehicle infotainment), chytrých televizorů, počítačů, chytrých kamer, nositelné výpočetní techniky, přehrávačů Blu-ray, tiskáren a chytrých domácích spotřebičů. Jeho cílem je nabídnout konzistentní uživatelské prostředí napříč zařízeními. Tizen by měl být implementován v televizorech Samsung od roku 2015.
Existují některé online komunity, které pracují nad výzkumem operačního systému Samsung Smart TV OS, jako například Sammygo, zmiňuje Dan Reynolds, odborník na řešení a školení v oblasti informační bezpečnosti.
Jak provést analýzu nad firmwarem Samsung Smart TV
ExLink konektor se skládá z kabelu, který má na jedné straně 3,5mm jack, stejně jako audio, a na druhé straně konektor RS232 ( Serial ) DB9. Tento kabel vám umožní připojit počítač k televizoru a vstoupit do sériového režimu. Pomocí něj můžete použít sériový komunikační software, například Hyperterminal, Putty ze systému Windows nebo Linux.
Připojení k televizoru Samsung
- Přepněte televizor do pohotovostního režimu, poté stiskněte a po zapnutí televizoru se zobrazí nové servisní menu.
- Zapněte možnost Hotel a nastavte rozhraní RS-232 na UART.
- Použijte tlačítko napájení a poté televizor vypněte a znovu zapněte.
Televizor by nyní měl být připraven ke komunikaci s počítačem.
Připojení programu Wireshark s televizorem Smasung Smart TV
Pro protokol Samsung SmartTV je k dispozici disektor Wireshark.
Tento disektor umožňuje filtrovat zachycené pakety Wireshark a dekódovat pakety dálkového ovládání, které jsou odesílány do televizoru přes WiFi, a pakety, které jsou odesílány z televizoru do jednotky dálkového ovládání. Tento zásuvný modul wiresharku, umožňuje jednoduché deklarativní vytváření vlastních dissektorů pro vlastní protokoly.
Chcete-li nainstalovat dissektor do své instalace wiresharku, musíte provést následující akce:
Stáhněte si verzi WSGD, která odpovídá vaší verzi wiresharku a architektuře počítače, a poté ji vložte do složky wireshark plugins. Rozbalte soubory disectoru (např. /usr/lib/wireshark/libwireshark0/plugins/).
Chcete-li vidět disector v akci, můžete provést následující:
- Spustit wireshark s nainstalovaným disectorem. Stáhněte si ukázkový soubor zachycení a otevřete jej ve wiresharku.
- Zadejte do pole filtru samsung_remote a zobrazte filtrovaný paket Samsung Remote.
- Klikněte na jeden z paketů označených protokolem SR a zobrazte dekódovaná data paketu.
Připojení můžete otestovat některým z příkazů
TV On: \x08\x22\x00\x00\x00\x02\xd6\r
TV Off: \x08\x22\x00\x00\x00\x01\xd5
HDMI1: \x08\x22\x0a\x00\x05\x00\xc7
TV Tuner: \x08\x22\x0a\x00\x00\xcc
Zvýšení hlasitosti : \x08\x22\x01\x00\x01\x00\xd4
Snížení hlasitosti: \x08\x22\x01\x00\x02\x00\xd3
Ztlumení: \x08\x22\x02\x00\x00\xd4
Zapnutí reproduktoru : \x08\x22\x0c\x06\x00\x00\xc4
Reproduktor vypnut : \x08\x22\x0c\x06\x00\x01\xc3
HDMI 2 : \x08\x22\x0a\x00\x05\x01\xc6
HDMI 3 : \x08\x22\x0a\x00\x05\x02\xc5
Smart TV Hotel Mode Hack
Některé modely televizorů Samsung mají tuto možnost, která umožňuje, aby televizor fungoval, když je nainstalován v hotelu. Díky tomu televizor pracuje v izolovaném prostředí, které chrání některé funkce před úpravami, které chtějí provádět hoteloví hosté. Pomocí níže uvedených kroků se můžete nabourat do hotelového režimu televizoru a provést root.
Na serveru Github existuje spousta nezávislých projektů souvisejících s chytrými televizory Samsung, například Samsung-Remote zmiňuje Dan Reynolds, odborník na řešení a školení v oblasti bezpečnosti informací.
Pochopení operačního systému LG SMART TV
Když si koupíte LG Smart TV, dostanete LG TV s operačním systémem WebOS. WebOS, známý také jako LG WebOS, Open WebOS, HP WebOS nebo Palm WebOS, je multitaskingový operační systém založený na linuxovém jádře pro chytrá zařízení, jako jsou televizory a chytré hodinky, a dříve to byl mobilní operační systém. Původně byl vyvinut společností Palm, kterou koupila společnost Hewlett-Packard. Společnost HP vytvořila platformu s otevřeným zdrojovým kódem a stala se systémem Open WebOS. Operační systém byl později prodán společnosti LG Electronics.
Jelikož je WebOS open source, nad firmwarem pracují některé online komunity s otevřeným zdrojovým kódem, například (openwebosproject, openlgtv). Z těchto komunit si můžete stáhnout firmware operačního systému a provést vlastní výzkum.
Připojení k chytré televizi
Prvním krokem k hacknutí jakéhokoli systému je znalost systému. Abyste pochopili architekturu a mohli sledovat provoz, který váš Smart TV vysílá, budete muset propojit počítač se Smart TV. Chcete-li se dostat na úroveň firmwaru, budete se muset připojit prostřednictvím rozhraní RS-232C. Můžete se snadno připojit pomocí kabelu RS-232 z televizoru do USB počítače.
Všeobecně doporučujeme operační systém Linux. Existují zprávy od uživatelů, kteří se potýkají s problémy s některými adaptéry USB2Serial pod systémem Windows 7, takže v současné době doporučujeme pro použití adaptérů USB2Serial systém Windows XP.
Startujte televizor a přejděte do nabídky „Možnosti“ pomocí dálkového ovládání a zvažte, zda je Set ID nastaveno na hodnotu 1. Budete potřebovat program pro emulaci terminálu, například Hyperterminal nebo Putty. Nastavte následující konfiguraci: 9600 nebo 115200 baudů (v posledních firmwarech je nyní standardní přenosová rychlost 115200bps), 8N1, XON/XOFF. Délka dat: 8 bitů, parita: Žádný, Stop bit: Komunikační kód: 1 bit: Kód ASCII. Následujícími příkazy můžete zkontrolovat spojení. Existuje mnoho různých příkazů pro hru se systémem.
Protokol vysílání/příjmu
: První příkaz pro ovládání sady. j, k, m nebo x) : Druhý příkaz pro ovládání sady.
: V nabídce Option můžete nastavit ID sady a vybrat požadované číslo ID sady. Rozsah nastavení je 1~ 99. Při výběru ID sady 0 se ovládá každá připojená sada. Set ID je v menu uvedeno jako desetinné číslo (1~ 99) a v přenosovém/přijímacím protokolu jako šestnáctkové číslo (0x0~ 0x63).
: Pro přenos příkazových dat. Přenos dat FF pro čtení stavu příkazu.
: Carriage Return ASCII kód 0x0D
: Mezera v ASCII kódu (0x20) * V tomto modelu set nebude odesílat stav během pohotovostního režimu.
OK Acknowledgement
Při příjmu normálních dat set vysílá ACK (potvrzení) na základě tohoto formátu. V tomto okamžiku, pokud se jedná o režim čtení dat, indikuje přítomné stavové údaje. Pokud jsou data v režimu zápisu dat, vrací data počítače PC.
* V tomto modelu set neodesílá stav během pohotovostního režimu. * Formát dat : Použijte jako příkaz : Použijte malý znak, pokud je ID setu 10, odešle 0, a. : Použijte malý znak, pokud jsou data 0 x ab, odešle a, b. : Použijte velký znak.
Potvrzení o chybě
Sestava vysílá ACK (potvrzení) na základě tohoto formátu při příjmu abnormálních dat od neživých funkcí nebo chyb komunikace.
Data01: Nelegální kód Data02: Nepodporovaná funkce Data03: Počkejte delší dobu * V tomto modelu nebude sada odesílat stav během pohotovostního režimu. * Formát dat : Použijte jako příkaz : Použijte malý znak, pokud je ID soupravy 10, odešle 0, a. : Použijte malý znak, pokud jsou data 0 x ab, odešle a, b. : Použijte velký znak.
Power (Příkaz: k a)
K ovládání zapnutí/vypnutí soupravy.
Přenos
Data 00: Vypnutí Data 01: Zapnutí
Potvrzení
* Podobným způsobem, pokud ostatní funkce vysílají data „FF“ na základě tohoto formátu, zpětná vazba dat Acknowledgement představuje stav o každé funkci.
* Poznámka: V tomto modelu odešle sada Acknowledge po dokončení zpracování při zapnutí napájení.
Může dojít k časové prodlevě mezi příkazem a potvrzením.
Nebo můžete použít také skripty dostupné na internetu, například libLGTV_serial. Mike Stevans, profesor kurzu etického hackingu, vysvětluje, že libLGTV_serial je knihovna jazyka Python pro ovládání televizorů LG (nebo monitorů se sériovým portem) prostřednictvím jejich sériového portu (RS232).
LG TV USB IR-Hack with Arduino
Televizor LG můžete snadno hacknout pomocí karty adruino prostřednictvím nahraných skriptů.
Tato infračervená dálková knihovna se skládá ze dvou částí: IRsend vysílá pakety infračerveného dálkového ovládání, zatímco IRrecv přijímá a dekóduje infračervenou zprávu.
#include <IRremote.h>IRsend irsend;void setup(){ Serial.begin(9600);}void loop() { if (Serial.read() != -1) { for (int i = 0; i < 3; i++) { irsend.sendSony(0xa90, 12); // Sony TV power code delay(100); } }}
#include <IRremote.h>int RECV_PIN = 11;IRrecv irrecv(RECV_PIN);decode_results results;void setup(){ Serial.begin(9600); irrecv.enableIRIn(); // Start the receiver}void loop() { if (irrecv.decode(&results)) { Serial.println(results.value, HEX); irrecv.resume(); // Receive the next value }}
Další informace o hackování adruina se můžete dozvědět z projektů Github a open source komunit.
Jak aktivovat přehrávač USB přes sériový port
- Připojte počítač přes port COM nebo adaptér USB2COM (USBtoRS232) do konektoru RS232 na televizoru
- Spusťte terminálový program na počítači (například hyperterminál nebo putty)
- Nastavte následující parametry portu COM: rychlost 9600, řízení toku: žádné. Ostatní ponechte ve výchozím nastavení.
- V terminálu zadejte: Stiskněte klávesu „Enter“ a napište „ab 0 ff“. Měli byste dostat následující odpověď: „01 ok????x“, kde ???? je číslo volby nástroje. Zapamatujte si ho nebo si ho napište na kus papíru.
- Pro aktivaci přehrávače médií USB zadejte: „ab 0 6″ a stiskněte enter.
- Vypněte/zapněte televizor. V hlavní nabídce televizoru by se měla objevit ikona USB.
Vlastní firmware
Starší firmware si můžete stáhnout z oficiálních webových stránek LG nebo na internetových fórech. Tyto firmwary jsou upraveny podle potřeb uživatele.
Mike Stevens, profesor hackerského kurzu v Mexiku, vysvětluje, že spolu se sériovými příkazy, skripty a spolu se zranitelnostmi může každý hacknout inteligentní televizor. Některé ze známých zranitelností, pro které jsou na černém trhu k dispozici různé exploity, jsou:
Slabé ověřování
Protokol je z hlediska ověřování velmi jednoduchý a ověřovací paket potřebuje k ověření pouze IP adresu, MAC adresu a název hostitele. Protokol lze snadno prolomit. Také ověřování na straně klienta není tak silné. Protokol také nezvládá ověřování pomocí hodnoty NULL MAC adresy, a tak se k televizoru může připojit libovolné zařízení s hodnotou NULL MAC adresy.
Zranitelná rozhraní API televizoru
Hacker se může nabourat a nainstalovat malware prostřednictvím rozhraní API televizoru, například File.Unzip nebo Skype. Pomocí nich lze zkopírovat soubory do libovolného souborového systému na cíli, do kterého lze zapisovat, a nainstalovat zadní vrátka.
Zranitelnosti útoku Man in Middle
Pomocí zranitelností útoku MIM může hacker odposlouchávat data, protože TV nekontroluje certifikáty serverů. Pomocí falešných certifikátů tak může hacker snadno provést útok Man in Middle.
Podle odborníků na řešení a školení v oblasti informační bezpečnosti se vytváření malwaru pro Smart TV příliš neliší od vytváření malwaru pro osobní počítače nebo systémy Linux. Základní operační systém je Linux a má zranitelnosti. Pomocí sériových příkazů a zranitelností se tedy hacker může snadno nabourat do chytrého televizoru. Vzhledem k tomu, že pro chytré televizory nejsou k dispozici žádné antiviry ani řešení proti malwaru, je pro hackera snazší se do chytrých televizorů nabourat.