Veileder til sikkerhetsvurdering for AMS

Del denne sidenDel på e-post

Kodegjennomgang

Hver gang virksomheten mottar en programvareoppdatering fra en leverandør er det en risiko for at oppdateringen inneholder ondsinnet kode som åpner porter, legger inn «bakdører» til systemene eller på annen måte skaper muligheter for at systemene skal bli angrepet av en trusselaktør. Dette trenger ikke nødvendigvis bli gjort med vilje fra underleverandørens side; det kan også skyldes at underleverandøren har blitt angrepet av en ondsinnet aktør.

Hva er en kodegjennomgang?

En strukturert sammenligning av ny kode mot tidligere versjon, der endringene gjennomgås systematisk for å identifisere potensielle sårbarheter.

Når er kodegjennomgang nødvendig?

Ved ny kode uten tidligere versjon å sammenligne med, bør koden gjennomgås manuelt dersom det er mulig og overkommelig.

Dersom koden kommer fra en kjent og sikker kilde, kan verifisering med kontrollsum erstatte full gjennomgang. Kontrollsummen bekrefter at koden ikke er endret fra kildens versjon. I slike tilfeller er det ikke nødvendig å gjennomføre en kodegjennomgang.

Eksempler på tester en kan gjøre selv:

Test Verktøy Hva gjøres? Kriterier for å bestå testen
Verifisering av kontrollsum PowerShell
Get-FileHash eller sha256sum
Hente ut firmware image eller versjonsinformasjon fra målersystemet, eller få firmware eller firmware-hash fra leverandør.
Beregn kontrollsum og sammenlign med leverandørens publiserte hash
Eksakt samsvar mellom installert firmware og godkjent versjon.
Ingen uventede eller eldre versjoner til stede.

 

Ved bruk av ekstern bistand

For mange virksomheter vil det være nødvendig å benytte ekstern kompetanse for kodegjennomgang, eller å samarbeide med andre selskaper som bruker samme type utstyr. Da kan en samkjøre patching av oppdateringer, med en felles gjennomgang av kildekoden før oppdateringene installeres.

Krav til leverandør

Krev dokumentasjon fra leverandøren på hvordan kildekoden er bygd opp, for eksempel Software Bill of Materials (SBOM) – en oversikt over alle komponenter og avhengigheter i programvaren. Krev også at leverandøren kan dokumentere at kildekoden er gjennomgått før vedlikehold.