Co to jest zgodność ze standardem FIPS 140-2?

Jeśli Twoja praca wiąże się z kontaktami z działem IT rządu USA lub produkując sprzęt i / lub oprogramowanie, które masz nadzieję dostarczyć rządowi USA, prawdopodobnie słyszałeś o zgodności ze standardem FIPS 140-2, ale co to znaczy być zgodnym ze standardem FIPS i czy powinno to mieć dla Ciebie znaczenie?

Co oznacza FIPS?

Akronim „FIPS” odnosi się do „Federal Information Processing Standards”. Seria FIPS 140 to standardy bezpieczeństwa komputerowego określone przez National Institute of Standards & Technology (NIST) dla rządu USA.

Glosariusz terminów

Standard zgodności FIPS 140-2 w dużym stopniu dotyczy kluczy szyfrujących i ich fizycznej ochrony. Dla tych, którzy chcą zrozumieć, co to wszystko oznacza, ale sami nie są specjalistami w dziedzinie kryptografii, oto zestawienie kilku podstawowych terminów.

  • Kryptologia – zajmuje się badaniami i rozwojem bezpiecznych metod komunikacji, w tym rozwój i rozwój szyfrowania i innych metod zapewniania prywatności i bezpieczeństwa danych
  • Klucz kryptograficzny – ciąg znaków w postaci jawnego tekstu używany przez algorytm szyfrowania do szyfrowania lub odszyfrowywania tekstu
  • Moduł kryptograficzny – Urządzenie obsługujące szyfrowanie, deszyfrowanie, podpisy cyfrowe, uwierzytelnianie użytkownika i generowanie liczb losowych
  • Krytyczny parametr bezpieczeństwa (CSP) – zgodnie z glosariuszem NIST, dostawcy CSP obejmują informacje związane z bezpieczeństwem, których ujawnienie lub modyfikacja może zagrozić bezpieczeństwo modułu kryptograficznego
  • Common Criteria (CC) – znane również jako Common Criteria for Information Technology Security Evaluation. Stanowi techniczną podstawę porozumienia Common Criteria Recognition Arrangement (CCRA), międzynarodowego porozumienia zapewniającego, że produkty zabezpieczające są odpowiednio testowane przez niezależne licencjonowane laboratoria.
  • Szyfrowanie – proces kodowania wiadomości lub pliku, zazwyczaj z algorytm zaprojektowany jako niepraktyczny do inżynierii wstecznej, tak aby tylko upoważnione osoby mogły go wyświetlać
  • Tekst jawny – tekst, który nie został zaszyfrowany ani zaciemniony przez algorytm szyfrowania. Każdy przypadkowy obserwator może przeglądać i czytać niezabezpieczony i / lub niezaszyfrowany zwykły tekst

Co to jest seria FIPS 140?

FIPS 140 to zestaw wymagań i standardów dla modułów kryptograficznych zarówno dla komponentów oprogramowania, jak i sprzętu do użytku przez departamenty i agencje rządowe Stanów Zjednoczonych. FIPS 140-2 to drugi i aktualny (na dzień publikacji tego bloga) zestaw standardów FIPS 140 wydany przez NIST. Wydany 25 maja 2001 r. FIPS 140-2 rozszerza się o FIPS 140-1 (wydany 11 stycznia 1994 r.), Wykorzystuje Common Criteria (CC) Evaluation Assurance Levels (EAL) do określenia poziomu bezpieczeństwa i uwzględnia opinie społeczności, a także nowe Rozwój i technologie IT od 1994 roku.

Należy zauważyć, że chociaż standardy te dotyczą standardów kryptograficznych i bezpieczeństwa zarówno sprzętu, jak i oprogramowania, zgodność produktu ze standardem FIPS 140-2 nie gwarantuje bezpieczeństwa. FIPS 140-2 ma mieć zastosowanie tylko do modułów kryptograficznych współpracujących z obciążeniami zarządzającymi poufnymi, ale niesklasyfikowanymi informacjami (SBU).

Jakie są poziomy pewności oceny?

Common Criteria ustanawia siedem ( 7) różne Poziomy Zapewnienia Oceny (EAL), trafnie nazwane EAL1-EAL7. Często pojawia się znak „+” obok danego poziomu EAL (np. EAL5 +), co oznacza, że dane urządzenie spełniło określone wymagania wykraczające poza minimum dla danego EAL. Ponieważ najwyższy poziom FIPS 140-2 wymaga tylko EAL4, omówię tylko EAL1-EAL4 na tym blogu.

  • EAL1: Przeznaczony do celów oceny (TOE), w przypadku których zagrożenia bezpieczeństwa nie są postrzegane jako poważne, ale istnieje potrzeba zaufania do wdrożonych zabezpieczeń działa zgodnie z przeznaczeniem. Poziom EAL1 jest cenny dla poparcia twierdzenia, że dana organizacja dołożyła należytej staranności w ochronę danych osobowych.
  • EAL2: Idealny dla produktów, które wymagają wystarczającej pewności bezpieczeństwa, gdy dokumentacja dotycząca rozwoju TOE nie jest dostępny, na przykład w starszych środowiskach IT od dawna.
  • EAL3: Zaprojektowany, aby zapewnić umiarkowany poziom gwarantowanego bezpieczeństwa. EAL3 dokładniej analizuje TOE, w tym jego rozwój. Ten poziom jest idealny dla organizacji z solidne praktyki inżynierii bezpieczeństwa zapieczętowane na etapie projektowania n i którzy nie spodziewają się, że będą musieli znacząco przeprojektowywać TOE
  • EAL4: najwyższy poziom ekonomicznie możliwy do modernizacji w istniejącej linii produktów (to znaczy testowanie i przeprojektowanie produktów, które nie zostały zbudowane z myślą o wyższych EAL, będą prawdopodobnie zbyt kosztowne i czasochłonne). EAL4 ma na celu zapewnienie maksymalnego bezpieczeństwa w oparciu o najlepsze praktyki programistyczne.

Jakie są różne poziomy FIPS 140-2?

Publikacja FIPS 140-2 ustanawia cztery różne poziomy bezpieczeństwa.Poziom 1 ma najniższy poziom wymagań bezpieczeństwa, podczas gdy poziom 4 zapewnia najwyższy poziom bezpieczeństwa.

FIPS 140-2 Poziom 1
Najniższy poziom wymagań bezpieczeństwa określony dla modułu kryptograficznego. Poziom bezpieczeństwa 1 nie wymaga żadnych fizycznych mechanizmów bezpieczeństwa poza podstawowymi wymaganiami dla komponentów klasy produkcyjnej i umożliwia wykonanie modułu kryptograficznego na komputerze ogólnego przeznaczenia przy użyciu niedocenianego systemu operacyjnego.

Przykład Moduł kryptograficzny poziomu bezpieczeństwa 1 to płyta szyfrująca na komputerze osobistym (PC).

FIPS 140-2 poziom 2
Poziom bezpieczeństwa 2 rozszerza się na poziomie bezpieczeństwa 1, dodając trzy główne wymagania:

  • Zabezpieczenie przed manipulacją na modułach kryptograficznych: może to obejmować powłoki, uszczelki lub zamki odporne na włamanie. Środki zabezpieczające przed manipulacją muszą być stosowane w taki sposób, aby plomby i / lub powłoki musiały zostać złamane w celu uzyskania fizycznego dostępu do kluczy kryptograficznych w postaci zwykłego tekstu i krytycznych parametrów bezpieczeństwa (CSP).
  • Uwierzytelnianie oparte na rolach: minimalny wymóg dla poziomu bezpieczeństwa 2 określa, że dany użytkownik musi mieć określoną rolę i poziom autoryzacji uwierzytelniony przez moduł kryptograficzny.
  • Wymagania dotyczące systemu operacyjnego: poziom bezpieczeństwa 2 umożliwia wykonanie modułu kryptograficznego na urządzeniu ogólnego przeznaczenia Komputer PC wykorzystujący zatwierdzony lub oceniony zaufany system operacyjny. Systemy operacyjne muszą być oceniane na poziomie zapewnienia oceny Common Criteria (CC) EAL2 lub wyższym. Aby uzyskać więcej informacji, zapoznaj się z sekcją 1.2 publikacji FIPS 140-2.

FIPS 140-2 poziom 3
Wymagania dotyczące bezpieczeństwa określone przez poziom bezpieczeństwa 3 rozszerzają się na te określone przez poziom 2 w czterech kluczowych obszarach:

  • Zapobieganie włamaniom: wykraczając poza zabezpieczenia przed manipulacją zaimplementowane na poziomie bezpieczeństwa 2, poziom bezpieczeństwa 3 wymaga fizycznych mechanizmów bezpieczeństwa zaprojektowanych w celu uniemożliwienia intruzowi uzyskania dostępu do dostawców CSP w kryptografii moduł. Mechanizmy te mają na celu zapewnienie wysokiego prawdopodobieństwa wykrycia i zareagowania na próby fizycznego dostępu, manipulacji lub użycia modułu kryptograficznego bez autoryzacji. Przykładowe mechanizmy obejmują mocne obudowy i obwody zaprojektowane do zerowania (wymazywania) dostawców CSP w postaci zwykłego tekstu, gdy moduł jest modyfikowany.
  • Uwierzytelnianie oparte na tożsamości: bardziej szczegółowa metoda uwierzytelniania, uwierzytelnianie oparte na tożsamości poprawia wymóg uwierzytelniania na poziomie bezpieczeństwa 2. Osiąga się to poprzez uwierzytelnianie tożsamości danego użytkownika zamiast uwierzytelniania roli tego użytkownika. Przykładem różnicy może być sieć, która wymaga logowania określonych użytkowników zamiast sieci, która może mieć konta ogólnego użytku lub konta gościa plus ogólne konto administratora.
  • Fizyczna (lub logiczna) separacja: Aby zachować zgodność w przypadku poziomu bezpieczeństwa 3 dane wejściowe i / lub wyjściowe dostawców CSP w postaci zwykłego tekstu muszą być wykonywane przy użyciu portów, które są fizycznie (lub logicznie oddzielone interfejsy, w przypadku środowiska wirtualnego) oddzielone od innych portów. Dostawcy usług kryptograficznych w postaci zwykłego tekstu mogą być wprowadzani do modułu kryptograficznego lub wyprowadzani z niego przez system zamykający lub interweniujący tylko wtedy, gdy są w postaci zaszyfrowanej.
  • Wymagania dotyczące systemu operacyjnego: podobnie jak poziom bezpieczeństwa 2, poziom bezpieczeństwa 3 umożliwia moduł kryptograficzny do wykonania na komputerze PC ogólnego przeznaczenia z systemem operacyjnym spełniającym minimalne wymagania. Wymagania dla poziomu bezpieczeństwa 3 są bardziej rygorystyczne niż poziom 2 i obejmują poziom pewności oceny CC EAL3 lub wyższy. Więcej informacji na temat wymagań systemu operacyjnego dla poziomu bezpieczeństwa 3 można znaleźć w sekcji 1.3 publikacji FIPS 140-2.

FIPS 140-2 poziom 4
Poziom bezpieczeństwa 4 zapewnia najwyższy poziom bezpieczeństwa z czterech poziomów bezpieczeństwa FIPS 140-2 i jest idealny dla modułów kryptograficznych pracujących w środowiskach niechronionych fizycznie. Aby zorientować się, co stanowi fizycznie niezabezpieczone środowisko, weź pod uwagę miejsce, w którym informacje lub komunikaty rządowe mogą być przetwarzane, przechowywane lub przesyłane tranzytem, na przykład satelity i bezzałogowe statki powietrzne. Intencją poziomu bezpieczeństwa 4 jest to, aby fizyczne mechanizmy bezpieczeństwa całkowicie obejmowały i chroniły moduł kryptograficzny przed wszelkimi nieautoryzowanymi próbami fizycznego dostępu do niego. Mechanizmy muszą zapewniać bardzo wysokie prawdopodobieństwo wykrycia włamania i muszą być zaprojektowane tak, aby natychmiast wyzerować wszystkie dostawcy CSP w postaci zwykłego tekstu w przypadku wykrycia włamania.

Aby zachować zgodność ze standardem FIPS 140-2 poziom 4, dane kryptograficzne moduł musi być również chroniony przed warunkami środowiskowymi, które mogą wypchnąć moduł poza jego normalne zakresy pracy. Potencjalni intruzi często wypychają moduł kryptograficzny poza jego normalne napięcie i temperaturę, aby zagrozić bezpieczeństwu modułu.Przykładami mogą być nadmierne ogrzewanie lub zamrażanie pojemnika modułu, aby uczynić go kruchym (rozważ popularny motyw filmowy o szpiegach używających ciekłego azotu do zamrażania i łamania zamka).

Ochrona środowiska może przyjść forma funkcji, które zerują CSP, jeśli moduł kryptograficzny wykryje fluktuacje poza normalnym zakresem działania. Korzystając z powyższego przykładu, gdyby szpieg w filmie zamroził zamek do modułu kryptograficznego, aby go złamać, środki ochrony środowiska wykryłyby, że zamek jest poddawany temperaturom poniżej ustawionego progu, i wyzerowałby moduł. To czyni go bezużytecznym dla szpiega, nawet jeśli moduł zostanie w końcu uzyskany.

Alternatywnie, wymóg ochrony środowiska może zostać spełniony poprzez rozsądną pewność, że wahania poza normalnym zakresem roboczym nie zagrozą bezpieczeństwu modułu.

Podobnie jak poziom bezpieczeństwa 2 i 3, poziom bezpieczeństwa 4 również wymaga systemu operacyjnego, który spełnia określony poziom pewności oceny CC. Aby moduł kryptograficzny był zgodny ze standardem FIPS 140-2 na poziomie 4, system operacyjny, na którym działa, musi otrzymać ocenę CC EAL4 lub wyższą.

Uzyskanie certyfikatu FIPS 140-2

Aby dany moduł kryptograficzny został zweryfikowany jako zgodny ze standardem FIPS 140-2, organizacja musi przesłać ten moduł do programu Cryptographic Module Validation Program (CMVP). CMVP to wspólny wysiłek NIST i Communications Security Establishment (CSE) dla rządu kanadyjskiego.

Aby ich moduł został oceniony przez CMVP, organizacja musi przesłać moduł do akredytowanego Cryptographic Module Testing Laboratorium. Akredytowane laboratoria to niezależne laboratoria, które uzyskały certyfikat National Voluntary Laboratory Accreditation Program (NVLAP).

Utrzymanie certyfikatu FIPS 140-2

Certyfikacja FIPS 140-2 może zająć dużo czasu i czasochłonny proces, trwający zwykle od kilku miesięcy do ponad roku od początku do końca. Ponadto moduł musi zostać ponownie oceniony dla każdej zmiany wprowadzonej w oprogramowaniu, niezależnie od tego, jak mała. W przypadku wykrycia problemu w module zgodnym ze standardem FIPS rozwiązanie utraci certyfikat FIPS do czasu ponownej oceny i certyfikacji. W tym okresie organizacja nie będzie mogła dostarczać swoich modułów dostawcom i agencjom, które wymagają tego standardu.

Krytyka standardu FIPS 140-2

Podczas sprawdzania zgodności ze standardem FIPS 140-2 jest istotną częścią pracy z działami IT rządu Stanów Zjednoczonych, proces walidacji prowadzi do uzasadnionej krytyki standardu FIPS 140-2.

Głównym punktem krytyki jest długi proces walidacji. Ze względu na trwający od miesięcy do roku proces walidacji oraz fakt, że organizacja musi ponownie walidować swój produkt dla każdej zmiany, bez względu na to, jak drobna, wiele firm niechętnie aktualizuje lub aktualizuje oprogramowanie, nawet jeśli zostanie wykryty błąd. Może to powodować opóźnienia w aktualizacjach krytycznych, a nawet zachęcić organizacje do ukrywania drobnych błędów w kodzie.

Organizacje odkryły błędy i luki w swoim oprogramowaniu, ale napotkały trudności i niejasny proces szybkiego uzyskiwania poprawka sprawdzona jako zgodna z FIPS 140-2. W jednym przykładzie organizacja odkryła lukę w certyfikowanym module i przygotowała poprawkę do wdrożenia tego samego dnia, ale nie była w stanie zweryfikować poprawki w odpowiednim czasie. W rezultacie organizacja ogłosiła lukę w swoim oprogramowaniu, a CMVP niemal natychmiast unieważniło walidację modułu FIPS 140-2, pozostawiając ich i ich klientów w zawieszeniu do czasu zakończenia nowej weryfikacji.

Na czym polega ten przypadek? Na szczególną uwagę zasługuje fakt, że luka została znaleziona w pochodnej OpenSSL o otwartym kodzie źródłowym, na której opierała się ich własna walidacja. Chociaż istniało kilka innych prawnie zastrzeżonych walidacji opartych na tym samym kodzie, tylko nieliczne z nich otrzymały unieważnienie. Dzieje się tak, ponieważ inne organizacje nieznacznie zmodyfikowały i ponownie zweryfikowały kod pod inną nazwą, zamiast wykorzystywać kod zidentyfikowany jako open source. To skutecznie ukryło pochodzenie kodu, a inne firmy były w stanie uniknąć unieważnienia wynikającego z luki w kodzie open source.

Pytania, które należy zadać

Biorąc pod uwagę krytykę FIPS 140-2, każda organizacja, która chce, aby jej moduł kryptograficzny był używany przez rząd USA, powinna zadać twórcy modułu kilka ważnych pytań:

  • Kiedy ostatnio moduł kryptograficzny był aktualizowany / zweryfikowany?
  • Czy nowa wersja modułu kryptograficznego jest obecnie poddawana weryfikacji?
  • Czy są jakieś znane błędy lub luki w module lub jego kodzie bazowym, które mogły nie zostać ujawnione?
  • Czy są plany aktualizacji i / lub ponownej weryfikacji modułu kryptograficznego w najbliższej przyszłości?
  • Jak wygląda proces / rytm aktualizacji modułu zgodnego ze standardem FIPS?
  • Czy moduł kryptograficzny przeszedł jakiekolwiek testy lub walidację poza CMVP?

***

O XMedius

XMedius to światowy lider w dziedzinie rozwiązań komunikacyjnych dla przedsiębiorstw. Pakiet rozwiązań do komunikacji lokalnej i chmurowej klasy korporacyjnej umożliwia firmom korzystanie z bezpiecznej i ujednoliconej komunikacji, a także wymianę wrażliwych i poufnych danych, które spełniają, a nawet przekraczają branżowe wymagania dotyczące zgodności z przepisami. Z siedzibą w Montrealu (Kanada), z biurami w Seattle (USA) i Paryżu (Francja), firma obsługuje przedsiębiorstwa, przedsiębiorstwa i usługodawców za pośrednictwem globalnego zespołu pracowników zorientowanych na klienta. Jego rozwiązania są wdrażane na całym świecie w wielu sektorach, w tym w edukacji, finansach, administracji, służbie zdrowia, produkcji, handlu detalicznym i usługach prawnych. Aby uzyskać więcej informacji na temat XMedius i jego rozwiązań, odwiedź www.xmedius.com i połącz się na LinkedIn i Twitterze.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *