Steganografi TCP atau cara menyembunyikan transmisi data di Internet

Steganografi TCP atau cara menyembunyikan transmisi data di Internet

Peneliti Polandia telah mengusulkan metode baru steganografi jaringan berdasarkan fitur operasi protokol lapisan transport TCP yang banyak digunakan. Para penulis karya tersebut percaya bahwa skema mereka, misalnya, dapat digunakan untuk mengirim pesan tersembunyi di negara-negara totaliter yang menerapkan sensor internet yang ketat. Mari kita coba mencari tahu apa sebenarnya inovasi itu dan seberapa bermanfaatnya.

Pertama-tama, Anda perlu mendefinisikan apa itu steganografi. Jadi, steganografi adalah ilmu tentang pesan rahasia. Artinya, dengan menggunakan metodenya, para pihak berusaha bersembunyi fakta transfer. Inilah perbedaan antara sains dan kriptografi, yang mencoba melakukannya membuat isi pesan tidak dapat dibaca. Perlu dicatat bahwa komunitas profesional kriptografer cukup meremehkan steganografi karena kedekatan ideologinya dengan prinsip “Keamanan melalui ketidakjelasan” (Saya tidak tahu bagaimana bunyinya dengan benar dalam bahasa Rusia, seperti “Keamanan melalui ketidaktahuan ”). Prinsip ini, misalnya, digunakan oleh Skype Inc. — kode sumber dialer populer ditutup dan tidak ada yang tahu persis bagaimana datanya dienkripsi. Baru-baru ini, NSA mengeluhkan hal ini, yang dikeluhkan oleh spesialis terkenal Bruce Schneier menulis di blog saya.

Kembali ke steganografi, kita akan menjawab pertanyaan: mengapa diperlukan jika ada kriptografi? Memang, Anda dapat mengenkripsi pesan menggunakan beberapa algoritma modern dan jika Anda menggunakan kunci yang cukup panjang, tidak ada yang dapat membaca pesan ini kecuali Anda menginginkannya. Namun demikian, terkadang lebih berguna untuk menyembunyikan fakta transfer rahasia. Misalnya, jika otoritas terkait menyadap pesan terenkripsi Anda dan tidak dapat menguraikannya, tetapi benar-benar menginginkannya, maka ada metode non-komputer untuk mempengaruhi dan memperoleh informasi. Kedengarannya distopia, tetapi, Anda tahu, pada prinsipnya hal ini mungkin terjadi. Oleh karena itu, akan lebih baik untuk memastikan bahwa mereka yang tidak seharusnya mengetahui sama sekali bahwa transfer telah terjadi. Peneliti Polandia mengusulkan metode seperti itu. Selain itu, mereka mengusulkan untuk melakukan ini menggunakan protokol yang digunakan setiap pengguna Internet ribuan kali sehari.

Di sini kita mendekati Protokol Kontrol Transmisi (TCP). Menjelaskan semua detailnya, tentu saja, tidak masuk akal - panjang, membosankan, dan mereka yang membutuhkannya sudah mengetahuinya. Singkatnya, kita dapat mengatakan bahwa TCP adalah protokol lapisan transport (yaitu, ia bekerja “di atas” IP dan “di bawah” protokol lapisan aplikasi, seperti HTTP, FTP atau SMTP), yang memastikan pengiriman data yang andal dari pengirim ke penerima. Pengiriman yang andal berarti jika sebuah paket hilang atau tiba dalam keadaan termodifikasi, TCP akan meneruskan penerusan paket tersebut. Perhatikan bahwa perubahan paket di sini tidak berarti distorsi data yang disengaja, tetapi kesalahan transmisi yang terjadi pada tingkat fisik. Misalnya, ketika sebuah paket berjalan melalui kabel tembaga, beberapa bit mengubah nilainya menjadi sebaliknya atau hilang sama sekali di tengah kebisingan (omong-omong, untuk Ethernet, nilai Bit Error Rate biasanya dianggap sekitar 10-8 ). Kehilangan paket saat transit juga merupakan kejadian yang relatif umum terjadi di Internet. Hal ini dapat terjadi, misalnya, karena beban pada router, yang menyebabkan buffer overflow dan, sebagai akibatnya, membuang semua paket yang baru datang. Biasanya, proporsi paket yang hilang adalah sekitar 0.1%, dan dengan nilai beberapa persen, TCP berhenti bekerja secara normal - semuanya akan menjadi sangat lambat bagi pengguna.

Jadi, kita melihat bahwa penerusan (transmisi ulang) paket merupakan fenomena yang sering terjadi pada TCP dan, secara umum, perlu. Jadi mengapa tidak menggunakannya untuk kebutuhan steganografi, mengingat TCP, seperti disebutkan di atas, digunakan di mana-mana (menurut berbagai perkiraan, saat ini pangsa TCP di Internet mencapai 80-95%). Inti dari metode yang diusulkan adalah mengirimkan pesan yang diteruskan bukan apa yang ada dalam paket utama, tetapi data yang kami coba sembunyikan. Pada saat yang sama, tidak mudah untuk mendeteksi substitusi seperti itu. Lagi pula, Anda perlu tahu di mana mencarinya - jumlah koneksi TCP simultan yang melewati penyedia sangat besar. Jika Anda mengetahui perkiraan tingkat transmisi ulang dalam jaringan, Anda dapat menyesuaikan mekanisme penerusan steganografik sehingga koneksi Anda tidak berbeda dengan yang lain.

Tentu saja cara ini tidak lepas dari kekurangan. Misalnya, dari sudut pandang praktis, penerapannya tidak akan mudah - ini memerlukan perubahan tumpukan jaringan di sistem operasi, meskipun tidak ada yang terlalu sulit dalam hal ini. Selain itu, jika Anda memiliki sumber daya yang cukup, paket “rahasia” masih dapat dideteksi dengan melihat dan menganalisis setiap paket di jaringan. Namun secara umum, hal ini praktis tidak mungkin, jadi mereka biasanya mencari paket dan koneksi yang menonjol dalam beberapa hal, dan metode yang diusulkan justru membuat koneksi Anda biasa-biasa saja. Dan tidak ada yang menghentikan Anda mengenkripsi data rahasia untuk berjaga-jaga. Pada saat yang sama, koneksi itu sendiri dapat tetap tidak terenkripsi untuk mengurangi kecurigaan.

Penulis karya tersebut (omong-omong, bagi mereka yang tertarik, di sini dia) menunjukkan pada tingkat simulasi bahwa metode yang diusulkan berfungsi sebagaimana mestinya. Mungkin di masa depan seseorang akan mempraktikkan ide-idenya. Dan diharapkan sensor di Internet akan berkurang.

Sumber: www.habr.com

Tambah komentar