Nové nebezpečí pro nové browsery?

Obávám se, že se schyluje k potenciálnímu vážnému globálnímu browserovému problému. Ale možná bych měl nejdřiv upozornit, že "globálním" ten problém bude pouze pokud a) většina návštěvníků Internetu bude používat Mozillu Firefox nebo b) většina browserů bude podporovat "uživatelské skripty".

Obávám se, že se schyluje k potenciálnímu vážnému globálnímu browserovému problému. Ale možná bych měl nejdřiv upozornit, že „globálním“ ten problém bude pouze pokud a) většina návštěvníků Internetu bude používat Mozillu Firefox nebo b) většina browserů bude podporovat "uživatelské skripty

O skvělé extenzi pro Firefox jménem GreaseMonkey (GM) už jsem se rozepisoval. Můžete si díky ní do počítače instalovat skripty, které se pak budou provádět po natažení stránky z Internetu a mohou ji libovolně modifikovat. Potenciál je obrovský.

Jeden z „defaultních“ skriptů pro GreaseMonkey se jmenuje „linkify“. Vyhledává na WWW stránce kusy textu, které vypadají jako internetové odkazy a mění je v „pravé“ odkazy. To je jistě záslužné. Ale pak si jistý člověk všiml, že jeho vlastní stránky, na kterých předvádí triky s DOM (Document object model), dělají psí kusy. A chvíli mu trvalo, než přišel na to, že za to může právě skript „linkify“, který došel k názoru (nesprávnému), že jisté části zdrojového textu na stránkách jsou internetové odkazy a podle toho se je snažil upravovat.

Tvůrce stránek zareagoval tak, že na své stránky přidal kratičký skript (viz odkaz výše), který na nich zablokoval funkčnost extenze GreaseMonkey (celé, nikoliv jen skriptu „linkify“). Pokud znáte Javscript, princip „zablokování“ vám bude jasný.

Podobným způsobem by se před GM mohli „bránit“ i tvůrci online reklamy nebo kdokoliv jiný. Nejnovější Firefox (a Opera) ovšem umožňují „obejít toto obejití“ a modifikovat zdrojový kód uživatelským skriptem dříve, než se dostane ke slovu jakýkoliv skript na původní stránce. Tím sice „uživatel vítězí“, ale vzniká potenciál pro velké problémy: totiž pro spyware, adware nebo dokonce pro klasické viry, dostávající se do vašeho počítače prostřednictvím extenzí browseru.

Uživatelský skript ve Firefoxu a Opeře má (resp. brzy bude mít) možnost jakkoliv měnit jakoukoliv stránku. Kromě toho může (už teď) stahovat data odkudkoliv a také je tam posílat. Kromě toho může zapisovat data na váš harddisk a číst z něj (jestli je zde nějaký sandboxing a jak snadno se dá obejít, to vám ovšem neřeknu).

Již dlouho je tu možnost, že někdo vytvoří extenzi, která se bude tvářit, že dělá něco užitečného, ale přitom páchá neplechu. S příchodem GM (a ekvivalentů) se ale situace stává mnohem nebezpečnější, protože uživatelské skripty se dají vytvářet mnohem snáze než extenze a jistě jich také bude k dispozici mnohem víc a nebudou „centralizovány“ tolik jako extenze pro Firefox. Kromě toho, v dosavadním bezpečnostním modelu „browser zajišťuje, aby extenze nenadělala neplechu“ se hledaly díry mnohem hůř, než v novém bezpečnostním modelu „browser zajišťuje, že extenze zajišťují, že jimi spouštěné uživatelské skripty nebudou dělat neplechu“.

EBF16

Když si představuji scénáře jako „zákeřná extenze napadne GM a upraví ji, aby se nedala standardně odinstalovat a dělala neplechu v dalších skritpech“, nebo „budete si muset instalovat antivirové extenze, abyste osdstraňovali virové extenze“, nebo dokonce „jistá WWW stránka dělá neplechu ve vašem počítači, protože využívá chybu v jistém oblíbeném uživatelském skriptu“ začíná mi to nebezpečně připomínat kritickou situaci, do které se browserová bezpečnost dostala díky Windows a Microsoft Internet Exploreru (MSIE).

Ale jak už jsem psal, ta „krize“ nastane ve chvíli, kdy se MSIE buď přestane používat, nebo bude nějak standardně podporovat uživatelské skripty. A do té doby třeba ještě někdo na něco přijde…

34 názorů Vstoupit do diskuse
poslední názor přidán 15. 6. 2005 12:17

Školení Jak vytvořit rychle jednoduchý web

  •  
    Jak mít na Internetu blog.
  • Jak si založit web na Wordpressu.
  • Jak pokračovat v jeho provozování.

Detailní informace o školení Jak vytvořit rychle jednoduchý web »