Newsletter 365tipů můžete číst zdarma. Placené předplatné je dobrovolná podpora, která pomáhá webu pokračovat.
Podpořit 365tipů

TIP#3246: Co je to Supply Chain Attack

Aktuálně více a více důležité téma. Útok na dodavatelský řetězec. Jeden z mnoha nástrojů hackerů a zlodějů, který umožňuje poněkud “oklikou” získat něco (možná) přímo nezískatelné.

Útočník nenapadne přímo vás, ale něco nebo někoho, komu důvěřujete: dodavatele softwaru, aktualizaci, knihovnu, plugin, cloudovou službu, správce IT, balíčkovací repozitář, build server, CDN skript, firmware, instalační balíček nebo účet vývojáře.

Nebezpečí je v důvěře. Program, aktualizace nebo služba může vypadat zcela legitimně, být podepsaná, stažená z oficiálního webu a přesto obsahovat škodlivý kód nebo otevřít cestu k útoku. NIST popisuje Cybersecurity Supply Chain Risk Management jako řízení rizik kompromitace napříč dodavatelským řetězcem a zdůrazňuje identifikaci, hodnocení a zmírňování těchto rizik na všech úrovních organizace.

Definice: Supply Chain Attack je útok přes důvěryhodný mezičlánek. Místo aby útočník lámal vaše heslo nebo útočil přímo na váš počítač, kompromituje software, aktualizaci, knihovnu, plugin, dodavatele nebo službu, kterou používáte. Vy si pak škodlivý kód nebo riziko přinesete sami, často z oficiálního zdroje.

Proč je to malér

Útok přichází „důvěryhodnou cestou“ – U běžného malwaru často varujete před pochybnou přílohou, warezem nebo divným webem. U supply-chain útoku ale škodlivý kód může přijít jako aktualizace legitimního programu, knihovna v projektu, plugin ve WordPressu, rozšíření prohlížeče nebo firemní nástroj.

Umí to obejít běžnou opatrnost uživatele: „vždyť jsem to stáhl z oficiálního webu“, „vždyť je to automatická aktualizace“, „vždyť to používají všichni“. Běžný uživatel často nemá šanci poznat, že je problém v dodavateli. Tady nestačí „neklikat na podezřelé odkazy“.

Typy supply-chain útoků

Kompromitovaná aktualizace softwaru – Útočník pronikne do vývojového, build nebo distribučního procesu dodavatele a do legitimní aktualizace vloží škodlivý kód. Jeden z největších malérů v minulosti? SolarWinds, kde útok vložil zranitelnost SUNBURST do platformy Orion. 

Škodlivá open-source knihovna, balíček nebo závislost – Aplikace dnes často nestojí jen na vlastním kódu, ale na stovkách knihoven a závislostí. Stačí, aby se problém dostal do jedné z nich. Vývojář může použít balíček z npm, PyPI, Maven, Composeru nebo GitHubu a ani netušit, že si přidal riziko. U xz Utils / CVE-2024-3094 byl v upstream tarballech od verze 5.6.0 objeven škodlivý kód, který přes složitě maskovaný build proces upravoval liblzma. NVD popisuje, že takto upravená knihovna mohla ovlivnit software, který ji používal.

Typosquatting, dependency confusion, falešné balíčky – Útočník vytvoří balíček s názvem podobným známému balíčku, případně využije záměnu mezi interním a veřejným repozitářem. Stačí překlep, špatná konfigurace package manageru nebo build proces, který sáhne do veřejného repozitáře místo interního.

Kompromitovaný plugin, šablona, rozšíření prohlížeče – Útok přes doplněk, který uživatel nebo správce dobrovolně nainstaloval: WordPress plugin, rozšíření Chrome/Firefoxu, doplněk e-shopu, šablona, analytický skript. Doplňky mají často přístup k citlivým datům: cookies, obsahu stránek, administraci webu, objednávkám, uživatelským účtům.

Kompromitovaný dodavatel služby, MSP, cloud nebo outsourcing – Útočník nenapadne přímo firmu, ale správce IT, účetní systém, helpdesk, cloudovou službu, marketingový nástroj, správce webu nebo externí agenturu. Dodavatel může mít větší práva než běžný zaměstnanec. Někdy má VPN přístup, administrátorský účet, API tokeny, přístup do CRM nebo k zákaznickým datům.

Kompromitovaný build systém, CI/CD, podpisové klíče – Útočník se dostane k procesu, kterým se software sestavuje, testuje, podepisuje a vydává. 

CDN, externí JavaScript, reklama a měřicí kódy – Web načítá skripty od třetích stran: analytika, chat widget, reklama, platební brána, A/B testování, CDN knihovna. Cizí JavaScript běžící na vašem webu může vidět nebo ovlivnit obsah stránky. U e-shopu nebo formulářů to může být velmi citlivé.

Co není přesně supply-chain attack, ale často se s tím plete

Zranitelnost v populárním softwaru. Log4Shell nebo MOVEit jsou často uváděné vedle supply-chain témat. U MOVEit CISA popsala zneužívání zero-day zranitelnosti CVE-2023-34362 ve file-transfer softwaru Progress MOVEit skupinou CL0P. To je typický příklad systémového dodavatelského rizika: jedna zranitelná služba u dodavatele či v organizaci může dopadnout na mnoho dalších subjektů, ale není to totéž jako škodlivý kód vložený do legitimní aktualizace.

Výpadek dodavatele. Když dodavatel pokazí aktualizaci a shodí systémy, může jít o supply-chain incident nebo provozní riziko, ale ne nutně o útok. Ne každý průšvih dodavatele je útok, ale každý kritický dodavatel je riziko.

Phishing přes známou službu. Když přijde podvodný e-mail z kompromitovaného účtu partnera, je to kompromitace důvěryhodného vztahu, ale supply-chain attack to bude hlavně až tehdy, pokud je zneužit dodavatelský vztah, software, služba nebo distribuční cesta.