ANALÝZA SOFTVÉRU / ZÁVISLOSTI

Analýza závislostí a dodávateľského reťazca

Zistite, z akých komponentov sa váš softvér skladá a ktoré z nich pre vás predstavujú skutočné riziko. Analýza oddelí zraniteľnosti, ktoré sa vás týkajú, od tých, ktoré sú len v zozname.

Bezpečnostná analýza softvéruAnalýza závislostí a dodávateľského reťazca
Pre koho
Softvérové firmy a odberatelia softvéru, ktorí potrebujú prehľad o komponentoch alebo SBOM pre zákazníka.
Čo rieši
Zraniteľné a neudržiavané knižnice, nejasný pôvod komponentov a slabé miesta v zostavení.
Ako pomôžeme
SCA s overením relevancie, príprava alebo kontrola SBOM a odporúčania k aktualizáciám a procesu.
PREHĽAD

Na čo sa analýza závislostí zameriava

Orientačný pohľad, nie meranie: 3 hlavná oblasť, 2 bežná súčasť, 1 kontext alebo podľa rozsahu, 0 mimo bežného rozsahu.

Na čo sa analýza závislostí zameriava
OblasťÚroveň
Návrh a hranice dôvery okrajovo
Autentifikácia a autorizácia mimo rozsah
Vstupy a spracovanie údajov okrajovo
Obchodná logika mimo rozsah
Tajomstvá a kryptografia okrajovo
Závislosti a zostavenie hlavné zameranie

Prevzatý kód je súčasťou vášho produktu

Aplikácie stoja na open-source knižniciach, frameworkoch a kontajnerových obrazoch. Ich chyby aj licencie sa stávajú súčasťou vášho produktu, aj keď ste ich sami nenapísali.

Analýza závislostí odpovedá na tri otázky: čo v softvéri skutočne je, ktoré komponenty majú známe zraniteľnosti či iné riziká a ktoré z nich sa vás naozaj týkajú.

  • Priame aj tranzitívne závislosti aplikácie.
  • Kontajnerové obrazy a základné systémové balíky podľa rozsahu.
  • Vek, údržba a pôvod komponentov.
  • Známe zraniteľnosti a ich relevancia pre vaše použitie.
  • Prehľad licencií ako podklad pre vaše právne posúdenie.

Výstup nástroja overíme v kontexte

Nástroje na analýzu zloženia softvéru (SCA) porovnajú komponenty s verejnými databázami zraniteľností, napríklad OSV. Ich výstup býva dlhý a obsahuje aj zistenia bez praktického dopadu. Pri významných položkách preto overujeme, či je zraniteľná funkcia dosiahnuteľná, ako je komponent nastavený a či existuje bezpečná verzia.

Ak to rozsah zahŕňa, posúdime aj cestu od zdrojového kódu k vydaniu: odkiaľ sa závislosti sťahujú, ako sú fixované verzie, kto môže meniť zostavenie a ako sú chránené tajomstvá v CI. Orientačne vychádzame z OWASP SCVS a z odporúčaní NIST SSDF pre bezpečný vývoj. Nejde o certifikáciu ani formálne posúdenie zhody.

SBOM pripravíme, alebo skontrolujeme

Software Bill of Materials (SBOM) je strojovo čitateľný zoznam komponentov softvéru. Niektorí odberatelia ho vyžadujú ako súčasť dodávky. Pomôžeme ho pripraviť alebo overiť, či zodpovedá skutočne zostavenej verzii.

Pracujeme s otvorenými formátmi CycloneDX (ECMA-424) a SPDX (ISO/IEC 5962:2021). Formát a úroveň detailu prispôsobíme požiadavke vášho zákazníka alebo internému procesu.

Úplnosť

Obsahuje SBOM aj tranzitívne závislosti a komponenty pridané pri zostavení?

Presnosť

Zodpovedajú verzie a identifikátory komponentov skutočne vydanej verzii?

Udržateľnosť

Vzniká SBOM automaticky pri každom zostavení, alebo len jednorazovo?

Typické zistenia

Zraniteľné verzie

Komponenty so známou zraniteľnosťou, pre ktoré existuje opravená verzia.

Neudržiavané komponenty

Knižnice bez aktívnej údržby alebo s nejasným vlastníkom.

Nefixované verzie

Závislosti sťahované bez pevnej verzie alebo kontroly integrity.

Slabé zostavenie

Široké oprávnenia v CI, nechránené tajomstvá alebo neoverené zdroje balíkov.

Výstupy a čo od vás potrebujeme

Potrebujeme prístup ku konkrétnej revízii kódu alebo k zostaveným artefaktom, súbory so závislosťami a opis postupu zostavenia. Analýza zachytáva stav v čase vykonania. Nové zraniteľnosti sa objavujú priebežne, preto odporúčame kontrolu závislostí zaradiť do vývojového procesu. Retest a nadväzujúce konzultácie dohodneme podľa ponuky.

  • Prehľad komponentov a zoradené riziká s overenou relevanciou.
  • Odporúčané aktualizácie, náhrady alebo dočasné opatrenia.
  • Pripravený alebo skontrolovaný SBOM v dohodnutom rozsahu.
  • Odporúčania na priebežnú správu závislostí vo vývojovom procese.

Metodické a produktové zdroje

Časté otázky

Kým sa pustíme do práce.

Prečo nestačí výstup nástroja, ktorý už používame?

Nástroj dobre nájde známe zraniteľnosti v komponentoch, nepovie však vždy, či sa vás týkajú. My overíme relevanciu, zoradíme priority a navrhneme konkrétne kroky.

Pripravíte SBOM pre nášho zákazníka?

Áno, v dohodnutom rozsahu a formáte. Požiadavky odberateľa si prejdeme vopred, aby sme určili, čo musí SBOM obsahovať.

Analyzujete aj kontajnerové obrazy?

Ak sú súčasťou rozsahu. Základný obraz a systémové balíky bývajú samostatným zdrojom rizika, preto je vhodné ich zahrnúť.

Je analýza závislostí to isté ako code review?

Nie. Analýza závislostí sa zameriava na prevzaté komponenty, code review na váš vlastný kód. Pre ucelený pohľad ich možno kombinovať.

NEZÁVÄZNÝ PRVÝ ROZHOVOR

Neviete, kde začať? Opíšte nám situáciu.

Nemusíte vedieť, či potrebujete test, technológiu alebo konzultáciu. Podľa opisu situácie navrhneme vhodný ďalší krok.