TCP steganografija ili kako sakriti prijenos podataka na internetu

TCP steganografija ili kako sakriti prijenos podataka na internetu

Poljski istraživači predložili su novu metodu mrežne steganografije koja se temelji na značajkama široko korištenog TCP protokola prijenosnog sloja. Autori djela smatraju da se njihova shema, primjerice, može koristiti za slanje skrivenih poruka u totalitarnim zemljama koje uvode strogu internetsku cenzuru. Pokušajmo shvatiti od čega se zapravo sastoji inovacija i koliko je ona zapravo korisna.

Prije svega, potrebno je definirati što je steganografija. Dakle, steganografija je znanost o prikrivenom slanju poruka. To jest, koristeći njegove metode, stranke se pokušavaju sakriti činjenica prijenosa. To je razlika između ove znanosti i kriptografije koja pokušava učiniti sadržaj poruke nečitljivim. Vrijedno je napomenuti da profesionalna zajednica kriptografa prilično prezirno gleda na steganografiju zbog bliskosti njezine ideologije s načelom "Sigurnost kroz nejasnoću" (ne znam kako to točno zvuči na ruskom, nešto poput "Sigurnost kroz neznanje" ”). Ovaj princip, na primjer, koristi Skype Inc. - izvorni kod popularnog dialera je zatvoren i nitko zapravo ne zna kako su točno podaci šifrirani. Nedavno se, inače, na to požalila i NSA, o čemu je govorio poznati stručnjak Bruce Schneier napisao sam u mom blogu.

Vraćajući se na steganografiju, odgovorimo na pitanje zašto je ona uopće potrebna, ako postoji kriptografija. Doista, moguće je šifrirati poruku nekim modernim algoritmom, a uz korištenje dovoljno dugog ključa nitko neće moći pročitati ovu poruku osim ako vi to ne želite. Ipak, ponekad je korisnije sakriti samu činjenicu tajnog prijenosa. Na primjer, ako su nadležna tijela presrela vašu šifriranu poruku, ne mogu je dešifrirati, ali to jako žele, onda na kraju postoje neračunalne metode utjecaja i izvlačenja informacija. Zvuči antiutopijski, ali vidite, to je načelno moguće. Stoga bi bilo bolje pobrinuti se da oni koji uopće ne bi trebali znati da je do transfera došlo. Poljski istraživači upravo su predložili takvu metodu. Štoviše, oni to nude pomoću protokola koji svaki korisnik interneta koristi tisuću puta dnevno.

Ovdje se približavamo Transmission Control Protocol-u (TCP). Objašnjavanje svih njegovih detalja, naravno, nema smisla - dugo, dosadno, oni koji to trebaju već znaju. Ukratko, možemo reći da je TCP protokol prijenosnog sloja (tj. radi "iznad" IP-a i "ispod" protokola sloja aplikacije, kao što su HTTP, FTP ili SMTP), koji osigurava pouzdanu isporuku podataka od pošiljatelja do primatelj. Pouzdana isporuka znači da ako se paket izgubi ili promijeni, TCP se brine za prosljeđivanje paketa. Imajte na umu da promjene u paketu ovdje ne znače namjerno iskrivljavanje podataka, već pogreške u prijenosu koje se javljaju na fizičkoj razini. Na primjer, dok je paket putovao preko bakrenih žica, nekoliko bitova promijenilo je svoju vrijednost u suprotnu ili su se potpuno izgubili među šumom (usput, za Ethernet, Stopa pogreške u bitovima obično se uzima na oko 10-8 ). Gubitak paketa u prijenosu također je relativno česta pojava na internetu. Može se dogoditi, primjerice, zbog opterećenja usmjerivača, što dovodi do prekoračenja međuspremnika i, kao rezultat, odbijanja svih novopristiglih paketa. Obično je postotak izgubljenih paketa oko 0.1%, a kod vrijednosti od par posto TCP uopće prestaje normalno raditi - sve će biti užasno sporo za korisnika.

Dakle, vidimo da je prosljeđivanje (retransmisija) paketa česta i općenito neophodna pojava za TCP. Pa zašto ga ne koristiti za potrebe steganografije, unatoč činjenici da se TCP, kao što je gore navedeno, koristi posvuda (prema različitim procjenama, danas udio TCP-a na Internetu doseže 80-95%). Bit predložene metode je da se u proslijeđenoj poruci ne šalje ono što je bilo u primarnom paketu, već podaci koje pokušavamo sakriti. U isto vrijeme, nije tako lako otkriti takvu zamjenu. Uostalom, morate znati gdje tražiti - broj istodobnih TCP veza koje prolaze kroz davatelja jednostavno je ogroman. Ako znate približnu razinu retransmisije u mreži, tada možete fino podesiti mehanizam steganografskog prosljeđivanja tako da se vaša veza neće razlikovati od drugih.

Naravno, ova metoda nije lišena nedostataka. Na primjer, s praktične točke gledišta, neće biti tako lako implementirati - to će zahtijevati promjenu mrežnog stoga u operativnim sustavima, iako u tome nema ništa komplicirano. Osim toga, ako imate dovoljno resursa, još uvijek možete detektirati "tajne" pakete, za to morate pregledati i analizirati svaki paket na mreži. Ali u pravilu, to je gotovo nemoguće, pa obično traže nešto što se ističe po paketima i vezama, a predložena metoda samo čini vašu vezu neuglednom. I nitko vam ne smeta da šifrirate tajne podatke za svaki slučaj. U tom slučaju sama veza može ostati nekriptirana kako bi izazvala manje sumnje.

Autori djela (usput, za one koje zanima, ovdje Ona) je na razini simulacije pokazala da predložena metoda radi kako je predviđeno. Možda će se u budućnosti netko angažirati u provedbi svojih ideja u praksi. A onda će, nadamo se, biti malo manje cenzure na internetu.

Izvor: www.habr.com

Dodajte komentar