Útok na dodavatelský řetězec

Útok, který necílí na vaši aplikaci, ale na některou z knihoven, nástrojů nebo služeb, ze kterých je poskládaná. Škodlivý kód se do vašeho projektu dostane běžnou aktualizací závislosti.

Co to znamená

Útok na dodavatelský řetězec (anglicky supply chain attack) nemíří na vaši aplikaci přímo. Míří na něco, čemu vaše aplikace bez ptaní důvěřuje: na open source knihovnu, na nástroj v sestavovací lince, na rozšíření editoru nebo na účet člověka, který některý z těch balíčků spravuje. Jakmile útočník ovládne jedno takové místo, dostane se škodlivý kód ke všem, kdo si danou verzi stáhnou, a to úplně běžnou cestou, přes instalaci závislostí.

Typický postup má tři kroky: útočník získá kontrolu nad balíčkem (phishingem na správce, převzetím opuštěného projektu nebo dlouhodobým budováním důvěry v komunitě), vydá novou verzi se skrytým kódem a čeká, až si ji projekty stáhnou při rutinní aktualizaci. Zvlášť účinné to je u balíčků, které se spouštějí už při instalaci, tedy dřív, než kdokoli spustí samotnou aplikaci.

Proč to řešit

Dnešní aplikace se skládají ze stovek cizích balíčků, z nichž drtivou většinu nikdo ve vašem týmu vědomě nevybral. Plocha, kterou musíte hlídat, tak není velikost vašeho kódu, ale velikost všeho, co si pod sebou táhne. Klasická obrana v podobě revize kódu nebo penetračního testu tenhle typ rizika nezachytí: revize prochází změny, které napsal váš tým, a test zkouší aplikaci, která v tu chvíli běží bez škodlivé verze. Podrobný rozbor i konkrétní opatření popisuje článek Skrytá hrozba ve vašem kódu.

Bezpečnost dodavatelského řetězce navíc není jen dobrá praxe. Pro organizace spadající pod NIS2 je výslovnou povinností, včetně evidence komponent (SBOM) a ověřování integrity závislostí.

Kontakt

Pojďte s námi rozjet vaše podnikání

Chcete s námi začít projekt nebo máte otázky? Napište, zavolejte nebo si s námi domluvte online schůzku!