CrowdStrike zveřejnil důvod chyby, která ochromila IT svět. Způsobil to bug při testování
26.7.2024, Milan Šurkala, aktualita
![CrowdStrike zveřejnil důvod chyby, která ochromila IT svět. Způsobil to bug při testování](crowdstrike-zverejnil-duvod-chyby-ktera-ochromila-it-svet-zpusobil-to-bug-pri-testovani/60949/img/windows-bsod-800.webp)
Před necelým týdnem začaly padat IT systémy po celém světě. Mohl za to bug v bezpečnostním softwaru společnosti CrowdStrike, v důsledku čehož do modré smrti spadlo několik milionů počítačů s Windows. Nyní se už i ví, proč k tomu došlo.
Minulý pátek přinesl celosvětové výpadky nejrůznějších IT systémů, které využívaly bezpečnostní software Falcon společnosti CrowdStrike. Tehdy do známé „modré srmti“ spadlo okolo 8,5 milionu počítačů s operačním systémem Windows, což se dotklo např. letišť, bank a dalších institucí. Společnost CrowdStrike nyní vydala výsledky předběžného [nikoli však finálního] šetření celé události. Podle zprávy za tento globální výpadek mohla chyba při testování softwaru.
Software se dělá na dvě části, Sensor Content a Rapid Response Content. Ten první obsahuje různé modely strojového učení a obsahuje především kód pro dlouhodobé bezpečnostní techniky. Rovněž je jakýmsi rozhraním pro běh druhé části, Rapid Response Content. To si můžeme představit jako jakýsi plugin, který umožňuje softwaru novou funkčnost, aniž by se sahalo na samotný kód hlavní části tohoto softwaru. Veškerý Sensor Content prochází náročným automatickým i manuálním testováním a dalšími validačními kroky.
Problém z 19. července nicméně pramenil z chyby v Rapid Response Content, konkrétně souboru Channel File 291. I tento soubor, který obsahoval postupy pro detekci nových hrozeb (konkrétně zneužití Names Pipes ve Windows, která se používá pro komunikacemi mezi aplikacemi, podobný koncept dobře známe z Linuxu/Unixu), prošel testováním včetně zkoušky využití prostředků, vlivu na výkon a podobně. Channel File 291 byl úspěšně otestován už 5. března, během dubna dostal další tři aktualizace a v praxi s ním nebyly žádné problémy. 19. července však tento soubor dostal další dvě aktualizace, přičemž jedna z nich byla vadná. Problém pak nastal v tom, že Content Validator (testovací software) měl odhalit chybu v aktualizaci, ten sám měl ale v sobě bug, který způsobil, že tuto chybu v souboru neodhalil a pustil ho do v aktualizované (ale vadné) formě do světa. Ta pak ve Windows způsobila chybu „out-of-bounds memory“ (přistupování k neexistující pozici v paměti, zpravidla jde o pokus o přístup k příliš nízké nebo příliš vysoké pozici v bufferu, která v daném kontextu neexistuje) a vyhodila výjimku, což vedlo k pádu.
Společnost nyní hodlá zvýšit kvalitu testování, tedy přidat další kroky pro testy Rapid Response Contentu, rovněž zapracovat na interpretu těchto pluginů tak, aby dokázaly lépe odchytávat podobné výjimky a nezpůsobit pád, pokud by se náhodou stalo, že by měl opětovně neplatná data. Současně by se mělo zpomalit nasazování a to se více rozfázovat, aby se případná chyba dala včas odhalit a nepostihlo to tak velké množství počítačů najednou. Také umožní uživatelům systémů si lépe naplánovat samotné aktualizace.
Zdroj: techradar.com, theverge.com, crowdstrike.com, obrázek (MitrandirLK, PantheraLeo1359531 idk, Public domain, přes Wikimedia Commons)