Dansk

Vælg sprog

EnglishDeutschFrançaisрусский한국의ItaliaNederlandespañolPortuguêsMagyarországDanskΕλλάδαpolskiPilipinoČeštinaTiếng ViệtMelayuMaoriSvenskaSuomiУкраїнаromânescSlovenija
Hjem > Nyheder > Kvalifikation af kompilator til funktionel sikkerhed og cybersikkerhed

Kvalifikation af kompilator til funktionel sikkerhed og cybersikkerhed

I 2020 frigav De Forenede Nationers økonomiske kommission for Europa forordningen om ensartede bestemmelser om godkendelse af køretøjer med hensyn til cybersikkerhed og cybersikkerhedsstyringssystem, også kendt som WP.29.

I EU, Japan, Korea og Storbritannien indarbejdes denne forordning i godkendelse af lovgivning om køretøjstype, hvilket gør cybersikkerhedsoverholdelse som ikke-omsættelig for at sikre markedsadgang.

Selvom WP.29 ikke nævner ISO/SAE 21434: 2021 Vejkøretøjer -Cybersecurity Engineering Standard, forstås det, at hvis en OEM og dens forsyningskæde kan demonstrere overholdelse af denne standard, kan denne overholdelse bruges til at demonstrere overholdelse WP.29 Regulering. At demonstrere overholdelse af ISO -cybersikkerhedsstandarden skal beskytte OEM'er og deres leverandører mod ansvar.




Compiler -kvalifikation

ISO 26262 Standard afsætter et kapitel til kriterier for at bestemme det krævede niveau af tillid til et softwareværktøj og giver metoder til at kvalificere værktøjet til at skabe bevis for, at det er egnet til at blive brugt til funktionel sikkerhedsrelateret softwareudvikling.

Fire metoder kvalificerer et softwareværktøj: øget tillid fra brug; evaluering af udviklingsprocessen; Validering af softwareværktøjet; og udvikling i overensstemmelse med en sikkerhedsstandard.

For højere niveau for bilindustrien integritet (ASIL) er det kun de to sidstnævnte metoder, der er egnede. Værktøjsvalidering betyder at bruge foranstaltninger til at bevise, at softwareværktøjet opfylder specificerede krav til dets formål.

To forskellige tilgange bruges til at imødekomme ISO 26262 værktøjsvalideringskrav. Nogle compiler-leverandører udfører værktøjets validering internt og inviterer et overensstemmelsesvurderingsorgan til at certificere, at værktøjet og dets sikkerhedsdokumentation er egnede til formålet. Kunden modtager et certificeret kompilatorværktøjssæt og behøver kun at anvende retningslinjerne fra sikkerhedsmanualen for at vise, at brugssagen er kompatibel med en kvalificeret brugssag. Andre leverandører tilbyder en certificerbar (versus certificeret) kompilatorværktøjssæt plus en værktøjskvalifikationsmetodik med understøttende værktøjer og dokumentation.

Værktøjskvalifikationsmetodikken er generelt certificeret, og kunden skal udføre værktøjskvalifikationen, som kan sammenfattes som:

* Specificering af brugssagen til at definere de krav, der skal opfyldes af værktøjet
* Valg af de relevante tests for at verificere disse krav
* Udførelse af testene og analyse af testresultaterne
* Generering af sikkerhedsdokumentationen og anvendelse af vejledning fra sikkerhedsdokumenterne.
Der er skjulte omkostninger med denne tilgang, såsom at lære kvalifikationsmetodikken og tilhørende værktøj, licens til de nødvendige testsuiter, udførelse af værktøjsvalideringsprocessen, interagerer med certificeringen og til sidst, hvad man skal gøre, hvis test mislykkes.

Compiler -kvalifikation

En kompilator kan ændre (optimere) opførslen af ​​et program på måder, som programmereren ikke forudså. Softwareudviklerens strukturelle intention er muligvis ikke nøjagtigt afbildet i den endelige repræsentation af kildeprogrammet, og kompilatoren kan påvirke softwarens sikkerhed.

I modsætning til ISO -funktionel sikkerhed (FUSA) -standarden specificerer ISO -cybersecurity -standarden (ISO 21434 Afsnit 5.4.7 Værktøjsstyring) ikke krav til værktøjskvalifikation. Kriterierne for at bestemme det krævede niveau af tillid til et compiler -værktøjssæt til udvikling af cybersikkerhedsrelateret software er ukendt, og ingen metode er specificeret for at demonstrere, at cybersikkerhedsrelaterede kriterier er opfyldt.

ISO -standarden indeholder henvisninger til ISO -funktionel sikkerhedsstandard. Den beviste værktøjsvalideringsmetode for ISO 26262 -standarden er velegnet til at kvalificere et kompilatorværktøjssæt, der bruges til udvikling af en cybersikkerhedsreguleringssoftware. For at anvende denne metode skal værktøjsvalideringskriterierne for udvikling af cybersikkerhedsrelateret software etableres.

Værktøjsvalidering

Analogt med værktøjsvalideringskriterierne for funktionel sikkerhed kan kriterierne for værktøjsvalidering for cybersikkerhed specificeres som foranstaltninger til at fremlægge bevis for, at softwareværktøjet overholder de specificerede krav til cybersikkerhed.

Cybersikkerhedsrisici, der kan introduceres af softwareværktøjet, og deres tilsvarende adfærd skal analyseres med oplysninger om mulige konsekvenser og med foranstaltninger til at undgå eller opdage dem.

Reaktionen af ​​softwareværktøjet på anomale driftsbetingelser skal også undersøges.

Mission Assurance Engineering (MAE) -processen udviklet af National Cyber ​​Security FFRDC kan bruges til at specificere cybersikkerhedskravene i kompilatorværktøjssættet. Denne proces er kompatibel med ISO 21434 Kapitel 15 Trusselanalyse og risikovurderingsmetoder. Hvis MAE -processen udføres af værktøjsleverandøren, og resultaterne er beskrevet i sikkerhed og cybersikkerhedsdokumentation, eliminerer dette behovet for, at værktøjsbrugeren udfører en værktøjsvalidering.

Værktøjsbrugeren skal vurdere den resterende risiko, der er forbundet med den specifikke brugssag, der er tilbage efter anvendelse af retningslinjerne.

Værktøjsleverandøren skal analysere softwareværktøjets reaktion på anomale driftsforhold ved hjælp af MAE -processen. Resultaterne oversættes til retningslinjer og inkluderes i værktøjets sikkerhed og cybersikkerhedsmanual. Værktøjsbrugeren skal implementere de angivne retningslinjer og vurdere den resterende risiko for en brugssag.

MAE -processen (figur 1) giver en analytisk tilgang til at identificere de cyberaktiver, der er mest kritiske for missionens gennemførelse, forstå cybertruslerne og tilknyttede risici for disse aktiver og vælge afbødningsforanstaltninger for at forhindre og/eller kæmpe gennem angreb.

En fejltilstand og effektanalyse (FMEA) og en trusselvurderings- og afhjælpningsanalyse (TARA) sikrer integriteten af ​​værktøjsbrugerens software snarere end integriteten af ​​kompilatorværktøjssættet i overensstemmelse med ISO 21434 til at tackle cybersikkerhed i elektrisk og Elektroniske systemer inden for vejkøretøjer, hvor systemer, der er eksterne for køretøjet, ikke er inden for rammerne af ISO 21434. Integriteten af ​​kompilatorværktøjssættet og -filer, der drives af, styres af andre standarder, såsom ISO/IEC 27001 (Information Security Management). Det er vigtigt, at både værktøjsleverandøren og brugeren også overholder en IT -sikkerhedsstandard.

FMEA bruges til at identificere de potentielle cybersikkerhedsrisici, som kompilatorværktøjssættet kan introducere i brugerens software. Formålet med kompilatorværktøjet er for opførsel af softwaren, der samles for at imødekomme brugerens intentioner under både normale forhold og under cybersikkerhedsangrebsbetingelser. ISO C og C ++ sprogspecifikationen giver kompilatoringeniører mulighed for at anvende transformationer på softwaren, der er korrekte baseret på en legalistisk fortolkning af ISO C- og C ++ -standarderne, men som ville overraske mange softwareprogrammerere. Det er derfor fordelagtigt, hvis FMEA udføres af et team af ingeniører, der har en dybdegående forståelse af samlernes krav, arkitektur, design og implementering. For hver identificeret fiasko -tilstand skal der leveres en eller flere afbødningsforanstaltninger for at reducere risikoen.

Tara -metodikken identificerer og vurderer cyber -sårbarheder og vælger modforanstaltninger for at afbøde disse sårbarheder. Metodikken er kompatibel med kravene i ISO 21434.

Tara -arbejdsgangen (figur 2) bruger system tekniske detaljer til at konstruere en cybermodel af systemarkitekturen. Dette giver et grundlag for at søge kataloget efter plausible angrebsvektorer. Det almindelige angrebsmønsteroptællinger og klassificeringsdatabase kan bruges, og listen over angrebsvektorer filtreres og rangeres i henhold til vurderet risiko. Listen over sårbarheder er kombineret med afbødningskortdata fra kataloget for at identificere en indledende liste over modforanstaltninger, der filtreres og rangeres baseret på vurderede nytte- og livscyklusomkostninger, hvilket producerer en afbødningskortlægningstabel.

Modforanstaltninger vælges på baggrund af omkostninger og niveauet for risikotolerance for at skabe en løsningseffektivitetstabel, der viser anbefalede modforanstaltninger/afbødninger og giver detaljer om effektiviteten af ​​hver modforanstaltning i forhold til de vurderede sårbarheder. Oplysninger fra andre databaser, såsom CWE (software og hardwaresvaghedstyper) og CVE (afsløret cybersecurity -sårbarheder) kan også bruges.

Den dynamiske karakter af cybersikkerhed betyder regelmæssig gentagelse af ovennævnte analyser er nødvendig.

Resultatet af FMEA og Tara

Compiler-inducerede sårbarheder kan klassificeres som relateret til standard sårbarhedsklasser, sidekanalangreb, udefineret opførsel og vedvarende overtrædelser af staten. De tilknyttede afbødninger er cybersikkerhedsrelaterede krav, der skal implementeres af værktøjsleverandøren. Disse inkluderer beskyttelse mod stak-smash-angreb via kompilator placerede stakkanariner, foranstaltninger til at detektere buffer-overstrøm eller bestemmelser til understøttelse af hukommelseslayout randomisering.

Værktøjsbrugeren er påkrævet for at opfylde generiske kodningsretningslinjer og retningslinjer, der er specifikke for det bestemte kompilatorværktøjssæt, der bruges. Motor Industry Software Pålidelighedsforening (MISRA) overholdelse betragtes som et minimum, og overholdelse af SEI Cert C/C ++ kodningsretningslinjer giver mere omfattende forebyggelse. Retningslinjerne for et bestemt kompilatorværktøjssæt afhænger stort set af optimering af kompilatorleverandøren.

Nogle leverandører hævder, at FUSA- og cybersikkerhedskrav hæmmer alle optimeringer, der anvendes af kompilatoren, mens nogle kompilatorudviklere anvender en meget legalistisk fortolkning af ISO C-standarden og overvej kompilatorinduceret cybersecurity-risici som en bivirkning af brugerens utilstrækkelig forståelse af programmeringssprog .

Mellemgrunden holdes af dem, der mener, at optimeringer ikke behøver at indføre FUSA og cybersikkerhedsrisici, hvis og kun hvis kompilatoren giver tilstrækkelig diagnostisk information om de anvendte optimeringer til at gøre brugeren af ​​værktøjet opmærksom på mulige konsekvenser.

Om forfatteren

Gerard Vink er en branchespecialist, produktdefinition, til opgave