polski

Wybierz język

EnglishDeutschFrançaisрусский한국의ItaliaNederlandespañolPortuguêsMagyarországDanskΕλλάδαpolskiPilipinoČeštinaTiếng ViệtMelayuMaoriSvenskaSuomiУкраїнаromânescSlovenija
Dom > Aktualności > Kwalifikacja narzędzia kompilatora do bezpieczeństwa funkcjonalnego i cyberbezpieczeństwa

Kwalifikacja narzędzia kompilatora do bezpieczeństwa funkcjonalnego i cyberbezpieczeństwa

W 2020 r. Komisja Gospodarcza ONZ dla Europy opublikowała rozporządzenie dotyczące jednolitych przepisów dotyczących zatwierdzenia pojazdów w zakresie systemu zarządzania bezpieczeństwem i cyberbezpieczeństwem, znanym również jako WP.29.

W UE, Japonii, Korei i Wielkiej Brytanii rozporządzenie to jest włączone do przepisów dotyczących zatwierdzenia typu pojazdu, co zapewnia zgodność z bezpieczeństwem cybernetycznym jako nie do zabezpieczenia dostępu do rynku.

Chociaż WP.29 nie wspomina o ISO/SAE 21434: 2021 Pojazdy drogowe -Standard inżynierii bezpieczeństwa, rozumie się, że jeśli OEM i jego łańcuch dostaw mogą wykazać zgodność z tym standardem, wówczas zgodność z tym wykazać zgodność z zgodnością z zgodnością z WP.29 Regulacja. Wykazanie zgodności ze standardem cyberbezpieczeństwa ISO powinno chronić producenty OEM i ich dostawców przed odpowiedzialnością.




Kwalifikacja kompilatora

Standard ISO 26262 poświęca rozdział kryteriom w celu ustalenia wymaganego poziomu zaufania do narzędzia oprogramowania i zapewnia metody kwalifikowania narzędzia do stworzenia dowodów, że jest ono odpowiednio stosowane do opracowywania oprogramowania związanego z bezpieczeństwem funkcjonalnym.

Cztery metody kwalifikują narzędzie oprogramowania: zwiększone zaufanie do użycia; ocena procesu rozwoju; Walidacja narzędzia oprogramowania; i rozwój zgodnie ze standardem bezpieczeństwa.

W przypadku wyższych poziomów integralności bezpieczeństwa motoryzacyjnego (ASIL) odpowiednie są tylko dwie ostatnie metody. Walidacja narzędzi oznacza wykorzystanie środków w celu udowodnienia, że ​​narzędzie programowe spełnia określone wymagania w swoim celu.

Do spełnienia wymagań walidacji narzędzi ISO 26262 stosuje się dwa różne podejścia. Niektórzy dostawcy kompilatora wykonują wewnętrzną walidację narzędzia i zapraszają organ oceny zgodności, aby zaświadczyć, że narzędzie i jego dokumentacja bezpieczeństwa są odpowiednie do celu. Klient otrzymuje certyfikowany zestaw narzędzi kompilatora i musi jedynie zastosować wytyczne z instrukcji bezpieczeństwa, aby pokazać, że przypadek użycia jest kompatybilny z wykwalifikowanym przypadkiem użycia. Inni dostawcy oferują możliwy do certyfikatu (w porównaniu z certyfikowanym) zestawem narzędzi kompilatora oraz metodologię kwalifikacji narzędzi z narzędziami pomocniczymi i dokumentacją.

Metodologia kwalifikacji narzędzi jest ogólnie certyfikowana, a klient musi wykonać kwalifikacje narzędziowe, które można podsumować jako:

* Określając przypadek użycia w celu zdefiniowania wymagań, które należy spełnić przez narzędzie
* Wybór odpowiednich testów w celu zweryfikowania tych wymagań
* Przeprowadzanie testów i analizowanie wyników testu
* Generowanie dokumentacji bezpieczeństwa i zastosowanie wytycznych z dokumentów bezpieczeństwa.
Istnieją ukryte koszty w tym podejściu, takie jak nauka metodologii kwalifikacji i powiązane oprzyrządowanie, licencjonowanie niezbędnych testów, wykonanie procesu sprawdzania poprawności narzędzia, interakcja z certyfikatorem, a na koniec, jeśli testy upadają.

Kwalifikacja kompilatora

Kompilator może modyfikować (zoptymalizować) zachowanie programu w sposób, którego programista nie przewidział. Intencję strukturalną programisty programisty nie może być dokładnie przedstawiona w końcowej reprezentacji programu źródłowego, a kompilator może wpłynąć na bezpieczeństwo oprogramowania.

W przeciwieństwie do standardu bezpieczeństwa funkcjonalnego ISO (FUSA), Standard ISO Cyberbezpieczeństwo (ISO 21434 Sekcja 5.4.7 Zarządzanie narzędziami) nie określa wymagań kwalifikacyjnych narzędzi. Kryteria określenia wymaganego poziomu zaufania do zestawu narzędzi kompilatora do opracowania oprogramowania związanego z cyberbezpieczeństwem są nieznane i nie określono metody wykazania, że ​​kryteria związane z bezpieczeństwem cybernetycznym zostały spełnione.

Standard ISO zawiera odniesienia do standardu bezpieczeństwa funkcjonalnego ISO. Udowodniona metoda walidacji narzędzia standardu ISO 26262 jest odpowiednia do kwalifikowania zestawu narzędzi kompilatora zastosowanego w opracowywaniu oprogramowania zgodnego z regulacją bezpieczeństwa cybernetycznego. Aby zastosować tę metodę, należy ustalić kryteria walidacji narzędzi do opracowania oprogramowania związanego z cyberbezpieczeństwem.

Walidacja narzędzi

Analogiczne do kryteriów sprawdzania poprawności narzędzia dla bezpieczeństwa funkcjonalnego, kryteria walidacji narzędzia dla bezpieczeństwa cybernetycznego można określić jako środki dostarczające dowodów, że narzędzie programowe jest zgodne z określonymi wymaganiami bezpieczeństwa cybernetycznego.

Ryzyko bezpieczeństwa cybernetycznego, które może być wprowadzone przez narzędzie oprogramowania i ich odpowiednie zachowania, należy analizować pod kątem informacji o możliwych konsekwencjach oraz środkami, które ich uniknąć lub wykryć.

Należy również zbadać reakcję narzędzia oprogramowania na anomalne warunki pracy.

Proces inżynierii misji (MAE) opracowany przez National Cyber ​​Security FFRDC można wykorzystać do określenia wymagań dotyczących bezpieczeństwa cybernetycznego zestawu narzędzi kompilatora. Proces ten jest zgodny z ISO 21434 Rozdział 15 Analiza zagrożenia i metody oceny ryzyka. Jeśli proces MAE jest wykonywany przez dostawcę narzędzi, a wyniki są opisane w dokumentacji bezpieczeństwa i cyberbezpieczeństwa, eliminuje to potrzebę wykonania sprawdzania poprawności narzędzia.

Użytkownik narzędzi musi ocenić ryzyko resztkowe związane z konkretnym przypadkiem użycia, który pozostaje po zastosowaniu wytycznych.

Dostawca narzędzi musi przeanalizować reakcję narzędzia oprogramowania na anomalne warunki pracy za pomocą procesu MAE. Odkrycia są przekładane na wytyczne i zawarte w podręczniku bezpieczeństwa i bezpieczeństwa narzędzi. Użytkownik narzędzi musi wdrożyć dostarczone wytyczne i ocenić ryzyko resztkowe dla przypadków użycia.

Proces MAE (ryc. 1) zapewnia analityczne podejście do identyfikacji aktywów cyberprzestępczych najbardziej krytycznych dla realizacji misji, zrozumienia cyberprzestępstw i związanego z tym ryzyka dla tych aktywów oraz wybrania środków łagodzenia w celu zapobiegania i/lub walki poprzez ataki.

Analiza trybu awarii i efektów (FMEA) oraz analiza oceny zagrożenia i remediacji (Tara) zapewniają integralność oprogramowania użytkownika narzędzia, a nie integralność zestawu narzędzi kompilatora w celu uzyskania celu ISO 21434 w celu rozwiązania problemu cyberbezpieczeństwa w elektrycznym i Systemy elektroniczne w pojazdach drogowych, w których systemy zewnętrzne wobec pojazdu nie znajdują się w zakresie ISO 21434. Integralność zestawu narzędzi kompilatora i plików obsługiwanych jest inne standardy, takie jak ISO/IEC 27001 (zarządzanie bezpieczeństwem informacji). Ważne jest, aby zarówno dostawca narzędzi, jak i użytkownik również przestrzegają standardu bezpieczeństwa IT.

FMEA służy do określenia potencjalnego ryzyka bezpieczeństwa cybernetycznego, które zestaw narzędzi kompilatora może wprowadzić do oprogramowania użytkownika. Celem narzędzia kompilatora jest zachowanie oprogramowania kompilowanego w celu spełnienia intencji użytkownika zarówno w normalnych warunkach, jak i w warunkach ataku na cyberbezpieczeństwo. Specyfikacja języka ISO C i C ++ pozwala inżynierom kompilatorów zastosować transformacje na oprogramowaniu, które są poprawne w oparciu o legalistyczną interpretację standardów ISO C i C ++, ale które zaskoczyłyby wielu programistów oprogramowania. Jest zatem korzystne, jeśli FMEA jest wykonywana przez zespół inżynierów, którzy dogłębnie rozumieją wymagania kompilatorów, architekturę, projektowanie i wdrażanie. Dla każdego zidentyfikowanego trybu awarii należy zapewnić jeden lub więcej środków łagodzenia w celu zmniejszenia ryzyka.

Metodologia Tara identyfikuje i ocenia luki cybernetyczne i wybiera środki zaradcze w celu złagodzenia tych luk. Metodologia jest zgodna z wymaganiami ISO 21434.

Przepływ pracy Tara (ryc. 2) wykorzystuje szczegóły techniczne systemu do konstruowania cyberprzestępczości architektury systemu. Stanowi to podstawę do przeszukiwania katalogu wiarygodnych wektorów ataku. Można użyć wspólnych wyliczeń wzorców ataku i klasyfikacji, a lista wektorów ataku jest filtrowana i uszeregowana według ocenionego ryzyka. Lista luk w zabezpieczeniach jest połączona z danymi mapowania łagodzenia z katalogu w celu zidentyfikowania początkowej listy środków zaradczych, która jest filtrowana i uszeregowana w oparciu o oszacowane koszty użyteczności i cyklu życia, wytwarzając tabelę mapowania łagodzenia.

Zakłada jest wybierana na podstawie kosztów i poziomu tolerancji ryzyka w celu utworzenia tabeli skuteczności rozwiązania, która wymienia zalecane środki zaradcze/łagodności i zawiera szczegółowe informacje na temat skuteczności każdego środka zaradczego w zakresie ocenianego luki. Można również wykorzystać informacje z innych baz danych, takich jak CWE (typy słabości oprogramowania i sprzętu) i CVE (ujawnione luki w zakresie bezpieczeństwa cybernetycznego).

Dynamiczny charakter bezpieczeństwa cybernetycznego oznacza regularne powtarzanie powyższych analiz.

Wynik FMEA i Tara

Podatności indukowane kompilatorem można zaklasyfikować jako związane ze standardowymi klasami podatności, atakami kanałów bocznych, niezdefiniowanym zachowaniem i uporczywymi naruszeniami państwa. Powiązane łagodzenie to wymagania związane z cyberbezpieczeństwem, które muszą zostać wdrożone przez dostawcę narzędzi. Obejmują one ochronę przed atakami za pośrednictwem kompilatora za pośrednictwem kompilatora kanałów stosu, środków wykrywania przepływu buforu lub przepisów dotyczących losowania układu pamięci.

Użytkownik narzędzi jest zobowiązany do spełnienia ogólnych wytycznych kodowania i wytycznych specyficznych dla używanego zestawu narzędzi kompilatora. Motor Industry Software Association Association (MISRA) jest uważany za minimum, a przestrzeganie wytycznych kodowania CERT C/C ++ zapewnia bardziej kompleksowe zapobieganie. Wytyczne dotyczące określonego zestawu narzędzi kompilatora zależą głównie od optymalizacji przez dostawcę kompilatora.

Niektórzy dostawcy twierdzą, że wymagania FUSA i cyberbezpieczeństwo hamują wszystkie optymalizacje zastosowane przez kompilator, podczas gdy niektórzy twórcy kompilatorów stosują bardzo legalistyczną interpretację standardu ISO C i rozważają ryzyko bezpieczeństwa cybernetycznego wywołanego kompilatorem jako efekt uboczny niewystarczającego zrozumienia przez użytkownika przez język programujący .

Środek jest utrzymywany przez tych, którzy uważają, że optymalizacje nie muszą wprowadzać ryzyka FUSA i cyberbezpieczeństwa, jeśli, i tylko wtedy, gdy kompilator dostarcza wystarczających informacji diagnostycznych na temat stosowanych optymalizacji, aby użytkownik narzędzi wiedział o możliwych konsekwencjach.

O autorze

Gerard Vink to specjalista branżowy, definicja produktu, podczas zadań