TechnologieTajny przekaz

Tajny przekaz

Steganografia. Skuteczniejsza niż szyfrowanie technika stosowana przez służby wywiadowcze. Maskuje nie tylko treść, ale i sam fakt przekazywania komunikatu. Ty też możesz z niej skorzystać. Niekoniecznie w celach szpiegowskich.

Tajny przekaz

W czerwcu 2010 roku świat obiegła informacja o schwytaniu 10 rosyjskich szpiegów (m.in. pięknej Anny Chapman), którzy działali na terenie USA. Byli to tzw. nielegałowie, czyli głęboko zakonspirowani agenci, którzy pracowali bez statusu dyplomatycznego. Przy okazji aresztowania i związanych z nim pozwów sądowych wyszło na jaw sporo ciekawych informacji dotyczących szpiegowskiego rzemiosła, w tym także technik utrzymywania łączności z centralą http://pcformat.pl/u/269.

Wiadomości doskonale ukryte

Szpiedzy nie używali już tradycyjnych technik tajnej komunikacji, np. skrzynek kontaktowych. Zamiast tego wymieniali informacje z centralą za pomocą komunikatów ukrytych w niewzbudzających podejrzeń plikach, przede wszystkim w zdjęciach, które były umieszczane na publicznie dostępnych serwerach. Spreparowany plik wygląda zwyczajnie i nie ma sposobu sprawdzenia, czy zawiera dodatkowy komunikat.

Tę technikę tajnej komunikacji określa się mianem steganografii. W odróżnieniu od kryptografii, której celem jest ukrycie treści, celem steganografii jest ukrycie istnienia samej wiadomości. Ten sposób ma wiele zalet. Gdyby szpiedzy używali zwykłych wiadomości szyfrowanych, np. za pomocą programu przypominającego OpenPGP, mogliby zwrócić na siebie uwagę kontrwywiadu FBI, który bez wątpienia zainteresowałby się regularną, szyfrowaną komunikacją z zagranicą.

Używając steganografii, agenci nie wysyłali żadnych e-maili ani załączników. Po prostu umieszczali w sieci rodzinne zdjęcia, które mógł oglądać każdy internauta, bo na pierwszy rzut oka nie różniły się od innych plików umieszczanych w tym miejscu.

O tym, że zdjęcia zawierają coś więcej, wiedziało tylko kilka osób w moskiewskiej centrali. Do zapisania i odczytania treści wiadomości potrzebny był specjalny program, napisany do wyłącznego użytku Służby Wywiadu Zagranicznego Rosji, oraz 27-znakowe hasło dostępu, indywidualnie przydzielone każdemu z 10 agentów. Sama aplikacja była przechowywana na zaszyfrowanym dysku, chronionym osobnym hasłem.

Błąd ludzki

FBI przez wiele lat śledziła całą grupę 10 rosyjskich szpiegów, bo wiedziała o ich istnieniu od zdrajcy: pracującego dla CIA pułkownika rosyjskiego wywiadu. Mimo systematycznych przeszukiwań, dostępu do komputerów domowych rosyjskich agentów i śledzenia ich aktywności internetowej FBI tylko raz zdołała przechwycić 100 wiadomości przekazywanych techniką steganograficzną. Zawiódł, jak zwykle bywa, czynnik ludzki, bo dwójka rosyjskich agentów zapisała informacje o programie do steganografii wraz z pełnym hasłem na kartce, którą trzymała przy komputerze. W przypadku pozostałych agentów udało się tylko odszukać ślady sugerujące podobną praktykę, ale nie udało się poznać treści komunikatów.

Możliwości programu Open Puff

Nowoczesne programy do ukrywania wiadomości w plikach, jak np. Open Puff, który opisujemy w warsztacie, szyfrują komunikat i dopiero tajną wiadomość ukrywają w zdjęciu.

Open Puff ma także inne zalety. Jako pliku nośnika do przechowywania komunikatu może użyć niemal każdego pliku multimedialnego, także PDF-a, pliku MP3 czy MP4. Tajne dane potrafi rozproszyć między wieloma plikami w różnych formatach, dzięki czemu paczka plików z tajną wiadomością może wyglądać bardzo naturalnie.

Program zabezpiecza też na wypadek próby wymuszenia od ciebie hasła dostępu do ukrytych danych. Do zestawu plików z prawdziwym tajnym komunikatem możesz dodać fałszywą przynętę – fałszywy komunikat zabezpieczony innym hasłem. Jeśli ktoś cię zmusi do ujawnienia hasła, ujawniasz hasło do przynęty, a tajny komunikat pozostanie bezpieczny.

Oczywiście przestrzegamy przed używaniem steganografii do działań niezgodnych z prawem. Jak pokazuje historia 10 zdekonspirowanych agentów, którzy nie trafili do więzienia tylko dlatego, że wymieniono ich za kilku amerykańskich szpiegów, bezpieczna komunikacja nie gwarantuje bezkarności.

Jak działa Open Puff

  • Jeśli tajny plik nie mieści się w jednym pliku nośniku, jest dzielony między kilka plików nośników. Potem następuje cykl operacji ukrywających informacje.
  • Dane są szyfrowane 256-bitowym algorytmem kryptograficznym chronionym jednym lub dwoma hasłami.
  • Dane są losowo mieszane z użyciem trzeciego hasła, by uniemożliwić wykrycie ich obecności w pliku nośniku.
  • Dane są mieszane z przypadkowo wygenerowanym szumem cyfrowym.
  • Tak spreparowane informacje są wstrzykiwane do plików nośników. Odbywa się to w taki sposób, że wielkość, informacje o dacie utworzenia i modyfikacji plików nośników pozostają bez zmian.
  • Open Puff używa schematu kryptograficznego z kluczem prywatnym. W związku z tym, by zapewnić poufną wymianę informacji, musisz w sposób tajny przekazać hasło lub hasła odbiorcy. Jeśli nie możesz zrobić tego osobiście, wyślij je e-mailem zaszyfrowanym w OpenPGP.

Ukrywanie informacji w plikach multimedialnych

Metody steganograficzne, zaimplementowane w programie Open Puff, w przeciwieństwie do tradycyjnej kryptografii nie nadają się do ukrywania dużych ilości danych. Maksymalna teoretyczna pojemność to 32 MB (256 Mb) danych w jednym pakiecie. To jednak wymaga użycia bardzo dużej liczby plików nośników. Na przykład w jednym zdjęciu JPEG można schować 2–5 KB informacji – tyle, ile zajmuje niedługi list zapisany w czystym pliku tekstowym TXT.

Krok 1

Program możesz pobrać ze strony podanej w ramce „Skąd pobrać”. Nie musisz go instalować. Wystarczy rozpakować archiwum i uruchomić znajdujący się w nim plik wykonywalny. Zanim przystąpisz do ukrywania informacji, przygotuj tajny plik. Za jednym razem można ukryć tylko pojedynczy zbiór. Jeśli masz więcej plików, spakuj je do archiwum ZIP.

Krok 2

Po uruchomieniu programu pokaże się okno startowe, w którym musisz kliknąć przycisk Hide. Pojawi się panel, w którym przeprowadzisz procedurę ukrywania danych. Operacja jest podzielona na 4 etapy, które trzeba wykonać w kolejności, o jakiej informują numerki na początku nazwy każdej sekcji.

Krok 3

W pierwszej kolejności podaj hasła. Program w celu zagwarantowania maksymalnego bezpieczeństwa może chronić przekaz aż trzema hasłami (min. 8 znaków). Jeśli skrajne wymogi bezpieczeństwa nie są potrzebne w twoim przekazie, możesz wyłączyć dodatkowe hasła, odznaczając opcję Enable B i C.

Obraz

Krok 4

Teraz przejdź do sekcji (2) Data. Kliknij w niej przycisk Browse i wskaż na dysku plik z tajną wiadomością, którą chcesz ukryć w pliku nośniku. Następnie przejdź do sekcji (3) Carrier selection, w której możesz dodać jeden lub wiele plików nośników.

Obraz

Krok 5

Liczba niezbędnych plików nośników zależy od wielkości tajnego komunikatu. Jeśli szyfrujesz niedługi list w czystym pliku tekstowym, powinno wystarczyć jedno zdjęcie. Aby je dodać, kliknij przycisk Add i wskaż na dysku plik nośnik. Teraz spójrz na pole Selected/Total. Znajduje się tam informacja, czy pojemność pliku nośnika (pierwsza wartość) wystarcza na ukrycie wiadomości (druga wartość).

Obraz

Krok 6

Jeśli po dodaniu zdjęcia pole Selected/Total będzie czerwone, to oznacza, że pojemność pliku nośnika nie wystarcza do ukrycia listu. W przykładzie w zdjęciu jest 1392 wolnych bitów, natomiast wielkość listu to 2841 bitów. Masz teraz dwa wyjścia: dodać kolejny plik nośnik poleceniem Add albo użyć więcej miejsca w dodanym pliku nośniku.

Krok 7

Aby powiększyć miejsce, przejdź do sekcji (4) Bits election options. Znajdź na liście typ pliku, którego użyłeś jako nośnika, na przykład Jpeg, i rozwiń gałąź z opcjami. Domyślnie jest wybrana wartość 1/5 (20%), co pozwala na użycie 20 proc. miejsca w pliku nośniku. Aby zwiększyć pojemność, kliknij 1/2 (50%). Po tym zabiegu liczba dostępnych bitów pozwala na ukrycie przykładowej wiadomości, o czym informuje zielony kolor polaSelected/Total.

Obraz

Krok 8

Teraz dodaj wiadomość przynętę, którą będziesz mógł ujawnić, jeśli ktoś spróbuje zmusić cię do wydania hasła. W tym celu kliknij Add Decoy. Pojawi się nowe okno dialogowe OpenPuff - Decoy Data Hiding. W pierwszej sekcji Insert 3 uncorrelated passwords ustanów od 1 do 3 haseł, najlepiej tę samą liczbę co w kroku 3. Hasło musi się różnić od oryginalnego przynajmniej w 25 proc.

Obraz

Krok 9

Teraz w drugiej sekcji kliknij przycisk Decoy data i wskaż plik z treścią wiadomości przynęty. Pamiętaj, że na list przynętę masz tyle samo miejsca, ile przygotowałeś na oryginalną wiadomość w krokach 6 i 7 warsztatu. Po dodaniu wiadomości kliknij Check & Accept, a po powrocie do głównego okna i zapisz plik(i) z tajną wiadomością.

Obraz

Odczytywanie ukrytych informacji za pomocą Open Puff

Co musi wiedzieć odbiorca komunikatu steganograficznego z opisywanej aplikacji? Musi znać hasło oraz liczbę użytych haseł. Musi znać kolejność plików nośników w oknie Carrier Selection (patrz krok poprzedniego warsztatu), jeśli był więcej niż jeden. Musi też wiedzieć, jaki zastosowano poziom wykorzystania bitów w użytych typach plików nośników, jeśli jest inny niż domyślny (patrz krok 5 poprzedniego warsztatu).

Krok 1

Uruchom program Open Puff i kliknij przycisk Unhide. W sekcji pierwszej wpisz zdefiniowane wcześniej hasła. Jeśli użyłeś jednego hasła, odznacz opcję Enable B i C. Uwaga! W tym miejscu decydujesz, czy odszyfrować tajny komunikat czy wiadomość przynętę. Jeśli chcesz odczytać przynętę, wpisz hasło podane w kroku poprzedniego warsztatu.

Obraz
Obraz

Krok 2

Przejdź do drugiej sekcji, kliknij przycisk Add Carriers i wskaż na dysku plik lub pliki, które są nośnikami tajnego komunikatu. Uwaga! Pliki muszą być ułożone w identycznej kolejności jak podczas tworzenia tajnego przekazu. Aby uniknąć pomyłek przy dużej liczbie plików, zawsze używaj sortowania według nazwy.

Obraz

Krok 3

Przejdź do trzeciej sekcji i za pomocą rozwijanych list, powiązanych z użytymi przez ciebie plikami nośnikami, ustaw poziom wykorzystania bitów dla każdego typu pliku, jakie ustawiłeś podczas szyfrowania. W naszym przykładzie rozwijamy gałąź Jpeg i zaznaczamy opcję 1/2 (50%).

Obraz

Krok 4

Gdy wszystko będzie gotowe, kliknij przycisk Unhide i zapisz na dysku plik z ukrytą wiadomością. Pamiętaj, że w celu zachowania bezpieczeństwa tajnej korespondencji musisz komunikat wymazać z dysku po przeczytaniu go, by nie można było go odczytać nawet za pomocą specjalistycznego sprzętu. W celu trwałego usunięcia komunikatu użyj programu Eraser (http://eraser.heidi.ie/) lub File Shredder (http://www.fileshredder.org/).

Obraz

Wybrane dla Ciebie