Výpadky webov po celom svete súviseli s opravou kritických chýb v PHP
Používatelia sa počas uplynulých dní a možno aj v nasledujúcich dňoch mohli stretnúť s nepríjemným javom. Mnohé popredné webové stránky a služby vrátane operátorov, štátnych webov či spravodajských portálov mali väčšie či menšie výpadky, typicky na jednu až dve hodiny. Nebolo to samoúčelné a nešlo ani o lavínový hackerský útok.
Administrátori týchto webov v rámci krátkodobých výpadkov aplikovali bezpečnostné aktualizácie. Tie plátali dvojicu závažných bezpečnostných chýb v PHP. Ich zneužitie môže viesť k úspešnému útoku na dané weby alebo zariadenia. Odporúča sa, ak sa tak ešte nestalo, aplikovať aktualizácie čo najskôr.
Zraniteľnosti PHP2Shell zasiahli kritické časti jazyka
Dvojica závažných zraniteľností, ktoré bezpečnostná firma Hadrian nazvala „PHP2Shell“, sa nachádzala v kritických častiach jazyka, ako je správa pamäte a spracovanie chýb. „Tieto kľúčové časti PHP robia zraniteľnosti mimoriadne vážnymi a ich oprava je náročná bez ovplyvnenia kompatibility či výkonu,“ uviedlo PHP.
PHP je open-source skriptovací jazyk, ktorý sa používa pri vývoji približne 70 % svetových webových stránok. Tento viac ako 30 rokov starý jazyk je základom populárnych platforiem ako WordPress, ale aj veľkých stránok ako Wikipedia či Facebook. Mnohé vlády vrátane austrálskej využívajú platformu Drupal postavenú na PHP pre stovky oficiálnych webov, napríklad GovCMS.
NSA (Národná bezpečnostná agentúra USA) varovala, že tieto diery môžu umožniť poškodenie pamäte webu prostredníctvom škodlivej požiadavky, čím by útočníci získali priamy prístup k súborovému systému alebo databáze servera. Mnohí bezpečnostní experti uviedli, že odhalené zraniteľnosti v PHP patrili k najväčším a najzávažnejším minimálne za posledné mesiace.
Volker Dusch, bezpečnostný inžinier z nadácie spravujúcej PHP, išiel ešte ďalej. Označil túto chybu za najvážnejšiu hrozbu pre túto technológiu za posledných viac ako desať rokov. Porovnal ju s Heartbleedom, známou zraniteľnosťou, ktorá pred rokmi prinútila správcov státisícov serverov po celom svete rýchlo implementovať bezpečnostné opatrenia. Na nezaplátaných serveroch umožňuje v niektorých prípadoch spustiť neautorizovaný kód už za pár sekúnd.
Pri odhalení chýb zohrala dôležitú úlohu umelá inteligencia
Zaujímavý príbeh sa viaže aj k samotnému odhaleniu bezpečnostných chýb. Dôležitú rolu tu zohrala umelá inteligencia. Tá nielen slúži útočníkom, ale samozrejme aj tvorcom programov či služieb. Príkladom je napokon aj Microsoft. Spoločnosť po nasadení AI nástrojov výrazne zvýšila objem odhalených chýb, pričom AI často našla aj veľmi staré zraniteľnosti nezaplátané i 10-20 rokov. Dôkazom je napokon aj októbrová nádielka bezpečnostných opráv. V rámci takzvaného Patch Tuesday sa plátalo vyše 1 400 chýb.
Podobná situácia nastala aj pri chybách v PHP. Na zraniteľnosť konkrétne narazil Ryan Austin, výskumník zo spoločnosti Calif, počas augustového auditu zdrojového kódu PHP. Pri tom využil GPT-5.6 Sol. Podľa zistení táto chyba existovala v kóde už roky, pričom jeden z výskumníkov ju zaznamenal už pred desiatkami rokov, no vtedy sa považovalo za príliš náročné ju prakticky zneužiť. Umelá inteligencia však ukázala, ako ju efektívne využiť.
Ryan Austin zistil, že kontrolu nad kódom vykonávaným v pamäti počítača možno získať po niekoľkých desiatkach požiadaviek na server. V jednoduchších systémoch trvá útok len pár sekúnd, v zložitejších môže zabrať niekoľko hodín. Na zabezpečení pracovala neformálna skupina výskumníkov a programátorov spolu s distribútormi softvéru a firmami z oblasti kybernetickej bezpečnosti.
Neskôr vlastné metódy útoku predložil tím bezpečnostných expertov Wiz z Google, ktorý nezávisle od Calif objavil rovnaký problém. Svoje poznatky poskytli aj výskumníci z OpenAI, v rámci programu „Patch the Planet“. Ami Luttwak, spoluzakladateľ Wiz, označil PHP2Shell za najnebezpečnejšiu zraniteľnosť doposiaľ odhalenú s pomocou AI. Podľa neho by bez umelej inteligencie bolo jej odhalenie takmer nemožné vzhľadom na zložitosť problému.
Oprava zasiahla takmer 200 súborov
Výskumníci držali informácie v tajnosti, obávajúc sa, že hacker s AI by mohol chybu objaviť skôr, než bude zabezpečenie hotové. Oprava zasiahla takmer 200 súborov a vývojári napísali viac ako 10 000 nových riadkov kódu. Verejné zverejnenie k chybám bolo plánované na 22. október, no informácie sa začali šíriť na fórach a sociálnych sieťach už od 18. či 19. októbra, čo napokon prinútilo oznámenie urýchliť.