Przeniesienie pliku z sieci tajnej do jawnej brzmi trywialnie — dopóki nie zastanowimy się, co nie powinno się z nim przenieść. Tekst, który analityk zamierza opublikować, może być czysty, ale plik go zawierający może przemycać treści niejawne w metadanych, osadzonych obiektach, historii wersji lub w niesparsowanym ogonie formatu binarnego. Zapora ogniowa tego nie rozwiąże, bo zapora ufa własnej konfiguracji i własnemu stosowi oprogramowania — a obydwa można obrześć. Defensywna odpowiedź polega na tym, aby niepożądany kierunek przepływu stał się fizyczną niemożliwością, a następnie na inspekcji tego, co wolno przepłynąć w dozwolonym kierunku. To właśnie dziedzina diody danych i rozwiązania międzydziedzinowego.
Dlaczego kierunek musi być wymuszony sprzętowo
Dioda danych wymusza jednokierunkowy przepływ danych jako właściwość fizyki, a nie oprogramowania. Klasyczna implementacja to łącze optyczne z nadajnikiem po stronie źródłowej i odbiornikiem po stronie docelowej — celowo bez nadajnika po stronie docelowej i bez odbiornika po stronie źródłowej. Fotony podróżują z sieci wysokiej do niskiej (lub odwrotnie, zależnie od projektu); nie istnieje żadna optyczna ścieżka, którą cokolwiek mogłoby płynąć z powrotem. Ponieważ jednokierunkowość jest wbudowana w okablowanie, nie można jej wyłączyć przez błąd konfiguracji, exploit w oprogramowaniu układowym ani przez złośliwego administratora mającego dostęp do któregokolwiek z hostów.
To zasadnicza różnica w stosunku do zapory ogniowej. Zapora jest urządzeniem dwukierunkowym skonfigurowanym tak, żeby zachowywać się jak jednokierunkowe. Jej wymuszenie zależy od zestawów reguł, integralności systemu operacyjnego i założenia, że żadna reguła nie została dodana omyłkowo. Dioda danych usuwa te założenia: nawet całkowicie skompromitowany host po stronie docelowej nie może eksfiltrować danych z powrotem przez granicę, ponieważ nie ma do tego żadnego kanału. Dla ochrony enklawy o wysokiej klasyfikacji przed jakimkolwiek połączeniem przychodzącym, lub dla zagwarantowania, że wrażliwa sieć może odbierać aktualizacje bez jakiejkolwiek dostępności z zewnątrz, ta fizyczna gwarancja jest tym, co umożliwia akredytację.
Czego dioda nie rozwiązuje
Kierunek to nie to samo co treść. Jednokierunkowe łącze eksportowe z sieci tajnej do jawnej będzie przenosić treści niejawne równie wiernie jak treści dopuszczone do publikacji — nie ma pojęcia, które są które. Jeśli analityk eksportuje prezentację zawierającą ukryty slajd, osadzone dane źródłowe lub notatki prelegenta pozostawione w pliku, dioda posłusznie przesyła wszystko. Dioda odpowiada jedynie na pytanie: „czy dane mogą płynąć z powrotem?”. Odrębne i trudniejsze pytanie — „czy ten konkretny obiekt powinien w ogóle mieć prawo się przemieszczać?” — należy do rozwiązania międzydziedzinowego nałożonego na warstwę diody.
Od diody danych do rozwiązania międzydziedzinowego
Rozwiązanie międzydziedzinowe (CDS) to kompletny, akredytowany system kontrolowanego transferu informacji między domenami bezpieczeństwa. Projekty CDS przeznaczone wyłącznie do transferu przenoszą dane bez zapewniania żadnej ze stron interaktywnego dostępu do drugiej; projekty CDS z dostępem pozwalają jednej stacji roboczej sięgać do wielu domen przez kontrolowaną granicę. Niniejszy artykuł dotyczy przypadku transferu, w którym diody danych są najczęściej stosowane jako rdzeń wymuszający.
Transfer CDS ma trzy warstwy. Pierwsza to warstwa wymuszenia fizycznego — zazwyczaj jedna lub więcej diod danych — która ustala dozwolony kierunek. Druga to warstwa transportowa, oprogramowanie proxy umożliwiające niezawodne dostarczanie przez łącze pozbawione kanału zwrotnego. Trzecia to warstwa inspekcji, transfer guard, który obiekt po obiekcie decyduje, co ma prawo przekroczyć granicę. Połączenie tych trzech warstw wraz z reżimem audytu i udokumentowaną koncepcją operacji stanowi to, co ocenia organ akredytacyjny. Relacja między kontrolą kierunku a kontrolą treści jest bardziej szczegółowo omówiona w naszym artykule towarzyszącym na temat rozwiązań międzydziedzinowych dla obronności.
Niezawodny transport bez kanału zwrotnego
Większość użytecznych protokołów — przede wszystkim TCP — zakłada kanał zwrotny do potwierdzeń, retransmisji i kontroli przepływu. Prawdziwa dioda danych go nie posiada. Standardowym rozwiązaniem jest para proxy, po jednym z każdej strony diody. Proxy po stronie nadawczej lokalnie kończy sesję TCP aplikacji, potwierdza odbiór źródłu tak, jakby było miejscem docelowym, a następnie serializuje ładunek do jednokierunkowego strumienia. Ten strumień jest przenoszony przez diodę przy użyciu protokołu zbudowanego do dostarczania jednostronnego, z korekcją błędów z wyprzedzeniem (FEC) zamiast retransmisji: dodawane są redundantne dane, dzięki czemu odbiorca może odtworzyć utracone pakiety bez konieczności ponownego ich żądania.
Proxy po stronie odbiorczej rekonstruuje ładunek, weryfikuje jego integralność i otwiera nową sesję TCP do właściwego miejsca docelowego. Z punktu widzenia aplikacji nastąpił zwykły transfer pliku lub dostarczenie wiadomości. Z punktu widzenia architekta bezpieczeństwa żadne potwierdzenie, uścisk dłoni ani sygnał modulowany czasem nie przekroczył fizycznej granicy. Przepustowość i niezawodność są dostrajane przez regulację redundancji FEC i rozmiaru segmentów do zmierzonego poziomu błędów łącza, zamieniając pasmo na odporność zamiast polegania na kanale zwrotnym, który nie istnieje.
Transfer guard: inspekcja i kontrola zwalniania
Transfer guard to inteligencja rozwiązania międzydziedzinowego. Znajduje się na ścieżce danych i stosuje politykę zwalniania do każdego obiektu przed dopuszczeniem go do przekroczenia granicy. Nadrzędną zasadą jest lista dozwolonych (whitelist), a nie lista zabronionych (blacklist): zamiast próbować wyliczać wszystko, co jest niebezpieczne, guard pozwala wyłącznie na dane ściśle zgodne ze znane-dobra specyfikacją i odrzuca wszystko inne. Kilka technik działa wspólnie.
Walidacja strukturalna. Każdy plik jest parsowany według ścisłego schematu dla zadeklarowanego typu. Dokument, który twierdzi, że jest prostym formatem niosącym tekst, ale zawiera osadzone makra, zewnętrzne odwołania lub nieoczekiwane regiony binarne, nie przechodzi walidacji. Guard nie próbuje takiego pliku naprawić — odrzuca go, ponieważ próba naprawy wrogich danych wejściowych sama w sobie stanowi powierzchnię ataku.
Usuwanie metadanych i kanonizacja. Złożone formaty są przekształcane do najprostszej wiernej reprezentacji — na przykład przez renderowanie bogatego dokumentu do płaskiego, wygenerowanego ponownie formatu, który nie może przenosić ukrytych obiektów oryginału. Nazwy autorów, historia edycji, znaczniki geolokalizacji i inne metadane są usuwane. Kanonizacja sprowadza wiele sposobów, w jakie format może kodować tę samą widoczną treść, do jednego, eliminując zmienność, którą steganografia i kanały ukryte wykorzystują.
Dopasowanie treści i przegląd przez człowieka. Listy zabronionych słów, wzorce wyrażeń regularnych i detektory oznaczeń klasyfikacyjnych flagują tekst, który nigdy nie powinien pojawić się po stronie docelowej. W przypadku eksportu z sieci wysokiej do niskiej — niebezpiecznego kierunku — oznaczone obiekty są kierowane do recenzenta ludzkiego, który podejmuje ostateczną decyzję o zwolnieniu. Automatyczna inspekcja ogranicza wolumen, który recenzent musi obsłużyć; nie zastępuje go przy transferach o najwyższym ryzyku.
Kluczowy wniosek: Dioda danych i transfer guard rozwiązują dwa różne problemy i żaden z nich nie jest opcjonalny. Dioda sprawia, że zły kierunek jest fizycznie niemożliwy; guard sprawia, że zła treść jest niemożliwa w dobrym kierunku. Dioda bez guardu wycieka niejawne dane w dół w metadanych plików; guard bez diody może zostać ominięty przez dowolna lukę w oprogramowaniu, która ponownie włączy ścieżkę powrotną. Akredytacja wymaga obu, plus śladu audytowego dowodzącego, że działały.
Import versus eksport: asymetryczne ryzyko
Dwa kierunki transferu międzydziedzinowego niosą bardzo różne ryzyko. Import — przenoszenie danych z sieci niższej do wyższej — to przede wszystkim problem wstrzyknięcia złośliwego oprogramowania i integralności. Cel jest stroną bardziej wrażliwą, więc obawą jest, że przychodzące dane mogą zawierać exploit lub skompromitować wysoką enklawę. Transfer guard na ścieżce importu skupia się na walidacji formatu, skanowaniu antywirusowym i odrzucaniu wszystkiego, co jest wykonywalne lub aktywnie interpretowane.
Eksport — przenoszenie danych z sieci wyższej do niższej — to kierunek, który może ujawnić informacje niejawne, i dlatego stanowi trudniejszy problem. Zadaniem guardu jest tu zachowanie poufności: zapewnienie, że nic niejawnego nie jedzie na gapę w metadanych, ukrytych obiektach ani kanałach ukrytych, oraz że oznaczenia klasyfikacyjne są obecne i spójne. Ponieważ konsekwencją niepowodzenia eksportu jest ujawnienie, a nie infekcja, ścieżki eksportu zazwyczaj wymagają ściślejszych list dozwolonych formatów, obowiązkowego przeglądu oznaczonych treści przez człowieka i najbardziej konserwatywnej kanonizacji. Powszechna architektura stosuje dwie fizycznie oddzielne diody — po jednej dla każdego kierunku — tak aby polityki importu i eksportu oraz ich tryby awarii nigdy nie dzieliły ścieżki.
Miejsce diod w architekturze warstwowej
Diody danych rzadko działają samodzielnie. Są jedną z kontroli w projektowaniu głębokiej obrony, które obejmuje również segmentację sieci, silne uwierzytelnianie i ciągłe monitorowanie. Dioda chroniąca wrażliwą enklawę uzupełnia, a nie zastępuje, kontrole zero-trust wewnątrz tej enklawy; dioda zarządza granicą, podczas gdy weryfikacja oparta na tożsamości zarządza każdym żądaniem wewnątrz — temat naszego artykułu o architekturze zero-trust dla sieci wojskowych. Diody naturalnie współpracują też z wdrożeniami izolowanymi: system z przerwą powietrzną, który mimo to musi odbierać aktualizacje oprogramowania lub analizy zagrożeń, może używać diody importowej do przyjmowania danych bez konieczności ujawniania ścieżki powrotnej — wzorzec omówiony w artykule o wdrożeniach z przerwą powietrzną dla oprogramowania obronnego.
Realia operacyjne
Rozwiązanie międzydziedzinowe to zobowiązanie operacyjne, a nie jednorazowa instalacja. Wskaźniki odrzuceń muszą być monitorowane, ponieważ guard odrzucający zbyt wiele danych szkoli użytkowników w znajdowaniu nieautoryzowanych obejść — co jest najbardziej niebezpiecznym trybem awarii. Głębokość kolejki i latencja muszą być śledzone, aby legitymizowane, pilne transfery nie były zagłodzane. Każdy format, który guard akceptuje, stanowi powierzchnię ataku, którą należy ponownie zwalidować za każdym razem, gdy zmieni się parser, zestaw reguł lub oprogramowanie bazowe. A każda decyzja transferowa musi być rejestrowana w niezmiennym magazynie, aby po fakcie audytor mógł odtworzyć dokładnie, co przekroczyło granicę i dlaczego zostało dopuszczone.
Zarządzanie formatami jest elementem najczęściej niedocenianym. Pokusa w każdym wdrożeniu operacyjnym polega na ciągłym rozszerzaniu akceptowanych formatów — tu nowy typ obrazu, tam bogatszy format dokumentu — aż lista dozwolonych po cichu staje się listą zabronionych przez atrycję. Każde rozszerzenie powiększa powierzchnię parsowania, której guard musi ufać, a złożony parser obsługujący wrogie dane wejściowe jest dokładnie tym miejscem, w którym historycznie zawodzą rozwiązania międzydziedzinowe. Zdyscyplinowaną praktyką jest utrzymywanie zestawu akceptowanych formatów tak małego, jak pozwala misja, preferowanie prostych formatów strukturalnych nad bogatymi i traktowanie każdego wniosku o dodanie formatu jako zmiany wymagającej ponownej oceny, a nie prostego ustawienia konfiguracji. Gdy bogaty format jest naprawdę wymagany, bezpieczniejszą drogą jest jego wyrenderowanie do płaskiej, wygenerowanej ponownie reprezentacji po stronie zaufanej i przetransferowanie tylko tej, zamiast dopuszczania oryginalnej struktury przez granicę.
Aspekt ludzki jest równie ważny jak techniczny. Recenzenci oceniający oznaczone obiekty eksportowe potrzebują szkolenia, jasnych kryteriów zwalniania i narzędzi prezentujących obiekt w sposób odsłaniający ukrytą treść, a nie ją ukrywający. Proces przeglądu pokazujący recenzentowi jedynie wyrenderowaną powierzchnię dokumentu, podczas gdy guard po cichu przepuszcza metadane pod spodem, daje fałszywe poczucie bezpieczeństwa. Najsilniejsze wdrożenia instrumentują sam krok przeglądu — mierząc, jak długo trwają przeglądy, jak często recenzenci uniewazniają automatyczne flagi i czy wzorce unieważnień dryfują w czasie — tak aby decyzja o kontrolowanym zwolnieniu pozostawała celową ludzką oceną, a nie mechanicznym stemplem.
Akredytacja i autoryzacja
Żadne rozwiązanie międzydziedzinowe nie łączy sieci niejawnych bez formalnej akredytacji. W środowiskach bezpieczeństwa narodowego USA National Cross Domain Strategy and Management Office (NCDSMO) utrzymuje bazę ocenionych produktów i wymagania projektowe Raise-the-Bar, a nowy lub zmodyfikowany CDS przechodzi laboratoryjna ocenę bezpieczeństwa, po której następuje formalna decyzja o autoryzacji do działania. NATO i programy krajowe stosują analogiczne reżimy odwołujące się do oceny Common Criteria i krajowych organów akredytacji bezpieczeństwa. Co kluczowe, akredytacja obejmuje całą koncepcję operacji — dozwolone formaty danych, zasady inspekcji, projekt audytu i proces przeglądu przez człowieka — a nie tylko samo urządzenie. Dioda jest komponentem; akredytowane CDS to system o udokumentowanym zachowaniu i to system — nie pudełko — jest tym, co zatwierdza organ.
Zbuduj transfer między domenami na fundamencie, który można akredytować
Corvus Quantum zapewnia bezpieczną, akredytowalną obsługę danych dla programów obronnych — łącząc sprzętowo wymuszany transfer jednokierunkowy, inspekcję transfer guard i kompleksowy audyt, dzięki czemu dane niejawne przemieszczają się między domenami pod kontrolą, a nie na zaufaniu.
Niniejsza analiza została przygotowana przez inżynierów Corvus Intelligence budujących misyjną infrastrukturę bezpieczeństwa i systemy międzydziedzinowe dla organizacji obronnych i rządowych. Poznaj nasz zespół →