TCP steganografie aneb jak skrýt přenos dat na internetu

TCP steganografie aneb jak skrýt přenos dat na internetu

Polští vědci navrhli novou metodu síťové steganografie založenou na vlastnostech široce používaného protokolu transportní vrstvy TCP. Autoři práce se domnívají, že jejich schéma lze například využít k rozesílání skrytých zpráv v totalitních zemích, které zavádějí přísnou cenzuru internetu. Zkusme přijít na to, z čeho vlastně inovace sestává a jak moc je vlastně užitečná.

Nejprve je třeba definovat, co je steganografie. Steganografie je tedy věda o skrytých zprávách. To znamená, že pomocí jejích metod se strany snaží skrývat skutečnost převodu. To je rozdíl mezi touto vědou a kryptografií, která se o to snaží učinit obsah zprávy nečitelným. Stojí za zmínku, že odborná komunita kryptografů je vůči steganografii dosti pohrdavá kvůli blízkosti její ideologie k principu „Bezpečnost skrze temnotu“ (nevím, jak to v ruštině zní správně, něco jako „Bezpečnost skrze nevědomost“ “). Tento princip využívá například Skype Inc. - zdrojový kód oblíbeného dialeru je uzavřen a nikdo vlastně přesně neví, jak jsou data šifrována. Nedávno si na to mimochodem stěžovala NSA, na což známý specialista Bruce Schneier napsal v mém blogu.

Vrátíme-li se ke steganografii, odpovězme si na otázku, proč je vůbec potřeba, pokud existuje kryptografie. Je totiž možné zašifrovat zprávu pomocí nějakého moderního algoritmu a při použití dostatečně dlouhého klíče tuto zprávu nikdo nepřečte, pokud si to nebudete přát. Někdy je však užitečnější skrýt samotný fakt tajného přenosu. Pokud například příslušné úřady zachytily vaši zašifrovanou zprávu, nemohou ji dešifrovat, ale opravdu chtějí, tak nakonec existují nepočítačové metody ovlivňování a získávání informací. Zní to antiutopisticky, ale jak vidíte, v zásadě je to možné. Proto by bylo lepší se ujistit, že ti, kteří nemají vůbec vědět, že k převodu došlo. Polští vědci právě takovou metodu navrhli. Navíc to nabízejí pomocí protokolu, který každý uživatel internetu používá tisíckrát denně.

Zde se dostáváme do blízkosti Transmission Control Protocol (TCP). Vysvětlovat všechny jeho detaily samozřejmě nemá smysl – dlouhé, nudné, kdo to potřebuje, už ví. Stručně lze říci, že TCP je protokol transportní vrstvy (tj. funguje „nad“ IP a „pod“ protokoly aplikační vrstvy, jako je HTTP, FTP nebo SMTP), který zajišťuje spolehlivé doručování dat od odesílatele k příjemce. Spolehlivé doručení znamená, že pokud dojde ke ztrátě nebo změně paketu, TCP se postará o předání paketu. Všimněte si, že změny v balíčku zde neznamenají záměrné zkreslení dat, ale chyby přenosu, ke kterým dochází na fyzické úrovni. Například, když paket cestoval po měděných drátech, několik bitů změnilo svou hodnotu na opačnou nebo se úplně ztratilo mezi šumem (mimochodem, pro Ethernet je bitová chybovost obvykle brána asi 10-8 ). Ztráta paketů při přenosu je na internetu také poměrně častým jevem. Může k němu dojít například kvůli vytížení routerů, což vede k přetečení bufferu a v důsledku toho k odmítnutí všech nově příchozích paketů. Obvykle je procento ztracených paketů asi 0.1% a při hodnotě pár procent přestane TCP vůbec normálně fungovat - vše bude pro uživatele strašně pomalé.

Vidíme tedy, že přeposílání (retransmise) paketů je častým a obecně nezbytným jevem pro TCP. Proč to tedy nevyužít pro potřeby steganografie, nehledě na to, že TCP, jak je uvedeno výše, se používá všude (podle různých odhadů dnes podíl TCP na internetu dosahuje 80-95 %). Podstatou navrhovaného způsobu je poslat v předávané zprávě nikoli to, co bylo v primárním paketu, ale data, která se snažíme skrýt. Odhalit takovou substituci přitom není tak snadné. Přece jen musíte vědět, kde hledat – počet současných TCP spojení procházejících poskytovatelem je prostě obrovský. Pokud znáte přibližnou úroveň retranslace v síti, můžete doladit steganografický mechanismus přesměrování tak, že se vaše připojení nebude lišit od ostatních.

Tato metoda samozřejmě nemá žádné nevýhody. Například z praktického hlediska to nebude tak snadné implementovat - bude to vyžadovat změnu síťového zásobníku v operačních systémech, i když v tom není nic neúnosně složitého. Kromě toho, pokud máte dostatek zdrojů, můžete stále detekovat "tajné" pakety, k tomu musíte prohlížet a analyzovat každý paket v síti. Ale zpravidla je to téměř nemožné, takže obvykle hledají něco, co vyniká pro pakety a připojení, a navržená metoda jen činí vaše připojení nevýrazným. A nikdo vás neobtěžuje šifrovat tajná data pro každý případ. V tomto případě může samotné připojení zůstat nešifrované, aby vzbuzovalo menší podezření.

Autoři díla (mimochodem pro zájemce, zde Ona) ukázala na úrovni simulace, že navrhovaná metoda funguje tak, jak bylo zamýšleno. Možná se v budoucnu někdo zapojí do realizace jejich nápadů v praxi. A pak, doufejme, bude na internetu o něco méně cenzury.

Zdroj: www.habr.com

Přidat komentář