Proyek Jenewa sedang mengembangkan mesin untuk mengotomatisasi bypass sensor lalu lintas

Para peneliti dari Universitas Maryland sebagai bagian dari proyek tersebut Jenewa berusaha untuk menciptakan mesin untuk mengotomatiskan penentuan metode yang digunakan untuk menyensor akses ke konten. Mencoba menemukan kemungkinan lubang dalam sistem inspeksi paket mendalam (DPI) secara manual adalah proses yang agak sulit dan memakan waktu; Jenewa mencoba menggunakan algoritma genetika untuk mengevaluasi fitur DPI, mengidentifikasi kesalahan dalam implementasi dan mengembangkan strategi optimal untuk melewati pemblokiran di sisi klien. Kode proyek ditulis oleh dalam bahasa Python.

Peralatan yang digunakan untuk pemblokiran DPI memiliki peralatan tersendiri kekurangan, memungkinkan Anda menyembunyikan akses ke sumber daya terlarang atau menghindari pemblokiran. Misalnya, dalam kasus paling sederhana, ketika mengatur pemblokiran melalui penggantian respons fiktif (digunakan oleh DPI pasif), itu sudah cukup di sisi klien. membuang tanggapan tiruan yang dikirim oleh DPI. Jika Anda menggunakan DPI aktif, Anda dapat mencoba menyembunyikan fakta mengakses situs yang diblokir dengan sedikit mengubah parameter permintaan HTTP (misalnya, menambahkan spasi ekstra setelah "GET"), membagi data negosiasi koneksi TLS menjadi beberapa paket, atau melakukan serangan TCB Teardown dan TCB Desync . Inti dari serangan yang disebutkan adalah bahwa klien pertama-tama mengirimkan paket fiktif dengan data atau flag RST/ACK, yang tidak akan diterima oleh host target, tetapi akan menangkap DPI, membuat keputusan berdasarkan itu dan tidak akan menganalisis DPI. paket berikut dengan permintaan nyata (misalnya, dalam paket pertama fiktif Anda dapat menentukan SNI yang berbeda, dan untuk menyembunyikan paket ini dari host target, Anda dapat mengatur TTL rendah, serta checksum, flag, atau TCP yang salah nomor urut).

Jenewa mencoba mengembangkan metode kerja untuk melewati DPI menggunakan empat primitif dasar untuk memanipulasi paket jaringanβ€”menjatuhkan, memodifikasi header, menggandakan, dan memecah-mecah. Untuk memilih strategi yang optimal, digunakan algoritma genetika yang memodelkan proses yang mirip dengan seleksi alam melalui kombinasi acak dari berbagai pilihan untuk memanipulasi paket. Pada akhirnya, keluarannya menggabungkan primitif menjadi β€œpohon tindakan” yang mendefinisikan algoritma bypass DPI.

Proyek Jenewa sedang mengembangkan mesin untuk mengotomatisasi bypass sensor lalu lintasProyek Jenewa sedang mengembangkan mesin untuk mengotomatisasi bypass sensor lalu lintas sejajar=atas

Pekerjaan Jenewa telah berhasil diuji untuk melewati metode sensor yang digunakan di Tiongkok, India dan Kazakhstan, termasuk beberapa lubang baru yang tidak diketahui sebelumnya. Pada saat yang sama, Jenewa hanya efektif untuk melewati pemblokiran berbasis DPI; ketika memblokir berdasarkan alamat IP, itu tidak ada gunanya dan tidak dapat dilakukan tanpa VPN. Selama percobaan teridentifikasi beberapa lusin strategi bypass DPI yang dapat langsung diuji tanpa analisis lengkap, misalnya:

python3 engine.py --server-port 80 --strategy "[TCP:flags:PA]-duplikat(tamper{TCP:dataofs:replace:10} tamper{TCP:chksum:corrupt},),)-|" --log debug

2020-01-24 20:54:41 DEBUG:[ENGINE] Mesin dibuat dengan strategi \/ (ID bm3kdw3r) ke port 80
2020-01-24 20:54:41 DEBUG:[ENGINE] Mengonfigurasi aturan iptables
2020-01-24 20:54:41 DEBUG:[ENGINE] iptables -A OUTPUT -p tcp --sport 80 -j NFQUEUE --queue-num 1
2020-01-24 20:54:41 DEBUG:[ENGINE] iptables -A INPUT -p tcp --dport 80 -j NFQUEUE --queue-num 2
2020-01-24 20:54:41 DEBUG:[ENGINE] iptables -A OUTPUT -p udp --sport 80 -j NFQUEUE --queue-num 1
2020-01-24 20:54:41 DEBUG:[MESIN] iptables -A INPUT -p udp --dport 80 -j NFQUEUE --queue-num 2

Sumber: opennet.ru

Tambah komentar