Jak je to s bezpečností u prohlížeče Firefox
11.2.2005 Technická poradna Témata: Technika 841 slov
Včera jsem uveřejnil v rubrice Ve zkratce zprávičku o tom, že prohlížeč Firefox má nějaké problémy s bezpečností. Přiznávám, spěchal jsem, takže jsem nad formulacemi příliš nepřemýšlel. Rovněž jsem se pokoušel vměstnat poměrně složité vysvětlení (jak uvidíte vzápětí) do několika vět srozumitelných pro laiky.
V průběhu dne mi napsalo několik lidí, že to není tak úplně přesné. Uveřejňuji jeden z dopisů v plném znění. Protože ale nemám povolení jeho pisatele, jméno zamlčím. Myslím, že to na kvalitě vysvětlení nic nezmění.
Je to pro laiky technicky dosti náročný text, ale domnívám se, že je asi nutné uvést jej přesně.
Zdravím, několik detailů, protože to, čeho se dopouštíte už málem hranici s FUDem:
Dánská firma Secunia v minulých dnech varovala, že Firefox (stejně, jako prohlížeče Safari či Opera a Konqueror, v podstatě všechny, které používají jádro Open Source Gecko)...
Opera nepoužívá jádro "Open Source Gecko" (ani jádro Gecko, jak se ve skutečnosti jmenuje, i když vím, že to nezní tak úderně) a není s ním vůbec žádným způsobem provázaná. Postiženy jsou prohlížeče podporující a správně (ano, na slově SPRÁVNĚ je důraz) implementující PUNYCODE a s Gecko rendererem jako takovým to nemá žádnou souvislost.
...není schopen správně identifikovat SSL certifikát...
Zmíněná chyba se vůbec netýká identifikace certifikátů, identifikace certifikátů proběhne správné a korektně, k čemuž se dostanu za chvíli.
Hackeři mohou registrovat domenové jméno obsahující určité znaky a předstírat, že jsou legitimní stránkou někoho jiného.
Ano, popis chyby pro typického hamburgerového Joe. Hlavně co nejvíc FUDu, vyděsit, zmást, doplnit slovíčka jako hackeři a ukrást a máme vymalováno, lidi mají paniku rádi. O skutečném problémů naopak neříct ani slovo, stejně by to nikdo nepochopil, že?
Chyba se netýká prohlížeče MS IE.
Ano, protože zmíněný standard MS IE vůbec nepodporuje. S dodatečným pluginem, který je pro přístup na lokalizované domény nutný, se chyba týká rovněž i MS IE.
A pokud by vás náhodou zajímalo, o čem problém skutečně je, když už tedy mezi vypouštěním zpráv na úrovni Blesku nemáte tolik času na studium pozadí problému, tak ve stručnosti - nejedná se o chybu žádného ze zmíněných prohlížečů, jedna se o feature (výbavu, funkci, pozn. vydavatele). Třeba Opera se už vyjádřila, že o problému vědí a nebudou s tím vůbec nic dělat, protože jejich implementace je přesně podle specifikace a nic se s tím ani udělat nedá. Leda změnit samotnou specifikaci.
Jde o name resolution domén v jiných znakových sadách než ASCII, de-facto obejití limitu DNS (hodně nerozumné obejití). Systém se jmenuje IDN a problém nastává ve chvíli, kdy nějaký znak v jiné znakové sadě vypadá úplně stejně jako znak na jiné pozici v jiné znakové sadě. Chyba pak byla demonstrována s registraci falešné domény paypal.com, kde znak na pozici prvního a byl úplně jiný charakter v cyrilice, tudíž se legitimně jednalo o jinou doménu než paypal.com ve znakové sadě ASCII. Jediný problém byl v tom, že zmíněný znak vypadá úplně stejně jako a v ASCII, přitom se o a nejedná. V prohlížečích není vůbec žádná díra a ověření SSL certifikátů proběhne správné, protože ověřujete certifikát pro úplně jinou doménu, než si myslíte. Paradoxně, kdybyste porovnal skutečný certifikát z paypal.com a paypal.com, přijdete na to hned, protože rozdíl mezi certifikáty (jiná data, vydavatel, etc) bude víc než zřejmý. Co se týče opravy, jak v článku uvádíte, žádná oprava se v CVS nenachází a nacházet nebude, protože zatím nikdo nepřišel na to, jak tuto věc řešit. Standartním postupem v Gecko browserech je jít do configu a změnit hodnotu
network.enableIDN = true
na
network.enableIDN = false
čímž se zabrání resolvingu (dohledání IP adresy ke jménu, pozn. vydavatele) lokalizovaných domén, tedy se vypne podpora pro tento standard.
Tak a ani to nebolelo, snad jenom.. Je skutečně nutné, dělat že Zvědavce další Blesk?
Doplnění vydavatele
Děkuji autorovi dopisu za vysvětlení.
Rád bych ještě upřesnil ty opravy v CVS, když už jsme to nakousli. CVS je zkratka pro Concurrent Versions System a je to nástroj pro vývojáře umožňující udržovat jednotlivé verze zdrojových kódů pro aplikaci, na které pracují. CVS adresář bývá přístupný přes internet, díky tomu mohou na jednotlivých modulech pracovat lidé na různých místech světa. Pomocí CVS lze právě opravovaný modul "uzamknout" po dobu úprav a / nebo sloučit změny vložené několika vývojáři. Kdo chce mít nejposlednější verze nějaké aplikace, a to ještě předtím, než byly změny řádně otestovány a vydány jako ucelený balíček, může si přes CVS stáhnout pracovní verzi - často o všem s neodladěnými chybami.
Napsal-li jsem, že opravený Firefox je k dispozici na CVS, týkalo se to opravených dalších chyb, nikoliv té, která vlastně chybou není, jak bylo právě vysvětleno. Stále ještě zbývají tři další. Pro případného zájemce by to ovšem znamenalo zkompilovat si zdrojový text sám, což vyžaduje jistou zkušenost. Rozhodně to není cesta pro běžné uživatelé internetu. Předpokládám, že nová verze Firefox s opravenými chybami se objeví v nejbližší době.