Łańcuch dostaw oprogramowania
Łańcuch dostaw oprogramowania składa się z komponentów, bibliotek, narzędzi i procesów używanych do opracowywania, budowania i publikowania artefaktów oprogramowania.
Dostawcy oprogramowania często tworzą produkty, łącząc komponenty oprogramowania typu open source i komercyjne . Zestawienie materiałów oprogramowania (SBOM) deklaruje wykaz komponentów użytych do zbudowania artefaktu oprogramowania, takiego jak aplikacja. Jest to analogiczne do listy składników na opakowaniu żywności: tam, gdzie możesz sprawdzić etykietę, aby uniknąć żywności, która może powodować alergie , SBOM mogą pomóc organizacjom lub osobom uniknąć korzystania z oprogramowania, które może im zaszkodzić.
Koncepcja BOM jest dobrze ugruntowana w tradycyjnej produkcji jako część zarządzania łańcuchem dostaw . Producent używa BOM do śledzenia części, których używa do stworzenia produktu. Jeśli później zostaną znalezione wady w określonej części, BOM ułatwia zlokalizowanie wadliwych produktów.
Stosowanie
SBOM jest przydatny zarówno dla konstruktora (producenta), jak i nabywcy (klienta) oprogramowania. Konstruktorzy często wykorzystują dostępne komponenty oprogramowania typu open source i oprogramowania innych firm do stworzenia produktu; SBOM pozwala konstruktorowi upewnić się, że te komponenty są aktualne i szybko reagować na nowe luki w zabezpieczeniach. Kupujący mogą użyć SBOM do przeprowadzenia podatności na zagrożenia lub analizy licencji, z których obie mogą być wykorzystane do oceny ryzyka produktu.
Podczas gdy wiele firm używa arkusza kalkulacyjnego do ogólnego zarządzania BOM, SBOM zapisany w arkuszu kalkulacyjnym wiąże się z dodatkowym ryzykiem i problemami. SBOM zyskują na większej wartości, gdy są przechowywane zbiorczo w repozytorium, które może być częścią innych systemów automatyki, łatwo przeszukiwanych przez inne aplikacje. Tę potrzebę zautomatyzowanego przetwarzania SBOM zaspokaja SPDX (Software Package Data Exchange) .
Zrozumienie łańcucha dostaw oprogramowania, uzyskanie SBOM i wykorzystanie go do analizy znanych luk w zabezpieczeniach ma kluczowe znaczenie w zarządzaniu ryzykiem .
Ustawodawstwo
Ustawa o zarządzaniu łańcuchem dostaw i przejrzystości w cyberprzestrzeni z 2014 r. była ustawą amerykańską, która proponowała wymaganie od agencji rządowych uzyskiwania SBOM dla wszelkich nowych produktów, które kupują. Wymagałoby to również uzyskania SBOM dla „dowolnego oprogramowania, oprogramowania układowego lub produktu używanego przez rząd Stanów Zjednoczonych”. Chociaż ostatecznie nie przeszedł, ustawa ta uświadomiła rządowi i zachęciła do późniejszego ustawodawstwa, takiego jak „Ustawa o poprawie bezpieczeństwa cybernetycznego Internetu przedmiotów z 2017 r.”.
Amerykańskie rozporządzenie wykonawcze w sprawie poprawy bezpieczeństwa cybernetycznego narodu z 12 maja 2021 r. nakazało NIST wydanie w ciągu 90 dni wytycznych dotyczących „włączenia standardów, procedur lub kryteriów dotyczących” kilku tematów w celu „zwiększenia bezpieczeństwa łańcucha dostaw oprogramowania”, w tym „dostarczenie nabywcy zestawienia materiałów oprogramowania (SBOM) dla każdego produktu”. W ciągu 60 dni NTIA miała również obowiązek „opublikowania minimalnych elementów SBOM”.
Minimalne elementy NTIA zostały opublikowane 12 lipca 2021 r., A także „opisują przypadki użycia SBOM dla większej przejrzystości w łańcuchu dostaw oprogramowania oraz przedstawiają opcje przyszłej ewolucji”. Minimalne elementy składają się z trzech szerokich kategorii: pola danych (podstawowe informacje o każdym komponencie oprogramowania), wsparcie automatyzacji (możliwość generowania SBOM w formacie czytelnym dla maszyny i człowieka) oraz praktyki i procesy (jak i kiedy organizacje powinny generować SBOM ). Wymóg „wsparcia automatyzacji” określa potrzebę „automatycznego generowania”, co jest możliwe przy użyciu analizy składu oprogramowania (SCA).