KOMENTARZ
Niedawno pojawiła się wiadomość, że hakerzy włamali się do firmy oferującej rozwiązania do zdalnego dostępu AnyDesk rzuciło ostre światło na potrzebę długiego i dokładnego przyjrzenia się praktykom podpisywania kodu, aby zapewnić bezpieczniejszy łańcuch dostaw oprogramowania.
Podpisywanie kodu dodaje podpis cyfrowy do oprogramowania, oprogramowania sprzętowego lub aplikacji, co gwarantuje, że kod użytkownika pochodzi z zaufanego źródła i nie był modyfikowany od czasu ostatniego podpisania. Jednak podpisywanie kodu jest tak dobre, jak jego wykonanie, a nieodpowiednie praktyki mogą prowadzić do wstrzykiwania złośliwego oprogramowania, manipulowania kodem i oprogramowaniem oraz ataków polegających na podszywaniu się pod inne osoby.
Klucze prywatne muszą być chronione, ale wielu programistów (głównie ze względów wygody) utrzymuje własne i przechowuje je na swoich komputerach lokalnych lub serwerach budujących. To naraża je na kradzież i niewłaściwe wykorzystanie, a także stwarza martwe punkty dla zespołów bezpieczeństwa.
Po Hack SolarWinds w 2020 r. forum organów certyfikacji/przeglądarki (CA/B) wydało nowy zestaw wymagania podstawowe do utrzymywania certyfikatów podpisywania kodu, które wymagają stosowania sprzętowych modułów bezpieczeństwa (HSM), urządzeń przechowujących i zabezpieczających klucze kryptograficzne, a także innych środków ochrony kluczy prywatnych.
Moduły HSM zapewniają najwyższy poziom bezpieczeństwa, ale zwiększają również koszty, złożoność i wymagania konserwacyjne. O ile nie można ich zintegrować z narzędziami do podpisywania kodu używanymi przez zespół DevOps, rozłączenie może skomplikować dostęp do podpisywania kodu i spowolnić proces.
Migracja do chmury nadała bezpieczeństwu wyższy priorytet, ale chmura oferuje również rozwiązanie do podpisywania kodu. Podpisywanie kodu w chmurze i moduły HSM mogą zapewnić szybkość i elastyczność, których oczekują programiści, a także scentralizowaną kontrolę, która obsługuje rozproszone zespoły programistów, integruje się z procesami programistycznymi i może być łatwiej monitorowana przez zabezpieczenia.
Podróż do zintegrowanego podpisywania kodu
W związku z ostatnimi zmianami z Forum CA / Bnadszedł czas, aby organizacje wyruszyły w podróż mającą na celu unowocześnienie podpisywania kodu za pomocą scentralizowanej kontroli w celu wsparcia zespołów programistycznych. Wiele firm pozostaje na etapie „ad hoc”, gdzie klucze są utrzymywane lokalnie, a programiści korzystają z różnorodnych procesów i narzędzi podpisywania kodu. Inne mają scentralizowaną kontrolę, aby zapewnić zespołom ds. bezpieczeństwa widoczność i zarządzanie, wykorzystując moduły HSM do zabezpieczania kluczy, ale używanie oddzielnych narzędzi do podpisywania kodu nadal wpływa na szybkość tworzenia oprogramowania.
Idealna, dojrzała struktura wymaga integracji kluczowych zabezpieczeń, narzędzi do podpisywania kodu i przepływów pracy programistycznych, aby proces był płynny i usprawniony we wszystkich kompilacjach, kontenerach, artefaktach i plikach wykonywalnych. Zespoły ds. bezpieczeństwa zarządzają modułami HSM i uzyskują pełny wgląd w podpisywanie kodu, a programiści mają teraz sprawny i szybki proces programowania.
Kilka najlepszych praktyk może pomóc w utorowaniu drogi w tej podróży:
-
Zabezpiecz swoje klucze: Przechowuj klucze do podpisywania kodu w bezpiecznym miejscu, takim jak moduł HSM zgodny z wymaganiami kryptograficznymi forum CA/B (FIPS 140-2 poziom 2 lub Common Criteria EAL 4+). Moduły HSM są odporne na manipulacje i uniemożliwiają eksport kluczy prywatnych.
-
Kontrola dostępu: Zminimalizuj ryzyko nieautoryzowanego dostępu i niewłaściwego użycia kluczy prywatnych, ograniczając dostęp poprzez kontrolę dostępu opartą na rolach. Zdefiniuj przepływy pracy zatwierdzania i egzekwuj zasady bezpieczeństwa, aby regulować dostęp tylko do niezbędnego personelu, a także prowadź dzienniki audytu, które rejestrują, kto wyzwolił żądanie podpisania, kto uzyskał dostęp do kluczy i dlaczego.
-
Obróć klawisze: Jeśli jeden klucz zostanie naruszony, wszystkie podpisane nim wydania będą zagrożone. Regularnie zmieniaj klucze do podpisywania kodu i używaj unikalnych i oddzielnych kluczy do podpisywania różnych wydań w wielu zespołach DevOps.
-
Kod znacznika czasu: Certyfikaty do podpisywania kodu mają ograniczony okres ważności – od jednego do trzech lat i maleje. Kod oznaczający czas podczas jego podpisywania może zweryfikować autentyczność podpisu nawet po wygaśnięciu lub unieważnieniu certyfikatu, zwiększając zaufanie do podpisanego kodu i oprogramowania.
-
Sprawdź integralność kodu: Przed podpisaniem i wydaniem ostatecznej wersji kompilacji przeprowadź pełny przegląd kodu, porównując kod na serwerze kompilacji z repozytorium kodu źródłowego i zweryfikuj wszystkie podpisy programistów, aby upewnić się, że są wolne od manipulacji.
-
Scentralizuj zarządzanie: Dzisiejsze przedsiębiorstwa mają charakter globalny. Scentralizowany proces podpisywania kodu może pomóc w monitorowaniu działań związanych z podpisywaniem i certyfikatów w całym przedsiębiorstwie, niezależnie od tego, gdzie znajdują się programiści. Poprawia widoczność, buduje odpowiedzialność i eliminuje luki w zabezpieczeniach.
-
Egzekwuj zasady: Standaryzuj proces podpisywania kodu, definiując i mapując zasady, w tym uprawnienia do użycia kluczy, zatwierdzenia, wygaśnięcie klucza, typ urzędu certyfikacji, rozmiar klucza, typ algorytmu podpisywania i inne. Automatyzuj egzekwowanie zasad, aby mieć pewność, że cały kod, pliki i oprogramowanie są podpisane w oparciu o zasady i są zgodne ze standardami branżowymi.
-
Uprość podpisywanie kodu: Integracja i automatyzacja podpisywania kodu za pomocą narzędzi CI/CD upraszcza proces DevOps bez uszczerbku dla bezpieczeństwa, jednocześnie promując szybkość i elastyczność.
W świecie ciągłej integracji i ciągłego wdrażania najlepsze praktyki w zakresie podpisywania kodu stanowią nieoceniony sposób na budowanie zaufania w procesie tworzenia oprogramowania i umożliwiają bezpieczniejszy łańcuch dostaw oprogramowania.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- PlatoData.Network Pionowe generatywne AI. Wzmocnij się. Dostęp tutaj.
- PlatoAiStream. Inteligencja Web3. Wiedza wzmocniona. Dostęp tutaj.
- PlatonESG. Węgiel Czysta technologia, Energia, Środowisko, Słoneczny, Gospodarowanie odpadami. Dostęp tutaj.
- Platon Zdrowie. Inteligencja w zakresie biotechnologii i badań klinicznych. Dostęp tutaj.
- Źródło: https://www.darkreading.com/cybersecurity-operations/8-strategies-enhancing-code-signing-security
- :ma
- :Jest
- :Gdzie
- 10
- 11
- 12
- 13
- 19
- 2020
- 7
- 8
- 9
- a
- dostęp
- dostęp
- odpowiedzialność
- w poprzek
- zajęcia
- Ad
- Dodaje
- Po
- zwinny
- algorytm
- Wszystkie kategorie
- również
- an
- i
- aplikacje
- zatwierdzenie
- Zatwierdzenia
- SĄ
- AS
- zapewnia
- At
- Ataki
- Audyt
- zautomatyzować
- automatyzacja
- na podstawie
- BE
- być
- zanim
- jest
- BEST
- Najlepsze praktyki
- budować
- budować zaufanie
- Buduje
- ale
- by
- CA
- CAN
- scentralizowane
- świadectwo
- certyfikaty
- łańcuch
- Zmiany
- Okrągłe
- Chmura
- kod
- Przegląd kodu
- przyjście
- wspólny
- Firmy
- sukcesy firma
- porównanie
- kompleksowość
- zgodny
- kompromis
- Zagrożone
- kompromis
- Pojemniki
- ciągły
- kontrola
- wygoda
- Koszty:
- tworzy
- Kryteria
- kryptograficzny
- określić
- definiowanie
- wymagania
- Wdrożenie
- Deweloper
- deweloperzy
- oprogramowania
- zespoły deweloperskie
- urządzenia
- różne
- cyfrowy
- dystrybuowane
- na dół
- z łatwością
- eliminuje
- zaokrętować
- umożliwiać
- egzekwować
- egzekwowanie
- wzmocnienie
- zapewnić
- Enterprise
- Parzyste
- egzekucja
- wygaśnięcie
- rozsuwalny
- kilka
- Akta
- finał
- W razie zamówieenia projektu
- Forum
- od
- pełny
- Wzrost
- Dać
- Globalne
- dobry
- zarządzanie
- hakerzy
- miał
- Ciężko
- sprzęt komputerowy
- Bezpieczeństwo sprzętu
- Have
- pomoc
- wyższy
- Najwyższa
- HTTPS
- ICON
- idealny
- Oddziaływania
- poprawia
- in
- Włącznie z
- Zwiększać
- przemysł
- standardy przemysłowe
- zastrzyki
- zintegrowany
- Integruje się
- integracja
- integralność
- najnowszych
- nieoceniony
- IT
- JEGO
- podróż
- jpg
- Klawisz
- Klawisze
- Nazwisko
- prowadzić
- prawowitość
- poziom
- lekki
- Ograniczony
- ograniczenie
- miejscowy
- lokalnie
- usytuowany
- lokalizacja
- długo
- Popatrz
- maszyny
- zrobiony
- głównie
- utrzymać
- utrzymany
- Utrzymywanie
- konserwacja
- robić
- malware
- zarządzanie
- i konserwacjami
- mandaty
- wiele
- mapowanie
- dojrzały
- środków
- nadużycie
- zmodernizować
- Moduły
- monitor
- monitorowane
- jeszcze
- wielokrotność
- niezbędny
- Potrzebować
- Nowości
- aktualności
- już dziś
- of
- Oferty
- on
- ONE
- tylko
- koncepcja
- or
- organizacji
- Inne
- Pozostałe
- własny
- wybrukować
- uprawnienia
- rurociąg
- plato
- Analiza danych Platona
- PlatoDane
- polityka
- polityka
- praktyki
- zapobiec
- priorytet
- prywatny
- Klucze prywatne
- wygląda tak
- procesów
- promowanie
- chronić
- chroniony
- zapewniać
- Przyczyny
- niedawny
- rekord
- Bez względu
- regularnie
- Regulować
- wydany
- prasowe
- uwalniając
- pozostawać
- zdalny
- zdalny dostęp
- składnica
- zażądać
- wymagania
- Wymaga
- przeglądu
- Ryzyko
- bezszwowy
- bezpieczne
- bezpieczeństwo
- zasady bezpieczeństwa
- oddzielny
- serwer
- Serwery
- zestaw
- podpis
- Podpisy
- podpisana
- podpisywanie
- upraszcza
- ponieważ
- Rozmiar
- powolny
- Tworzenie
- rozwoju oprogramowania
- łańcuch dostaw oprogramowania
- rozwiązanie
- Źródło
- Kod źródłowy
- prędkość
- plamy
- Personel
- STAGE
- standardy
- Nadal
- sklep
- strategie
- usprawniony
- silny
- Struktura
- taki
- Dostawa
- łańcuch dostaw
- wsparcie
- podpory
- pewnie
- Brać
- zespół
- Zespoły
- że
- Połączenia
- Źródło
- kradzież
- ich
- Im
- one
- to
- trzy
- Przez
- czas
- do
- już dziś
- narzędzia
- rozsierdzony
- Zaufaj
- zaufany
- rodzaj
- Nieupoważniony
- wyjątkowy
- chyba że
- Stosowanie
- posługiwać się
- używany
- Użytkownik
- za pomocą
- różnorodność
- zweryfikować
- widoczność
- Luki w zabezpieczeniach
- chcieć
- była
- Droga..
- DOBRZE
- Podczas
- KIM
- dlaczego
- w
- bez
- przepływów pracy
- świat
- lat
- Twój
- zefirnet