Bezpieczeństwo skoncentrowane na danych – idea, że ochrona podąża za obiektem danych, a nie za perymetrem sieci – nie jest nowa, ale jej praktyczne wdrożenie w koalicyjnych systemach wojskowych historycznie było trudne. STANAG 4774 i STANAG 4778 to formalna odpowiedź NATO: dwa zazębiające się standardy definiujące, jak etykiety poufności są strukturyzowane, jak są wiązane z danymi i jak silniki polityki je oceniają. Ten artykuł obejmuje praktyczną inżynierię zgodnego wdrożenia etykietowania: składnię etykiety, mechanizm wiązania, projekt punktu egzekwowania polityki, obsługę agregacji oraz dyscyplinę zachowania etykiet, która decyduje, czy Twoja architektura przetrwa przegląd akredytacyjny. Aby poznać kontekst polityki klasyfikacji i releasability, który ramuje tę pracę inżynieryjną, zobacz towarzyszący artykuł o klasyfikacji STANAG 4774/4778 i koalicyjnej releasability.
Model bezpieczeństwa skoncentrowanego na danych: dlaczego etykiety podróżują z danymi
Tradycyjne bezpieczeństwo skoncentrowane na sieci opiera się na poziomie klasyfikacji enklawy: gdy fragment danych znajdzie się w sieci SECRET, każdy system w tej sieci jest uznawany za zaufany do jego obsługi. Ten model załamuje się w środowiskach koalicyjnych, gdzie dane przemieszczają się między enklawami o różnych poziomach akredytacji, różnych politykach narodowych i różnych zbiorach upoważnionych odbiorców. Dokument SECRET we wspólnej sieci niekoniecznie jest releasable dla każdego narodu partnerskiego z dostępem do tej sieci.
Bezpieczeństwo skoncentrowane na danych rozwiązuje to, czyniąc etykietę nieodłączną właściwością obiektu danych. Każdy obiekt nosi maszynowo czytelną etykietę poufności, która określa jego poziom klasyfikacji, zastrzeżenia dotyczące postępowania regulujące jego użycie oraz oznaczenia releasability identyfikujące, które organizacje są upoważnione do jego otrzymania. Decyzje polityki – czy przekazać, wyświetlić, przechowywać czy wydrukować obiekt – podejmowane są przez ocenę etykiety obiektu względem poświadczenia podmiotu żądającego i poziomu akredytacji systemu docelowego, a nie przez zaufanie, że sieć egzekwuje właściwą granicę.
STANAG 4774 definiuje strukturę etykiety. STANAG 4778 definiuje mechanizm wiązania. Razem zapewniają techniczny substrat dla koalicyjnej wymiany danych, która respektuje narodową politykę ujawniania każdego narodu bez wymagania ręcznego przeglądu każdej wymiany danych. Rozumienie obu standardów jako pary – a nie w izolacji – jest warunkiem wstępnym zgodnego wdrożenia.
Składnia etykiety STANAG 4774: struktura i kodowanie
Etykieta poufności STANAG 4774 to dokument XML zgodny ze schematem XML STANAG 4774. Jej elementem najwyższego poziomu jest <ConfidentialityLabel>, który nosi trzy obowiązkowe elementy potomne i kilka opcjonalnych rozszerzeń.
Identyfikator polityki. Element <PolicyIdentifier> zawiera identyfikator obiektu (OID), który odnosi się do dokumentu polityki etykiet rządzącego tą etykietą. OID jest zarejestrowany w uznanym organie – zwykle narodowym biurze C3 lub Agencji NATO C3 – i jest kluczem pozwalającym systemom odbierającym wyszukać pełną definicję polityki i poprawnie ocenić etykietę. Etykieta bez rozwiązywalnego OID polityki nie może być oceniona przez zgodny silnik polityki i musi być traktowana jako niezweryfikowana.
Klasyfikacja. Element <Classification> określa poziom klasyfikacji jako wartość wyliczeniową: UNCLASSIFIED, RESTRICTED, CONFIDENTIAL lub SECRET. Kodowanie rozróżnia wielkość liter i musi dokładnie odpowiadać wartościom łańcuchowym zdefiniowanym w dokumencie polityki, do którego odnosi się OID. Etykieta używająca "Secret" zamiast "SECRET" nie przejdzie walidacji schematu w zgodnym wdrożeniu – częsty błąd integracji podczas generowania etykiet z bibliotek XML ogólnego przeznaczenia, które nie egzekwują wyliczenia.
Zastrzeżenia dotyczące postępowania i releasability. Element <CategoryData> nosi zastrzeżenia dotyczące postępowania, takie jak ATOMAL, CRYPTO, EYES ONLY lub zastrzeżenia specyficzne dla misji zdefiniowane przez politykę. Element <PermittedCountryCodes> nosi oznaczenie releasability jako zbiór kodów krajów ISO 3166-1 alpha-3. Oznaczenie releasability jest najważniejszą operacyjnie częścią etykiety w środowiskach wielonarodowych: określa, którym systemom narodów partnerskich wolno otrzymać etykietowane dane, niezależnie od poziomu klasyfikacji.
Generowanie etykiet: wymagania walidacji
Każda etykieta wygenerowana przez zgodny system musi być zwalidowana względem schematu XML STANAG 4774 zanim zostanie powiązana z jakimkolwiek obiektem danych. Walidacja schematu wychwytuje błędy strukturalne – nieprawidłowe OID, nieprawidłowe łańcuchy klasyfikacji, brakujące obowiązkowe elementy – ale nie waliduje poprawności semantycznej względem dokumentu polityki. Oddzielny krok walidacji na poziomie polityki musi sprawdzić, że każde zastrzeżenie i oznaczenie releasability w etykiecie jest zdefiniowane w przywoływanym dokumencie polityki oraz że kombinacja poziomu klasyfikacji i zastrzeżeń jest dozwolona przez tę politykę. Wdrożenie pomijające walidację na poziomie polityki będzie generować etykiety przechodzące walidację schematu, ale odrzucane przez dalsze silniki polityki z błędami trudnymi do zdiagnozowania po fakcie. Wbuduj krok walidacji na poziomie polityki w generator etykiet, a nie w oddzielny audyt po generowaniu.
Mechanizmy wiązania STANAG 4778: asercja i enkapsulacja
STANAG 4778 definiuje dwa mechanizmy wiązania etykiety STANAG 4774 z obiektem danych: wiązanie przez asercję i wiązanie przez enkapsulację. Służą one różnym przypadkom użycia i mają różne właściwości bezpieczeństwa, a wybór między nimi musi być dokonany na etapie projektowania architektury.
Wiązanie przez asercję tworzy podpisaną asercję XML, która zawiera etykietę, odniesienie do obiektu danych (zwykle skrót kryptograficzny ładunku) i podpis cyfrowy organu etykiet. Podpis jest obliczany za pomocą XML Digital Signature (XMLDSig) nad skanonizowanym XML etykiety. Obiekt danych i podpisana asercja są przesyłane razem – albo w tej samej kopercie wiadomości, albo jako para odniesienie-i-asercja. System odbierający weryfikuje asercję, sprawdzając podpis względem certyfikatu klucza publicznego organu etykiet, następnie sprawdza skrót obiektu danych względem skrótu w asercji. Jeśli obie kontrole przejdą, etykieta jest zweryfikowana jako autentyczna i niezmieniona, a wiązanie między etykietą a obiektem danych jest kryptograficznie potwierdzone.
Wiązanie przez asercję jest obowiązkowe dla danych przekraczających granice klasyfikacji poprzez rozwiązanie międzydomenowe (CDS). Akredytujący musi zweryfikować, że CDS poprawnie egzekwuje etykiety, a podpisana asercja dostarcza dowodów audytowych wymaganych do tej weryfikacji. Bez wiązania przez asercję na granicy CDS akredytujący nie może potwierdzić, że etykiety przedstawione systemowi niskiej strony są autentycznymi reprezentacjami decyzji organu etykiet wysokiej strony – a CDS nie zostanie akredytowany.
Wiązanie przez enkapsulację osadza etykietę bezpośrednio w strukturze obiektu danych – w nagłówku wiadomości, bloku metadanych lub zdefiniowanym polu rozszerzenia. Nie ma oddzielnego podpisu kryptograficznego; wiązanie opiera się na integralności kanału transportowego. Wiązanie przez enkapsulację jest prostsze do wdrożenia i szeroko stosowane dla danych pozostających w pojedynczej domenie bezpieczeństwa. Dla systemu C2 działającego całkowicie w obrębie enklawy SECRET wiązanie przez enkapsulację w schemacie wiadomości jest wystarczające i unika narzutu PKI wiązania przez asercję dla każdej wewnętrznej wiadomości.
Mieszanie mechanizmów wiązania w obrębie tego samego systemu – używanie wiązania przez enkapsulację dla wiadomości wewnętrznych i wiązania przez asercję tylko na granicy CDS – jest poprawne i powszechne, ale granica musi być jasno zdefiniowana i egzekwowana we wdrożeniu. Niejednoznaczność co do tego, który mechanizm wiązania obowiązuje na której granicy systemu, jest źródłem uwag akredytacyjnych.
Projekt punktu egzekwowania polityki
Punkt egzekwowania polityki (PEP) to komponent oprogramowania, który przechwytuje żądania dostępu i wymiany danych oraz ocenia etykietę żądanego obiektu względem poświadczenia podmiotu żądającego i poziomu akredytacji systemu żądającego. W architekturze zgodnej ze STANAG 4774/4778 PEP nie jest opcjonalny: to mechanizm, dzięki któremu etykieta tworzy faktyczną kontrolę dostępu, a nie jest jedynie adnotacją metadanych, która nigdy nie jest oceniana.
Algorytm oceny PEP musi poprawnie implementować dominację. Podmiot może uzyskać dostęp do obiektu wtedy i tylko wtedy, gdy poświadczenie podmiotu dominuje nad etykietą obiektu: poziom klasyfikacji podmiotu jest co najmniej tak wysoki jak obiektu, podmiot posiada wszystkie zastrzeżenia wymagane przez oznaczenia postępowania obiektu, a upoważniony zbiór releasability podmiotu pokrywa wszystkie oznaczenia releasability obiektu. Każdy z tych trzech warunków musi być oceniany niezależnie; spełnienie dwóch z trzech jest naruszeniem polityki, a nie częściowym przyznaniem dostępu.
Najczęściej źle implementowanym warunkiem jest releasability. Poprawne porównanie releasability sprawdza, że upoważniony zbiór releasability systemu odbierającego jest nadzbiorem oznaczenia releasability obiektu. System upoważniony do REL TO DEU GBR USA może otrzymać obiekt oznaczony REL TO DEU GBR, ponieważ upoważniony zbiór zawiera wszystkie oznaczone narody. System upoważniony do REL TO GBR USA nie może otrzymać obiektu oznaczonego REL TO DEU GBR, nawet jeśli GBR pojawia się w obu zbiorach, ponieważ DEU nie znajduje się w upoważnionym zbiorze systemu odbierającego. Implementacja sprawdzenia nadzbioru, a nie sprawdzenia części wspólnej, jest poprawną logiką; sprawdzenie części wspólnej jest częstym błędem i tworzy system przyznający dostęp do obiektów, których nie jest upoważniony otrzymać.
Kluczowy wniosek: Najczęstszą awarią akredytacyjną we wdrożeniach STANAG 4774/4778 nie jest generowanie ani wiązanie etykiet – jest nią obsługa agregacji. Systemy poprawnie etykietujące pojedyncze obiekty danych często nie eskalują etykiet, gdy obiekty te są łączone w produkty pochodne. Silnik fuzji łączący raport o trasie CONFIDENTIAL z ustaleniem pozycji RESTRICTED musi tworzyć wyjście CONFIDENTIAL; oprogramowanie pośredniczące dziedziczące tylko etykietę jednego obiektu wejściowego będzie tworzyć niepoprawnie etykietowane wyjścia docierające do niskiej strony przez CDS, stanowiące wyciek.
Agregacja i eskalacja etykiet
Agregacja – łączenie dwóch lub więcej etykietowanych obiektów w produkt pochodny – jest najtrudniejszym problemem w praktycznym wdrożeniu STANAG 4774/4778. Produkt pochodny musi nosić etykietę przynajmniej tak restrykcyjną jak najbardziej restrykcyjne wejście, we wszystkich trzech komponentach etykiety: poziomie klasyfikacji, zastrzeżeniach dotyczących postępowania i releasability.
Dla poziomu klasyfikacji reguła jest prosta: klasyfikacja wyjściowa to maksimum klasyfikacji wejściowych. Produkt wyprowadzony z wejść RESTRICTED i CONFIDENTIAL jest CONFIDENTIAL. Dla zastrzeżeń dotyczących postępowania wyjście musi zawierać sumę wszystkich zastrzeżeń wejściowych: jeśli jedno wejście nosi ATOMAL, a inne CRYPTO, wyjście musi nosić oba. Dla releasability wyjście musi nosić część wspólną wejściowych zbiorów releasability: jeśli jedno wejście jest releasable do DEU GBR USA, a inne do GBR FRA, wyjście jest releasable tylko do GBR, ponieważ tylko GBR jest upoważniony dla obu wejść.
Tę logikę agregacji trzeba zaimplementować w każdym komponencie tworzącym dane pochodne: silnikach fuzji, generatorach raportów, usługach podsumowywania i każdym potoku analitycznym łączącym wejścia z wielu źródeł. Obliczenie agregacji etykiet musi nastąpić zanim obiekt wyjściowy zostanie zapisany w jakimkolwiek buforze lub kolejce, a nie jako krok przetwarzania końcowego. Wyjście istniejące bez poprawnej etykiety nawet przez krótki czas – zanim uruchomi się krok przetwarzania końcowego – stanowi okno niezgodności z polityką, które akredytujący zidentyfikuje podczas przeglądu projektu.
Zachowanie etykiet w wymianie koalicyjnej
Zachowanie etykiet to dyscyplina zapewniania, że etykieta STANAG 4774 i jej wiązanie STANAG 4778 przetrwają pełną ścieżkę tranzytu od systemu źródłowego do każdego upoważnionego odbiorcy, w tym przez oprogramowanie pośredniczące, brokery wiadomości, bramy federacyjne i komponenty translacji formatów, które mogą nie być świadome etykiet.
W infrastrukturze wymiany zgodnej z Federated Mission Network (FMN) zachowanie etykiet jest wbudowane w profil: warstwa usług FMN jest zobowiązana nosić etykiety STANAG 4774 w kopertach wiadomości i weryfikować wiązania podczas przyjęcia. W praktyce wiele wdrożonych systemów zawiera komponenty poprzedzające zgodność z FMN lub zintegrowane bez świadomości etykiet – starsze przekaźniki wiadomości, niezgodne routery CoT, oprogramowanie pośredniczące baz danych usuwające metadane przy wstawianiu. Każdy taki komponent stanowi potencjalny punkt utraty etykiety, który należy zidentyfikować i złagodzić w projekcie systemu.
Standardowym środkiem łagodzącym ryzyko utraty etykiety jest użycie wiązania przez asercję, a nie wiązania przez enkapsulację dla danych przechodzących przez niezaufaną infrastrukturę. Ponieważ asercja jest częścią treści ładunku, a nie nagłówkiem transportowym, przetrwa tranzyt przez komponenty usuwające lub przepisujące nagłówki wiadomości. Po stronie odbierającej weryfikacja wiązania przez asercję potwierdza, że etykieta jest autentyczna i nienaruszona, nawet jeśli metadane transportowe zostały zmodyfikowane w tranzycie.
Dla systemów, które muszą być zgodne ze standardami interoperacyjności NATO szerzej, testowanie zachowania etykiet powinno być zintegrowane z planem testów interoperacyjności CWIX jako pierwszorzędny cel testowy, a nie późny dodatek. System przechodzący wszystkie funkcjonalne testy interoperacyjności, ale po cichu usuwający etykiety w tranzycie, nie przejdzie przeglądu akredytacji bezpieczeństwa, nawet jeśli nigdy nie zawiedzie ani jednego testu funkcjonalnego. Zestaw testów zachowania etykiet musi wstrzykiwać obiekty ze znanymi etykietami w każdym punkcie wejścia, przechwytywać i sprawdzać obiekty w każdym punkcie wyjścia oraz weryfikować, że zarówno treść etykiety, jak i podpis wiązania są identyczne między wstrzyknięciem a odbiorem.
Egzekwuj etykiety poufności w całych koalicyjnych przepływach danych
Interoperability Dashboard zapewnia widoczność w czasie rzeczywistym zgodności etykiet, weryfikacji wiązania i egzekwowania polityki w całej federacyjnej wymianie danych – zbudowany dla złożoności klasyfikacji wielonarodowych środowisk C2, gdzie zgodność ze STANAG 4774/4778 musi być wykazalna wobec akredytujących.
Tę analizę przygotowali inżynierowie Corvus Intelligence, którzy budują krytyczne systemy interoperacyjności i bezpieczeństwa danych dla organizacji obronnych i rządowych. Poznaj nasz zespół →