Zakład ochrony informacji



Pobieranie 0.78 Mb.
Strona10/12
Data28.04.2016
Rozmiar0.78 Mb.
1   ...   4   5   6   7   8   9   10   11   12
Patchwork


Kolejną metodą substytucji jest patchwork wprowadzony przez Bendera, Gruhla, i Morimoto [18]. Ten algorytm wybiera pary cyfrowo zapisanego dźwięku lub punkty obrazu z wykorzystaniem pseudolosowego generatora PRNG (ang. Pseudo Random Generator) inicjowanego ziarnem (wartością startową będąca kluczem). Wartość oczekiwana różnicy wartości obu próbek równa jest zero. Drugim krokiem jest modyfikacja ich wartości w następujący sposób: pierwszą wartość zwiększa o 1 a drugą zmniejsza o 1. Taka zmiana jest bardzo delikatna i niezauważalna przez człowieka. W przypadku obrazu nawet jego duże powiększenie nie umożliwia odnalezienia różnic. Kontrastowe pary punktów tworzą wzorzec do ukrycia informacji. Informacja może być ukrywana poprzez modyfikację samej różnicy pomiędzy punktami lub różnicy pomiędzy grupami punktów. W przypadku jednego obrazu wykonywanych jest maksymalnie kilkaset zmian co zapewnia odporność na wykrycie w wyniku ataku poprzez filtrowanie.


Metoda BCBS


BCBS (ang. Blind Consistency-Based Steganography) jest metodą zaproponowaną przez Qi, Snydera i Sandera [19] wykorzystującą nośnik sekretnych danych w postaci obrazu. Proces kodowania wykorzystuje zarówno technikę substytucji jak i rozpraszania. Po stronie nadawcy wiadomość jest ukrywana w wybranej linii lub kolumnie obrazu według następujących kroków:

  1. każdy punkt i-tej kolumny obrazu f jest zastępowany punktem z i-1 kolumny i tego samego wiersza,

  2. dodawany jest j-ty bit wiadomości tajnej c do najmniej znaczącego bitu j-tego punktu kolumny i,

  3. wykonywana jest operacja rozmycia (ang. blur) ze skończonym jądrem (ang. kernel) operacji. Umożliwia ona rozproszenie informacji na sąsiednie punkty obrazu.

  4. usuwana jest i-ta kolumna z obrazu i zastępowana losowo wybranymi punktami z sąsiedztwa.

W ten sposób informacja może być zakodowana w wielu liniach lub kolumnach obrazu jest to pokazane na rys. 5.




Rys. 25. Metoda CBCS z wykorzystaniem obrazu 128 x 128 punktów [19].
Położenia miejsc w których została ukryta informacja oraz jądro przekształcenia rozmywającego są dwoma kluczami steganograficznymi w tej metodzie – ich znajomość jest niezbędna do zdekodowania wiadomości. Proces ten nie wymaga posiadania „czystego” nośnika w celu porównania wartości punktów. Dodatkową zaletą zaproponowanego przez autorów procesu dekodowania opartego na wykonaniu operacji odwrotnej do rozmycia (ang. debluring) jest sprawdzanie czy nie wystąpił atak z wykorzystaniem algorytmu korekcji błędów.


Metoda procentowa


Metoda procentowa została opracowana przez Zhao i Kocha [20]. Nośnikiem informacji w tej metodzie jest obraz binarny czyli ,np. czarno-biały (bez odcieni szarości). Obraz tego typu powstaje np. podczas drukowania tekstu lub przesyłania faksu. Ze względu na to, że punkty obrazu opisywane są tylko za pomocą jednego bitu, tzn. jeżeli bit jest równy „0” to punkt ma barwę czarną, a jeżeli jest równy „1” to białą, nie można zastosować tu metody LSB. Zaproponowana metoda dzieli obraz na prostokątne obszary, szereguje je pseudolosowo i umieszcza w nich poszczególne bity sekretnej wiadomości. Dla każdego kolejnego obszaru obliczana jest procentowa zawartość czarnych i białych punktów. Jeżeli bit ukrywanej wiadomości wynosi „1” to obszar powinien zawierać przeważającą liczbę punktów białych, w przypadku „0” - czarnych. Transmisja danych i przetwarzanie samego obrazu może wprowadzić pewne zniekształcenia i może się zdarzyć, że obszar o ilości białych punktów w liczbie 50,5% przenoszący bit wiadomości równy „1” po przesłaniu zawiera 49% punktów białych i będzie odczytany jako „0”. W związku z tym wprowadzane są dwie granice: G1>50% i G0<50% oraz parametr bezpieczeństwa λ określający procentową liczbę punktów, które mogą się zmienić podczas transmisji. Nadawca w celu dodania wiadomości modyfikuje obszary obrazu w następujący sposób:

Na tej podstawie obszar jest modyfikowany przez dostawienie białych lub czarnych punktów na granicy zbioru czarnego i białego, czyli np. na krawędzi litery tekstu. Jeżeli dany obszar nie może być w ten sposób dostosowany bo jest cały biały, a bit wiadomości, który powinien być w nim ukryty wynosi „0” obszar oznaczany jest jako nieużywany z zachowaniem dodatkowego marginesu bezpieczeństwa 2λ:


Wykorzystanie kompresji RL
Matsui i Tanaka opracowali technikę steganograficzną wykorzystującą istniejący algorytm kompresji bezstratnej RL (ang. run lenght) [21]. Bezstratna kompresja RL stosowana jest m. in. do binarnego obrazu przesyłanego faksem i polega na wykorzystaniu spostrzeżenia, że z dużym prawdopodobieństwem punkty obrazu występują w grupach o tym samym kolorze. Wynika z tego, że zamiast zapisywać wartości kolorów wszystkich punktów w linii obrazu można zapisać położenie granic pomiędzy obszarami o różnych kolorach oraz długość tych obszarów, czyli pary (gi,RL), np. (g1,3), (g2,5), (g3,2), itd.

Informacja może zostać ukryta poprzez modyfikację wartości długości obszarów, np. jeżeli długość jest nieparzysta oznacza to bit wiadomości równy „0”, jeżeli jest parzysta równy „1”. Więc podczas procesu ukrywania dodaje się lub odejmuje od długości obszaru wartość równą „1”. Problem może stanowić obszar o długości jednego punktu ponieważ podczas procesu kodowania mogłoby dojść do utraty danych, więc przed ukryciem danych eliminuje się z nośnika elementy o długości „1”.
Wykorzystanie algorytmu kompresji JPEG
Ukrywanie danych w pakietach IP
Metody steganograficzne można podzielić ze względu na podejście do danych nośnika informacji na: modyfikujące nośnik, np. LSB lub nie. Metody nie modyfikujące nośnika wykorzystują wolne lub zarezerwowane i niewykorzystane. Tego rodzaju metody steganograficzne wykorzystują właściwości modelu sieci OSI i stosowanych protokółów komunikacyjnych. Wiele metod ukrywania danych proponuje wykorzystanie protokołu TCP/IP. Handel i Sandford [22] zaproponowali wykorzystanie nieużywanych pól nagłówków pakietów TCP i IP (rys. 6). Nagłówek TCP posiada sześć nieużywanych bitów, a nagłówek IP dwa. Bity te można wykorzystać do przesłania wiadomości poufnej w naturalny sposób bez ingerencji w protokoły, czy urządzenia sieciowe.




Rys. 26. Nagłówek protokołu IP [23]
Rozwinięciem metody wykorzystania nieużywanego miejsca w nagłówkach pakietów są prace Ashana i Kundura [24]. Autorzy zaproponowali wykorzystanie jednej z flag oraz pola identyfikacji w nagłówku pakietu IP.

Metoda pierwsza opiera się na wykorzystaniu flagi DF (ang. Don't Fragment). Ustawienie flagi DF na „1” oznacza bezwzględny zakaz fragmentacji datagramu. Jeżeli datagram nie może być przesłany w całości datagram zostaje odrzucony i sygnalizowany jest błąd [23]. Dzielenie datagramu występuje w sytuacji kiedy jego wielkość jest większa od maksymalnej jednostki przesyłowej sieci – MTU (ang. maximum transmission unit). W takim przypadku flaga MF (ang. more fragments) ustawiona jest na „1” i pole offset fragmentu zawiera niezerową wartość wskazującą na położenie (przesuniecie) danego fragmentu w datagramie.

Znając dokładną wartość MTU sieci można przesyłać datagramy o wielkości równej lub mniejszej MTU. W takim przypadku datagramy nigdy nie będą dzielone, a flaga DF będzie ignorowana i może zostać wykorzystania do przenoszenia bitu sekretnej wiadomości.

Innym polem nagłówka IP, które może posłużyć ukryciu danych jest pole Identyfikacja. Pole to zawiera unikalny 16-bitowy numer datagramu, którego część lub całość przesyłana jest w danym pakiecie IP. Numer ten jest unikalny tylko w obrębie danego nadawcy i odbiorcy oraz dopuki datagram istnieje w sieci i nie został prawidłowo przesłany. W związku z tym numer nie jest konieczne używanie aż szesnastu bitów na numerację. Autorzy proponują wykorzystanie ośmiu bitów na przesłanie sekwencji odpowiadającej znakowi z określonego alfabetu. Przygotowanie sekwencji układów bitowych oraz przyporządkowanie do poszczególnych układów konkretnego znaku z alfabetu możliwe jest dzięki odpowiednim kluczom i algorytmom mieszającym.

Druga metoda proponowana przez Ashana i Kundura polega na wykorzystaniu sortowania pakietów. Sortowanie pakietów odbywa się poprzez algorytm steganograficzny, który układając pakiety według określonego klucza modyfikuje numery sekwencji w ich nagłówkach. Do odczytania informacji konieczna jest referencja wiążąca numery posortowanych pakietów z oryginalną sekwencją. Taka referencja jest dostępna dzięki zastosowaniu po obu stronach komunikacji środowiska IPSec posiadającego 32 bitowy numer sekwencji wykorzystywany zwykle do zabezpieczania przed atakami typu „replay” polegającymi na przesyłaniu duplikatów pakietów.

Steganograficzne systemy plików
Plik lub cały system plików może zostać ukryty wykorzystując nieużywane miejsce na dysku komputera. Systemy operacyjne przechowują pliki z wykorzystaniem jednostek alokacji. Wielkość obszaru alokowanego dla pliku jest różna, np. partycje FAT16 mają klastry wielkości 32 kB. Jeżeli plik ma 1 kB to 31 kB pozostaje do wykorzystania. Inną możliwością jest wykorzystanie wolnego miejsca w nagłówkach plików. Metoda ta jest bardzo podobna do metody stosowanej w przypadku pakietów IP.

Najwięcej miejsca do wykorzystania oferuje niezapisana część dysku. Dysponując tak dużą ilością miejsca można stworzyć całą ukrytą partycję. Plik zapisywane w takiej partycji nie mogą być widoczne dla systemu operacyjnego, a dostępne po podaniu odpowiedniego hasła i oprogramowania, które poprzez bezpośrednie adresowanie będzie potrafiło zapisać i odczytać dane z tego obszaru. Zastosowanie takiej metody ma pewne ograniczenie. Występuje tu problem znany z teorii prawdopodobieństwa – problem dnia urodzenia. Po zapisie ponad bloków (gdzie N ilość bloków na dysku) zaczynają występować kolizje, czyli bloki danych zaczynają się nadpisywać. Rozwiązaniem tego problemu może być sposób zapisu opisany przez Andersona, Needhama i Shamira [25]. Metoda polega na zwielokrotnieniu zapisu każdego bloku w ukrytej partycji. Przy czterokrotnym zapisie każdego bloku i przy ilości dostępnych do zapisu bloków N od 20 000 do 1 000 000 oraz założeniu, że bloki nie mogą się nadpisać uzyskano wskaźnik pojemności dla ukrywanych bloków rzędu 7% dostępnego obszaru. Po przyzwoleniu na nadpisanie 10% bloków wskaźnik pojemności wzrósł do 20%.

Innym sposobem ukrywania plików zaproponownym przez tych samych autorów jest dołączanie ich zawartości do innych plików poprzez wykonywanie bitowej operacji nierównoważności – XOR (ang. exclusive or). Metoda ukrywa tajne pliki F użytkownika za pomocą k plików jawnych C0, C1, ... , Ck-1 (k – długość hasła P wykorzystywanego do ukrycia danych). Na podstawie hasła wybierane są takie pliki Cj, dla których j-ty bit hasła wynosi „1”. Następnie wykonywana jest operacja XOR na tych plikach. Wynik służy do kolejnej operacji XOR tym razem z plikiem F. Ostatnim krokiem jest wykonanie operacji XOR pomiędzy poprzednim wynikiem i jednym z plików Cj.

Metoda daje mniejszą pojemność steganograficzną niż ta dotycząca pustego miejsca na dysku, ale ma zasadniczą zaletę: umożliwia ukrywanie wielu plików w tym samym zestawie plików nośnych wykonując wyżej opisane kroki. Stosując różne hasła można wprowadzić wielopoziomowy system bezpieczeństwa (do poszczególnych plików będą miały dostęp osoby o określonych uprawnieniach znające poszczególne hasła) dzięki liniowej hierarchii dostępu.

Steganograficzny system plików StegFS opracowany przez McDonalda i Kuhna [26] opiera się z kolei na rozszerzeniu możliwości sterownika do partycji typu EXT2 w jądrze systemu Linux. Po modyfikacji sterownik posiada osobne tablice alokacji boków danych dla każdego poziomu bezpieczeństwa. Efekt działania jest zbliżony do tego który oferuje poprzednio opisana metoda. Bez posiadania hasła nie można stwierdzić ile jest poziomów bezpieczeństwa i do jakich zasobów dają one dostęp.


1   ...   4   5   6   7   8   9   10   11   12


©absta.pl 2016
wyślij wiadomość

    Strona główna