Vyšlo na iHNed.cz, 7.11.2012
Vytištěno z adresy: http://www.earchiv.cz/b12/b1119002.php3

Balada o zlém bitu

Bezpečnost v celém on-line světě je čím dál tím větším problémem. Přitom existují poměrně jednoduché postupy pro odlišení toho, co je a co není bezpečné. Stačilo by jen dodržovat existující standardy a řešení, konkrétně RFC 3514.

Číst internetové standardy a dokumenty RFC, a hlavně řídit se jimi, se rozhodně vyplácí. Vyplatilo by se to i tvůrcům nejrůznějších bezpečnostních řešení, kteří by už nemuseli vymýšlet kdejaké krkolomné strategie, ve snaze detekovat něčí útok či jiná škodlivá data, a pak je blokovat. Už by se nemuseli uchylovat například k různým technikám "hlubokého zkoumání" paketů (DPI, Deep Packet Inspection), kdy strkají svůj nos hluboko do cizích dat a snaží se z nich něco vykoukat. Snad netřeba dodávat, jak náročné na nejrůznější zdroje to je, i jak je to málo spolehlivé. Nehledě již na aspekty soukromí a ochrany osobních údajů.

Přitom by to mohli dělat úplně jinak. Rychleji, levněji, efektivněji, a také zcela spolehlivě. Nejde totiž o nic nového pod sluncem, a potřeba spolehlivě detekovat každý útok či všechna "zlá" data je stejně stará jako samotné protokoly TCP/IP, na kterých funguje dnešní Internet. A tak není divu, že celý tento problém už je dávno vyřešen - a jeho řešení řádně popsáno tak, jak je v internetové komunitě zvykem. Konkrétně jde o RFC 3514 z roku 2003, které se zabývá právě bezpečností, a to použitím bezpečnostního příznaku v hlavičce IPv4 paketu (v angličtině se jmenuje: The Security Flag in the IPv4 Header).

Myšlenka, na které toto RFC stojí, je přitom geniálně jednoduchá: ten, kdo má nějaký zlý úmysl, je povinen nastavit konkrétní příznak v hlavičce všech IP paketů, které generuje a kterými se snaží své zlé úmysly prosadit. RFC 3514 přesně popisuje, který bit funguje jako takovýto příznak (přezdívaný také "zlý" bit, v angličtině "evil" bit). Pro techničtěji zaměřené čtenáře: je to nejvyšší bit položky, udávající offset fragmentu.

Přínosy popisovaného řešení jsou nabíledni: autoři bezpečnostních řešení mají značně usnadněnou práci, protože jim stačí orientovat se podle uvedeného "zlého" bitu. Díky tomu dokáží spolehlivě odlišit nejrůznější útoky a všelijaká škodlivá data od těch, které jsou třeba jen nějak zvláštní, jiná než obvykle, ale jinak zcela bezpečná.

RFC 3514 samozřejmě detailněji popisuje způsob a okolnosti nastavování "zlého" bitu, i doporučený způsob reakce na něj. Včetně toho, jak má s nastavením "zlého" bitu nakládat mechanismus NAT (při překladu mezi veřejnými a privátními IP adresami), či co se s ním má dít při průchodu nejrůznějšími firewally a dalšími uzly a prvky. Takže zbývá už jen ptát se: proč se toto báječné a jednoduché řešení v praxi nepoužívá?

Pro odpověď nám schází ještě jedna drobná, ale zato velmi důležitá kostička do celkové mozaiky: datum vydání onoho standardu RFC 3514. Vyšlo na prvního apríla roku 2003, a je skutečně aprílovým žertem. A jen dokládá, že i dokumenty RFC mohou mít obsah různého charakteru.

Některé dokumenty RFC jsou svou povahou standardy. Nejpočetnější skupinou jsou ale dokumenty informačního charakteru, a dokumenty popisující doporučené postupy (tzv. best practices). Naopak nejméně početnou skupinou jsou taková RFC, která vychází vždy na prvního apríla a slouží právě a pouze k pobavení. A svým způsobem dokazují, že i autoři tak vážných věcí, jakými jsou protokoly TCP/IP a celý dnešní Internet, mají smysl pro humor a dokáží se i bavit.

Tedy, ne vždy a ne úplně všichni. Autor popisovaného aprílového RFC 3514, pan Steve Bellowin, shromáždil a zveřejnil některé reakce na svůj výtvor (zde). A mezi nimi jsou i reakce zcela nechápavé, které se velmi podivují nad tím, co to autor píše za nesmysly. Pocházejí přitom i od osob z počítačové branže, dokonce od největších softwarových firem. Možná by mohly posloužit jako inspirace k sepsání nového RFC, tentokráte o "hloupém" bitu. I ten by se dnes velmi hodil, pro mnohý dnešní obsah, dostupný na Internetu.