Sanasto Software Supply Chain Security

Mikä on ohjelmiston toimitusketjun turvallisuus?

Ohjelmiston toimitusketjun turvallisuus tarkoittaa jokaisen osan, prosessin ja työkalun pitämistä turvassa koko ohjelmistokehityksen ajan, ensimmäisestä koodirivistä lopulliseen käyttöönottoon.

Lyhyesti sanottuna, ohjelmiston toimitusketjun turvallisuus auttaa organisaatioita pitämään kaikki ohjelmiston valmistamiseen osallistuvat ihmiset ja asiat turvassa. Tämä estää hyökkääjiä lisäämästä haitallista koodia, varastamasta tietoja tai aiheuttamasta häiriöitä.

Ohjelmiston toimitusketjuun kuuluu koodisi, avoimen lähdekoodin kirjastot, rakennusjärjestelmät, API

, pilviasetukset ja kolmannen osapuolen toimittajat. Koska mikä tahansa osa voi olla kohteena, jokainen niistä on suojattava.

Miksi ohjelmiston toimitusketjun turvallisuus on tärkeää

Nykyaikainen ohjelmistokehitys perustuu vahvasti avoimen lähdekoodin riippuvuuksiin, CI/CD-automaatioon ja kolmannen osapuolen integraatioihin.

Tämä lähestymistapa antaa tiimien työskennellä ja innovoida nopeammin, mutta se tuo mukanaan myös enemmän riskejä. Jos yksikin riippuvuus tai työkalu vaarantuu, se voi johtaa vakaviin ongelmiin.

Todelliset tapaukset korostavat näitä riskejä:

  • SolarWinds-hyökkäys (2020): Hakkerit lisäsivät haitallista koodia ohjelmistopäivitykseen, jota käytti yli 18 000 organisaatiota, mukaan lukien valtion virastot.
  • Codecov-tietomurto (2021): Hyökkääjät muokkasivat CI-työkalun skriptiä varastaakseen kehittäjien tunnistetietoja.

Nämä esimerkit osoittavat, että jopa luotettuihin työkaluihin voidaan hyökätä. Siksi ohjelmistojen toimitusketjun turvallisuus on niin tärkeää DevSecOps-tiimeille.

Ohjelmistojen Toimitusketjun Turvallisuuden Keskeiset Komponentit

  1. Lähdekoodin Suojaus
  2. Turvallinen pääsy lähdekoodin hallintaan, kuten GitHubiin tai GitLabiin, käyttäen MFA
    ja roolipohjaista pääsynhallintaa (RBAC) estääkseen luvattomat koodimuutokset.
  3. Riippuvuuksien Hallinta
  4. Skannaa ja päivitä säännöllisesti kolmannen osapuolen kirjastot käyttäen SCA
    (Software Composition Analysis)
    havaitaksesi tunnetut haavoittuvuudet (CVE
    )
    ja lisenssiriskit.
  5. Rakennuksen Eheyden Varmistaminen
  6. Suojaa CI/CD-putkesi hyökkääjiltä. Käytä koodin allekirjoitusta, rakennuksen alkuperän seurantaa ja työkaluja kuten Sigstore tai in-toto varmistaaksesi rakennuksen aitouden.
  7. Artefaktien Varmistaminen
  8. Tarkista rakennettujen pakettien tai konttikuvien eheys ennen käyttöönottoa. Ota käyttöön kuvien skannaustyökalu varmistaaksesi, että kuva on turvallinen.
  9. Pääsynhallinta & Salaisuuksien Hallinta
  10. Rajoita käyttöoikeuksia käyttäen RBAC
    (Roolipohjainen Pääsynhallinta)
    ja suojaa tunnistetiedot salasananhallinnan tai pilvisalaisuuksien hallinnan kautta.
  11. Jatkuva Seuranta
  12. Seuraa koko ohjelmiston elinkaarta, mukaan lukien päivitykset, koodimuutokset ja ajonaikaiset ympäristöt, havaitaksesi uusia turvallisuusriskejä, jotka ilmenevät julkaisun jälkeen.

Esimerkki: Todellisen Maailman Tilanne

SaaS-yritys havaitsi, että heidän CI-putkessaan oleva kompromissiin joutunut avoimen lähdekoodin kirjasto toi haittaohjelman tuotantoon.

Ongelma jäi huomaamatta viikkojen ajan, koska ei ollut eheystarkistuksia. Toimitusketjun turvallisuusvalvontatoimenpiteiden kuten riippuvuuksien skannauksen, koodin allekirjoituksen ja putken valvonnan käyttöönoton jälkeen yritys vähensi hyökkäyspintaansa ja pystyi jäljittämään jokaisen koodimuutoksen edelliseen versioon.

Parhaat käytännöt toimitusketjun turvallisuudelle

  • Käytä vahvistettuja lähteitä: Lataa riippuvuudet vain luotetuista arkistoista.
  • Ota käyttöön SCA-työkalut: Skannaa jatkuvasti kirjastojen haavoittuvuuksia.
  • Omaksu Zero Trust -periaatteet: Vahvista jokainen komponentti ja yhteys.
  • Allekirjoita kaikki: Allekirjoita digitaalisesti lähdekoodi, rakennelmat ja konttikuvat.
  • Noudata viitekehyksiä: Käytä NIST SSDF tai SLSA rakenteelliseen toimitusketjun suojaukseen.
  • Automatisoi valvonta: Integroi turvallisuustarkastukset CI/CD-putkiin.

Ohjelmistotoimitusketjun turvallisuuden hyödyt

  • Suojaa ohjelmistoa peukaloinnilta ja luvattomilta muutoksilta
  • Estää laajamittaiset tietomurrot ja tietovuodot
  • Rakentaa asiakasturvallisuutta ja luottamusta
  • Vähentää korjauskustannuksia havaitsemalla ongelmat aikaisin
  • Parantaa läpinäkyvyyttä kehityksen ja toimituksen aikana

Liittyvät termit

FAQ: Ohjelmiston toimitusketjun turvallisuus

1. Mikä on esimerkki ohjelmiston toimitusketjun hyökkäyksestä?

Kuuluisa esimerkki on SolarWinds-murto, jossa hyökkääjät kompromettoivat päivitysprosessin toimittaakseen haittaohjelmia tuhansille käyttäjille.

2. Miten toimitusketjun turvallisuus eroaa perinteisestä sovellusturvallisuudesta?

Sovellusturvallisuus keskittyy suojaamaan itse sovellusta, kun taas toimitusketjun turvallisuus suojaa kaiken, mikä liittyy sovelluksen tekemiseen, mukaan lukien työkalut, koodi ja riippuvuudet.

3. Mitkä työkalut auttavat parantamaan toimitusketjun turvallisuutta?

Yleisiä työkaluja ovat Plexicus Container Security, Plexicus ASPM, Snyk, Anchore ja Sigstore, jotka skannaavat haavoittuvuuksia, tarkistavat eheyden ja hallitsevat riippuvuuksia.

4. Mikä on SLSA?

SLSA (Supply-chain Levels for Software Artifacts) on Googlen kehittämä kehys, joka määrittelee parhaat käytännöt ohjelmiston rakennusprosessin suojaamiseksi ja manipuloinnin estämiseksi.

Seuraavat askeleet

Valmis turvaamaan sovelluksesi? Valitse polkusi eteenpäin.

Liity yli 500 yritykseen, jotka jo turvaavat sovelluksensa Plexicuksen avulla

SOC 2 Compliant
ISO 27001 Certified
Enterprise Ready