Přejít k navigační liště

Zdroják » Webdesign » Služba Polyfill.io byla napadena hackery

Služba Polyfill.io byla napadena hackery

Články Webdesign

Používáte službu polyfill.io? Nedávno došlo k rozsáhlému zneužití této služby. Namísto distribuce oblíbené knihovny Polyfill.js začala služba odesílat podvržený kód, který přesměrovával návštěvníky na nežádoucí stránky.

Pokud vaše webové stránky používají službu polyfill.io, okamžitě ji odstraňte a teprve poté se vraťte ke čtení tohoto článku. Nedávno totiž došlo k masivnímu zneužití této služby čínskými hackery, kteří infikovali více než 110 000 webových stránek škodlivým kódem.

Co je to polyfill?

Polyfill je kus kódu (většinou JavaScript), který implementuje funkce, které nejsou nativně podporovány ve všech webových prohlížečích. To umožňuje webovým vývojářům používat nejnovější standardy JavaScriptu nebo CSS bez nutnosti starat se o kompatibilitu napříč různými prohlížeči. Polyfill tak zajišťuje, že moderní webové aplikace mohou plně využívat pokročilé funkce a technologie, aniž by byly omezeny nedostatečnou podporou starších nebo méně používaných prohlížečů.

Nejznámější knihovnou, která dokáže automaticky detekovat prohlížeč a „dolepit” do něj nové funkcionality, je open source knihovna Polyfill.js. Tato knihovna vznikla kolem roku 2010 v rámci širšího projektu vývojářů ve Financial Times. Služba Polyfill.io (záměrně bez odkazu) patřila k nejoblíbenějším veřejným CDN poskytujícím právě tuto knihovnu.

<script src="//cdn.polyfill.io"... // tak snadné to bylo

Podvržený kód

Jak již bylo řečeno službu Polyfill.io využívá přes 110 000 webů všemožně na světě. Začátkem tohoto roku (24. února 2024) převzala vlastnictví domény polyfill.io čínská společnost Funnull. Tehdy původní majitelé projektu varovali uživatele, aby nástroj okamžitě odstranili, protože nemohou nadále garantovat její bezpečnost. Více se dozvíte v archivu, protože původní GitHub issue bylo dávno smazáno novým majitelem.

V dubnu 2024 došlo k prvnímu incidentu, kdy byla doména Polyfill.io zneužita k distribuci malware. Hackeři změnili DNS záznamy a přesměrovali provoz cdn.polyfill.io na servery obsahující škodlivý kód.

Chování tohoto malware, maskujícího se za Google Analytics, bylo následující:

  • Malware nejprve provedl kontrolu, zda je uživatel na mobilním zařízení. Pokud ano, došlo po čase k přesměrování z původního webu na škodlivou webovou stránku (např. se sázkami na sport)
  • Kód se aktivoval jen v určitý čas, aby znesnadnil automatickou detekci a odhalení.
  • Malware se také pokoušel rozpoznat administrátora, případně vybrané analytické nástroje a včas se deaktivoval.
  • Vše se odehrávalo prostřednictvím falešné domény https://www.googie-anaiytics.com

Před použitím této služby začali varovat jak GitHub tak Cloudflare nebo Google a blokují je některá rozšíření jako například uBlock. Na problém upozorňuje stránka https://polykill.io

Co udělat?

Moderní prohlížeče a webové aplikace již takové knihovny obvykle nepotřebují. Pokud přesto nějakou funkci Polyfill potřebujete, doporučuji přejít na nějakou bezpečnější konkurenci například od společnosti Cloudflare nebo Fastly. Obě tyto služby provozují renomované a důvěryhodné společnosti.

Komentáře

Odebírat
Upozornit na
guest
5 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
Zobrazit všechny komentáře
adam

Ne,nenapadli 100000 webů, to jen pošetilích 99000 webmásrů bezmyšlenkovitě includnulo 3rd party js

A přitom stačilo buď dát atribut hash nebo zkopírovat lokálně

Jak vubec došlo k dns provaru?

Mlocik97

Ja používam NPM, a vždy keď pridávame novú knižnicu alebo aktualizujeme závislosti, tak kontrolujeme v kontajnery kde čo pristupuje, robíme si audit, a hĺbkovú analýzu. A samozrejme vždy kontrolujeme integritu. Ak to niekto nerobí, tak zrejme si o problém koleduje.

Michal Špaček

polyfill.io je služba, nejen knihovna, má různé odpovědi pro různé browsery, nejde kontrolovat integrita. Nepoužívá se přes npm. Všechno co děláte je sice fajn, ale pro polyfill.io to použít nejde/nešlo.

Michal Špaček

Bohužel nestačilo přidat hash atribut integrity ani zkopírovat lokálně ta knihovna nešla, protože polyfill.io byl/je „služba“: různým prohlížečům vrací různou odpověď podle toho co zrovna ten daný prohlížeč potřebuje polyfillnout.
Takže teoreticky pro každý browser mohla být jiná odpověď a tím pádem i jiný hash. Skoro mám pocit že tuhle doménu si nevybrali náhodou :-) Sice jde/šlo tu službu self-hostovat, ale doména a GitHub účet patřil té samé firmě, tedy z bláta do louže, bylo tedy potřeba použít nějaký fork, který vznikl až tenhle rok, dlouho poté, co tu službu lidi začali používat. A to už se komplikuje natolik, že by to správně mělo znít spíš „a přitom stačilo v únoru po odhalení prodeje si toho nějak všimnout a tuhle věc přestat používat“.

Přístupnost není jen o splnění norem: nový pohled na inkluzivní design

Přístupnost a inkluze možná nepatří mezi nejžhavější témata digitálního světa – dokud o nich nezačne mluvit Vitaly Friedman. Na WebExpo 2024 předvedl, že inkluzivní design není jen o splněných checkboxech, ale hlavně o lidech. S energií sobě vlastní obrátil zažité přístupy naruby a ukázal, že skutečně přístupný web je nejen možný, ale i nezbytný.

Efektivnější vývoj UI nebo API: Co si odnést z WebExpo 2025?

Různé
Komentáře: 0
Jak snadno implementovat moderní uživatelské rozhraní? Které funkce brzdí rychlost vašeho webu? A kdy raději sami přibrzdit, abychom využitím AI nepřekročili etické principy? Debatu aktuálních dev témat rozdmýchá sedmnáctý ročník technologické konference WebExpo, která proběhne v Praze od 28. do 30. května. Který talk či workshop si rozhodně nenechat ujít? Toto je náš redakční výběr z vývojářských hroznů.

Zapřáhněte AI jako nikdy předtím. Květnová konference WebExpo přivítá hvězdy technologického světa

Od 28. do 30. května 2025 promění pražský Palác Lucerna na tři dny technologická konference WebExpo. Na programu je více než 80 přednášek a workshopů od expertů z celého světa. WebExpo tradičně propojuje vývojáře, designéry, marketéry i byznysové lídry a nabízí praktické dovednosti, strategické myšlení a přináší nejnovější trendy nejen v oblasti AI.