Skrytý kanál je komunikační kanál, který odesílá informace metodou, která k tomu původně nebyla určena.
Koncept skrytého kanálu byl poprvé představen v knize Butlera Lampsona „A Note of the Confinement Problem“ 10. října 1973 jako „(kanály), které vůbec nejsou navrženy k přenosu informací, jako je dopad obslužného programu na spouštění systému" [1] . Nejčastěji je skrytý kanál parazitem na hlavním kanálu: skrytý kanál snižuje propustnost hlavního kanálu. Pozorovatelé třetích stran obvykle nemohou zjistit, že kromě hlavního kanálu pro přenos dat existuje ještě jeden další. To ví pouze odesílatel a příjemce. Například ve steganografiiskryté zprávy byly zakódovány do grafických obrázků nebo jiných dat takovým způsobem, že změny nebyly viditelné okem, ale příjemce zprávy mohl zašifrovanou zprávu dekódovat.
Skrytý kanál pochází ze skutečnosti, že je skrytý před přístupovými systémy i bezpečných operačních systémů, protože nepoužívá legitimní přenosové mechanismy, jako je čtení a zápis, a proto nemůže být detekován nebo monitorován hardwarovými bezpečnostními mechanismy, které jsou základem bezpečných operačních systémů. Ve skutečných systémech je téměř nemožné vytvořit skrytý kanál a lze jej také často detekovat sledováním výkonu systému; kromě toho jsou nevýhodami skrytých kanálů nízký odstup signálu od šumu a nízké datové rychlosti (řádově několik bitů za sekundu). Mohou být také ručně odstraněny ze zabezpečených systémů s vysokou mírou jistoty pomocí zavedených strategií analýzy skrytých kanálů.
Skryté kanály jsou často zaměňovány s používáním legitimních kanálů, které útočí na pseudobezpečné systémy s nízkou mírou důvěry, využívající schémata jako steganografie nebo ještě méně sofistikovaná schémata navržená ke skrytí zakázaných předmětů uvnitř objektů s legálními informacemi. Takové použití legitimních kanálů využívajících schémata skrývání dat nejsou skryté kanály a lze mu zabránit vysoce důvěryhodnými systémy.
Skryté kanály mohou procházet bezpečnými operačními systémy a vyžadují speciální opatření k jejich ovládání. Jedinou osvědčenou metodou monitorování skrytých kanálů je tzv. analýza skrytých kanálů. Bezpečné operační systémy mohou zároveň snadno zabránit zneužití (nebo nelegálnímu) používání legitimních kanálů. Často je analýza legálních cest pro skryté předměty nesprávně prezentována jako jediné úspěšné opatření proti nelegálnímu využívání legálních cest. Protože to v praxi znamená nutnost analyzovat velké množství softwaru, již v roce 1972 se ukázalo, že taková opatření jsou neúčinná [2] . Aniž by to věděli, mnozí věří, že taková analýza může pomoci vyrovnat se s riziky spojenými s legálními cestami.
TCSEC je soubor standardů stanovených ministerstvem obrany USA .
Lampsonova definice skrytého kanálu byla v TCSEC [2] přeformulována , aby odkazovala na to, jak se informace přenášejí z bezpečnější vrstvy do méně zabezpečené. Ve sdíleném výpočetním prostředí je obtížné zcela oddělit jeden proces od účinků, které na operační prostředí mohl mít jiný proces. Skrytý kanál je vytvořen procesem odesílání, který moduluje nějaký stav (jako je volné místo, dostupnost nějaké služby, časový limit spuštění atd.), který může být detekován přijímajícím procesem.
Kritéria definují dva typy skrytých kanálů:
Kritéria, známá také jako Orange Book [3] , vyžadují klasifikaci analýzy skrytého kanálu v paměti jako požadavek pro systém třídy B2 a analýzu časově skrytého kanálu jako požadavek pro třídu B3.
Možnost skrytých kanálů nelze zcela vyloučit, ale lze ji značně snížit pečlivým návrhem a analýzou systému.
Detekce skrytých kanálů může být ztížena používáním charakteristik médií pro legální kanály, které uživatelé nikdy nekontrolují ani neověřují. Například program může otevřít a zavřít soubor specifickým, synchronizovaným způsobem, který může být chápán jiným procesem jako bitová sekvence, a tak tvoří skrytý kanál. Protože je nepravděpodobné, že by se legitimní uživatelé pokusili najít vzor při otevírání a zavírání souborů, může tento typ skrytého kanálu zůstat po dlouhou dobu bez povšimnutí.
Podobným případem je technologie „ port knocking “. Obvykle při přenosu informací není rozložení požadavků v čase důležité a není monitorováno, ale při použití „klepání portů“ nabývá na významu.
Handel a Sanford se pokusili rozšířit perspektivu a zaměřit se na skryté kanály v obecném modelu síťových protokolů. Za základ svých úvah berou model sítě OSI a poté charakterizují prvky systému, které lze použít ke skrytí dat. Přijatý přístup má oproti Handelovi a Sanfordovi výhody, protože ten se zabývá standardy, které jsou v rozporu s některými používanými síťovými prostředími a architekturami. Nebylo také vyvinuto spolehlivé schéma zkratky.
Byly však stanoveny obecné zásady pro skrytí dat na každé ze sedmi vrstev modelu OSI. Kromě toho, že Handel a Sanford navrhli použití vyhrazených polí záhlaví protokolu (což je snadno zjistitelné), navrhli také možnost časování kanálů s ohledem na provoz fyzické vrstvy CSMA/CD .
Jejich práce určuje hodnotu skrytého kanálu podle následujících parametrů:
Byla také prezentována skrytá kanálová analýza, která však nezohledňuje takové problémy, jako jsou: interakce pomocí zmíněných metod mezi uzly sítě, odhad kapacity kanálu, vliv, který má skrývání dat na síť. Kromě toho nelze v praxi plně odůvodnit použitelnost metod, protože model OSI jako takový v živých systémech neexistuje.
Girling byla první osobou, která analyzovala skryté kanály v prostředí LAN. Jeho práce se zaměřuje na lokální sítě (LAN), ve kterých jsou definovány tři zdánlivě skryté kanály – dva v paměti a jeden v čase. To ukazuje skutečné příklady možných šířek pásma pro jednoduché skryté kanály v LAS. Pro speciální prostředí LAS autor představil koncept interceptoru, který monitoruje akce konkrétního vysílače v LAN. Strany zapojené do skrytého přenosu jsou vysílač a zachycovač. Skryté informace lze podle Girling sdělit kterýmkoli z následujících způsobů:
Konkrétnější přístup zvolil Rowland. Rowland se zaměřením na hlavičky IP a TCP paketu protokolu TCP/IP odvodil správné metody kódování a dekódování pomocí pole identifikace IP a pole počátečního a potvrzovacího pořadového čísla TCP. Tyto metody jsou implementovány v jednoduché aplikaci napsané pro systémy Linux běžící na jádře 2.0.
Rowland jednoduše dokazuje samotnou myšlenku existence skrytých kanálů v TCP / IP a také jejich použití. Podle toho lze jeho práci hodnotit jako praktický průlom v této oblasti. Metody kódování a dekódování, které přijal, jsou ve srovnání s dříve navrhovanými pracemi pragmatičtější. Tyto metody jsou analyzovány s ohledem na bezpečnostní mechanismy, jako je překlad síťových adres firewallem.
Nedetekovatelnost těchto skrytých způsobů přenosu je však sporná. Například v případě, kdy jsou operace prováděny na poli pořadového čísla TCP hlavičky, je přijato schéma, ve kterém je abeceda pokaždé tajně přenášena, ale přesto je kódována stejným pořadovým číslem.
Kromě toho nelze použít pole sekvenčního čísla, stejně jako pole potvrzení, s odkazem na kódování ASCII anglické abecedy, jak bylo navrženo, protože obě pole berou v úvahu příjem datových bajtů souvisejících s určitými síťovými pakety. .
Skrytí dat v balíku protokolu TCP/IP má následující důležité aspekty: