Overte, čo vstupuje do vydania
DokončenéPreskúmajte závislosti, vstupy zostavenia a pôvod artefaktu. Prepojte skontrolovaný zdrojový kód so softvérom, ktorý sa dostane do produkcie.
Vydáva TaigaAko píšeme
Overte si porozumenieSken závislostí nehlási žiadne známe zraniteľnosti. Čo to preukazuje?Vykonajte cvičenie
Čo sa naučíte
- Rozlišovať inventár závislostí od bezpečnostných dôkazov.
- Vysvetliť, prečo názov balíka a úspešná inštalácia nestačia.
- Vysledovať artefakt k jeho zdroju a procesu zostavenia.
Pýtajte sa, či je závislosť potrebná
Agent môže navrhnúť balík, ktorý zdanlivo rieši problém. Jeho odporúčanie je návrhom, nie dôkazom, že balík existuje alebo je vhodný. Pred inštaláciou overte presný register, vydavateľa, názov balíka a verziu.
Pri fiktívnom CSV exporte už môže požadované správanie poskytovať runtime. Nový balík môže byť aj tak vhodný, ale pridáva údržbu a ďalšie cesty vykonávania kódu. Porovnajte náročnosť implementácie s priebežnými povinnosťami závislosti.
Preskúmajte licenciu a podporovaný runtime. Skontrolujte aktivitu údržby a relevantné bezpečnostné oznámenia. Známy názov môže v inom registri označovať odlišný balík. Úspešná inštalácia ukazuje iba to, že sa inštalácia dokončila.
Preskúmajte správanie pri inštalácii a zostavení
Závislosti môžu spúšťať kód počas inštalácie alebo zostavenia. V týchto prostrediach obmedzte prihlasovacie údaje a sieťový prístup. Nesprístupňujte produkčné tajné údaje úlohe, ktorá spracúva nedôveryhodný pull request.
Ak to ekosystém podporuje, použite lockfile uložený v repozitári. Vyžadujte, aby ho zostavenie rešpektovalo. Zmeny lockfile kontrolujte spolu so zmenou zdrojového kódu vrátane neočakávaných tranzitívnych balíkov. Pripnutie verzií zlepšuje reprodukovateľnosť, ale nerobí zraniteľnú verziu bezpečnou.
NIST SSDF pokrýva ochranu softvéru a vývojové postupy počas celého životného cyklu. Tento širší pohľad použite pri návrhu prostredia zostavenia. Prečítajte si rámec.
Rozlišujte inventár a pôvod
Software bill of materials, alebo SBOM, zaznamenáva komponenty softvéru. Pomáha určiť dotknuté vydania, keď sa komponent stane problematickým. Sám osebe nepreukazuje, že sú komponenty bezpečné.
Provenance opisuje, ako bol artefakt vytvorený. SLSA definuje formát provenance pre informácie o zostavení a jeho vstupoch. Overenie musí tieto informácie prepojiť s dôveryhodným tvorcom a artefaktom, ktorý chcete použiť. Súbor s názvom „provenance“ nestačí. SLSA provenance.
Pre exportnú službu zaznamenajte reťazec, ktorý možno preskúmať:
- Skontrolovaný commit určuje prijatý zdrojový kód.
- Zostavenie určuje svoje vstupy a prostredie vykonávania.
- Artefakt má stabilný digest.
- Kontroly určujú artefakt alebo zdrojový kód, ktorý preskúmali.
- Záznam nasadenia určuje artefakt umiestnený do cieľového prostredia.
Po schválení nevykonávajte odlišné zostavenie bez definovaného procesu overenia. Meniteľný tag, napríklad latest, môže neskôr odkazovať na iný obraz.
Rozhodnite, čo zistenie znamená
Zistená zraniteľnosť potrebuje kontext: dotknutú verziu, dosiahnuteľné správanie, vystavenie riziku, dostupnú opravu a dôsledok. Zaznamenajte dôkazy pre každú dočasnú výnimku. Určte jej zodpovednú osobu, koniec platnosti a podmienku opätovnej kontroly.
Nevypínajte celý skener preto, že jedno zistenie nie je relevantné. Netvrďte, že je výsledok čistý, ak sa sken nedokončil. Časový limit, nepodporovaný balík alebo nedostupný zdroj bezpečnostných oznámení znamenajú chýbajúce dôkazy.
Napokon naplánujte aktualizácie po vydaní. Nové bezpečnostné oznámenia môžu ovplyvniť včera prijatý artefakt. Osoba zodpovedná za službu potrebuje inventár, proces reagovania a kapacitu na vytvorenie opraveného vydania.
Pokračujte lekciou priebežného riadenia zraniteľností, ktorá prepája opakované skeny s overenými produkčnými opravami.
Vykonajte cvičenie
Vyberte fiktívnu zmenu CSV exportu, ktorá pridáva balík. Napíšte záznam o prijatí pokrývajúci potrebu, presnú identitu balíka, verziu, licenciu, údržbu, zistené zraniteľnosti a správanie pri inštalácii. Nakreslite cestu od skontrolovaného commitu k nasadenému artefaktu.
Stiahnuť pracovný list (Markdown)Zrušenie tohto výberu vymaže celý postup uložený v tomto prehliadači.
Postup zostáva v tomto prehliadači. Bez účtu a sledovania.