Turinys
„Zero Trust“ – tai revoliucinis požiūris, metantis iššūkį pasenusiai numanomo pasitikėjimo koncepcijai, reikalaujantis nuolatinio tikrinimo ir patvirtinimo. „Zero Trust“ iškyla kaip vilties švyturys labirinte. Software Supply Chain Security (SSCS), kur pasitikėjimas yra subtilus dalykas. Atsisakydamas pasenusių prielaidų, jis įdėmiai žvelgia į kiekvieną vartotoją, įrenginį ir programą, o tai ypač svarbu siekiant užtikrinti programinės įrangos artefaktų ir jų saugyklų vientisumą.saugios programinės įrangos sudedamosios dalysPrisijunkite prie mūsų nepajudinamo saugumo kelionėje, pasinerdami į nulinio pasitikėjimo pasaulį ir SSCS, kur pasitikėjimas užsitarnaujamas, o ne prisiimamas.
Nulinis pasitikėjimas SSCSSaugumo didinimas užtikrinant nepajudinamą sąžiningumą

„Zero Trust“ tapo plačiai pripažinta saugumo sistema. Daugelis organizacijų pritaikė jos principus, siekdamos pagerinti savo saugumo padėtį vis labiau tarpusavyje susijusiame ir sudėtingesniame skaitmeniniame pasaulyje. Remiantis tyrimu. Armis apklausa33 % IT specialistų tikėjosi, kad jų organizacijos 2023 m. įdiegs nulinio pasitikėjimo modelius. Šis požiūris ypač svarbus šioje srityje. SSCS, kur programinės įrangos artefaktų ir jų saugyklų vientisumas yra labai svarbus.
Kai atkreipiame dėmesį į sritį, kurioje Software Supply Chain Security (SSCS), mūsų dėmesys susiaurėja iki programinės įrangos artefaktų ir juos saudančių saugyklų vientisumo. Šioje srityje pasitikėjimas nėra savaime suprantamas dalykas; tai tiesioginė nepajudinamo vientisumo pasekmė. Programinės įrangos artefaktams keliaujant per įvairias saugyklas, nuolat evoliucionuojant ir integruojantis, jie kartu formuoja galutinį produktą.
Šiame sudėtingame procese nepaprastai svarbu užtikrinti nepriekaištingą šių artefaktų ir saugyklų vientisumą, nes būtent šis vientisumas skatina pasitikėjimą.
Nulinio pasitikėjimo modelis daro prielaidą, kad grėsmės gali egzistuoti tiek organizacijos tinkle, tiek jo išorėje, pabrėžiant, kad pasitikėjimas niekada neturėtų būti numanomas.
Pagrindiniai „Zero Trust“ filosofijos principai programinės įrangos tiekimo grandinės kontekste:
- Viską tikrink, niekuo nepasitikėk. Šis principas yra „Zero Trust“ kertinis akmuo ir taikomas ir programinės įrangos tiekimo grandinei. Kiekvienas programinės įrangos artefaktas, nuo šaltinio kodo iki įdiegto dvejetainio failo, prieš jį naudojant turėtų būti patikrintas dėl autentiškumo ir vientisumo.
- Prieiga su mažiausiai privilegijomis. Suteikite vartotojams ir sistemoms tik tokią prieigą, kurios jiems reikia užduotims atlikti. Tai padeda sumažinti atakų paviršių ir užkirsti kelią kenkėjiškiems veikėjams gauti prieigą prie jautrių išteklių.
Nuolatinis stebėjimas ir analizė. Nulinis pasitikėjimas nėra „nustatyk ir pamiršk“ saugumo metodas. Tam reikia nuolat stebėti ir analizuoti programinės įrangos tiekimo grandinę, kad būtų galima nustatyti grėsmes ir į jas reaguoti.
Kaip nulinio pasitikėjimo principą galima įdiegti programinės įrangos tiekimo grandinėje?
Apsauginė priemonė: programinės įrangos gamybos proceso stiprinimas

Norint efektyviai įgyvendinti nulinį pasitikėjimą SSCS, būtinas išsamus gynybos priemonių rinkinys. Norint apsaugoti programinės įrangos gamybos procesą nuo piktavališko klastojimo ir užkirsti kelią žalingų kodo atnaujinimų įdiegimui, reikia pagrindinių gynybos strategijų:
Prieigos kontrolė:
- Įdiekite vaidmenimis pagrįstą prieigos kontrolę (RBAC), kad apribotumėte prieigą prie kodo saugyklų ir sukurtumėte aplinkas pagal vartotojų vaidmenis ir leidimus.
- Naudokite dviejų veiksnių autentifikavimą (2FA), kad sustiprintumėte autentifikavimą ir apsunkintumėte užpuolikams neteisėtos prieigos gavimą.
- Įdiekite prieigą su mažiausiais privilegijomis, kad vartotojai, scenarijai ar integracijos turėtų prieigą tik prie tų išteklių, kurių jiems reikia užduotims atlikti.
Medžiagų pasirašymas:
- Reikalauti pasirašyti visus programinės įrangos artefaktus, kurie diegiami gamybinėje aplinkoje.
- Norėdami patikrinti kiekvieno komponento parašo autentiškumą, naudokite patikimą pasirašymo instituciją (CA).
- Įdiekite automatinį pasirašymo tikrinimą, kad užtikrintumėte, jog visi programinės įrangos objektai būtų pasirašyti prieš juos diegiant.
Įdiegdamos pasirašymą, organizacijos gali sumažinti kenkėjiško kodo patekimo į programinės įrangos tiekimo grandinę riziką.
Kenkėjiško kodo aptikimas:
- Naudokite statinę analizę kenkėjiškam kodui aptikti pipelineir programinės įrangos artefaktus.
- Įdiekite smėlio dėžės ir kitus metodus, skirtus programinės įrangos artefaktams izoliuoti ir analizuoti prieš juos diegiant.
Vientisumo užtikrinimas: programinės įrangos artefaktų grynumo palaikymas

Nulinis pasitikėjimas SSCS apima ne tik kenkėjiškų atakų prevenciją, bet ir programinės įrangos artefaktų vientisumo užtikrinimą per visą kūrimo gyvavimo ciklą, įskaitant:
Kilmės ir patvirtinimo sekimas:
- Įdiegti sistemą, skirtą visų programinės įrangos artefaktų kilmei ir modifikacijoms sekti per visą kūrimo gyvavimo ciklą. Tai galima padaryti naudojant įvairius metodus, tokius kaip blokų grandinės technologija, skaitmeninis vandens ženklas ir maišos pagrindu veikiantys parašai.
- Naudokite kilmės sekimą, kad nustatytumėte ir ištirtumėte įtartiną veiklą programinės įrangos tiekimo grandinėje. Pavyzdžiui, jei programinės įrangos artefaktas modifikuojamas neleistinu būdu, kilmės sekimas gali būti naudojamas modifikacijos šaltiniui nustatyti ir imtis taisomųjų veiksmų.
Stebėdamos programinės įrangos artefaktų kilmę ir modifikacijas, organizacijos gali apsunkinti užpuolikams savo kenkėjiškos veiklos slėpimą. Pavyzdžiui, jei „SolarWinds“ būtų įdiegusi kilmės stebėjimą, būtų buvę lengviau nustatyti kenkėjiško kodo, įterpto į „Orion SDK“, šaltinį.
Atkuriamos versijos:
- Įdiegti atkuriamas kūrimo aplinkas, kurios nuosekliai generuotų identiškus programinės įrangos artefaktus iš to paties šaltinio kodo. Tai galima padaryti naudojant tokius įrankius kaip „Docker“ ir „Packer“, kad būtų sukurtos nekintamos kūrimo aplinkos.
- Naudokite atkuriamus kūrinius, kad patikrintumėte programinės įrangos artefaktų vientisumą kiekviename kūrimo gyvavimo ciklo etape. Pavyzdžiui, galite naudoti kontrolinę sumą, kad patikrintumėte, ar programinės įrangos artefaktas nebuvo modifikuotas nuo jo sukūrimo.
Įdiegdamos atkuriamus kompiliavimo variantus, organizacijos gali sumažinti kenkėjiško kodo įterpimo į programinės įrangos tiekimo grandinę riziką kūrimo proceso metu. Pavyzdžiui, 2020 m. „SolarWinds Orion“ programinę įrangą pažeidė Rusijos kibernetinio šnipinėjimo grupuotė. Užpuolikai sugebėjo į programinę įrangą įterpti kenkėjišką kodą, kuris vėliau buvo išplatintas „SolarWinds“ klientams visame pasaulyje. Ši ataka buvo sėkminga, nes „SolarWinds“ kompiliavimo aplinka nebuvo atkuriama.
Jei „SolarWinds“ būtų įdiegusi atkuriamus kompiliavimo sprendimus, užpuolikai nebūtų galėję į programinę įrangą įterpti kenkėjiško kodo ir nebūtų aptikti.
Artefaktų vientisumo patikrinimas:
Naudokite skaitmeninius parašus ir kriptografinius maišos kodus, kad patikrintumėte programinės įrangos artefaktų vientisumą kiekviename kūrimo gyvavimo ciklo etape. Tai galima padaryti naudojant tokias priemones kaip Xygeni Build Security.
- Naudokite artefaktų vientisumo patikrą, kad aptiktumėte neleistinus programinės įrangos artefaktų pakeitimus. Pavyzdžiui, jei programinės įrangos artefaktas modifikuojamas neleistinu būdu, artefaktų vientisumo patikra aptiks pakeitimą ir sugeneruos įspėjimą.
Įdiegdamos artefaktų vientisumo tikrinimo priemones, organizacijos gali sumažinti kenkėjiško kodo įvedimo į programinės įrangos tiekimo grandinę riziką bet kuriame kūrimo ir pristatymo proceso etape.
Žemiau pateiktas pavyzdys, kaip priemonių derinys gali būti integruotas į CI/CD pipeline:
- 1. Vartotojo autentifikavimasVartotojas prisijungia prie sistemos naudodamas dviejų veiksnių autentifikavimą (2FA), kad būtų užtikrintas didesnis saugumas.
- 2. Vaidmenimis pagrįstos prieigos kontrolės (RBAC) patikrinimas: Šaltinio kodo valdymas (SCM) sistema patikrina, ar vartotojas turi reikiamas teises commit pokyčiai.
- 3. kodas CommitĮgaliotas naudotojas commitnauji kodo pakeitimai saugykloje, suaktyvinantys CI/CD pipeline.
- 4. Atitikties ir kokybės užtikrinimo testavimasKodas yra testuojamas, siekiant nustatyti atitiktį kodavimo reikalavimams. standardir bendras kokybės užtikrinimas.
- 5. Paslaptis ir IaC Nuskaitymas: Geriausios pipeline nuskaito užkoduotas paslaptis, tokias kaip slaptažodžiai ar API raktai, kad būtų išvengta saugumo pažeidimų.
- 6. Kenkėjiško kodo aptikimasStatinės analizės įrankiai nuskaito kodo bazę, ieškodami kenkėjiško kodo modelių, tokių kaip „backdoor“ ar kitos saugumo grėsmės, kad užtikrintų kodo vientisumą ir saugumą.
- 7. Pažeidžiamumo nuskaitymas: Geriausios pipeline nuskaito kodo bazę ir jos priklausomybes, ieškodamas žinomų pažeidžiamumų.
- 8. Parašo patvirtinimasVisų integracijoje naudojamų komponentų parašai yra patvirtinti siekiant užtikrinti autentiškumą ir patikimumą.
- 9. Atestacijos generavimasSėkmingai atlikus visus bandymus, sugeneruojama atestacijos ataskaita, patvirtinanti galutinio produkto saugumą ir vientisumą.
- 10. Produkto platinimo paruošimas: Sertifikuotas produktas yra paruošiamas platinimui galutiniams klientams, užtikrinant, kad jie gautų saugų ir patikrintą produktą.
Prisitaikymas ir universalumas: įvairių aplinkų sistema

Nulinio pasitikėjimo sistema, skirta SSCS turi būti patikimas ir pritaikomas, palaikant įvairias programinės įrangos kūrimo aplinkas – nuo debesijos pagrindu sukurtų mikropaslaugų architektūrų iki tradicinių on-premises sistemos. Laikymasis standard Įrodymų struktūros, tokios kaip metaduomenys ir skaitmeniniai parašai, palengvina sąveikumą ir leidžia sklandžiai integruotis su esamais saugumo įrankiais.
Amžiuje, kai daugėja saugumo pažeidimų ir pažeidžiamumų, nulinio pasitikėjimo paradigmos taikymas kontekste Software Supply Chain Security yra iniciatyvus žingsnis siekiant užtikrinti jūsų programinės įrangos vientisumą ir patikimumą. Integruodamos gynybos priemones ir užtikrindamos vientisumą kiekviename lygmenyje, organizacijos gali sukurti saugias, atsparias ir patikimas programinės įrangos sistemas, apsaugodamos savo skaitmeninį turtą ir stiprindamos savo programinės įrangos tiekimo grandinę nuo galimų grėsmių.
Nulinis pasitikėjimas ir SSCS bendradarbiaudami sukurkite tvirtą pagrindą saugumu grindžiamai strategijai ateityje, kur saugumas yra itin svarbus. Organizacijos gali užtikrintai ir atspariai orientuotis nuolat besikeičiančioje skaitmeninėje ekosistemoje, sutelkdamos dėmesį į sąžiningumą ir pasitikėjimą.







