«Saya tidak memercayai VPN ini» biasanya adalah tiga pernyataan yang dipakaikan pada satu kalimat. Rekan jarak jauh di jaringan itu bisa menjangkau layanan di host Anda, operator yang menjalankan terowongan bisa mengamati lalu lintas yang melewatinya, dan perangkat lunak klien yang Anda pasang bisa mengubah kebijakan jaringan mesin Anda. Keyakinan yang layak dikoreksi adalah bahwa aturan firewall, mesin virtual, atau pemilihan sistem operasi yang cermat menjawab ketiganya. Setiap tindakan menjawab tepat satu di antaranya.

Mitos: satu kendali menutupi seluruh risiko

Anggapan umum adalah bahwa bergabung ke jaringan tidak tepercaya adalah satu keputusan dengan satu mitigasi. Orang memilih kendali yang sudah mereka percayai, menerapkannya, dan menganggap risikonya selesai: firewall menyala, ruang kerja sekali pakai, klien berasal dari pemasok terkemuka.

Kendali itu tidak saling menutupi seperti yang disiratkan anggapan. Firewall host membatasi apa yang bisa dijangkau rekan jarak jauh, dan tidak melakukan apa pun terhadap operator yang mengakhiri TLS Anda. Mesin virtual memisahkan ruang kerja dari berkas host Anda, dan tidak melakukan apa pun terhadap komponen klien yang diizinkan mengonfigurasi ulang tumpukan jaringan di bawah keduanya. Menamai batas yang benar-benar diciptakan setiap kendali adalah keseluruhan latihannya.

Memisahkannya juga memberi tahu Anda risiko mana yang Anda pilih untuk diterima. Sebagian besar keputusan nyata meredam satu batas dan menoleransi batas lain, dan itu wajar asalkan catatan perubahan menyebutkan mana yang mana.

Apa yang benar-benar bisa dijangkau rekan jarak jauh

Mulailah dari layanan yang mendengarkan. Antarmuka terowongan yang dianggap tepercaya secara luas karena paketnya tiba terenkripsi adalah kesalahan yang lazim, dan itu menjadikan setiap pendengar lokal sebagai target calon bagi siapa pun di jaringan itu. Enkripsi melindungi kabel antara dua titik akhir; itu tidak mengatakan apa pun tentang niat rekan di ujung lain.

ss -tulpn
sudo nft list ruleset
ip -br addr

Ikat layanan ke alamat yang mereka butuhkan alih-alih ke setiap antarmuka, dan izinkan hanya operasi yang dituntut tugas yang disetujui. Jaga penerusan, penjembatanan, dan proksi aplikasi tetap eksplisit, karena dua sambungan jaringan tidak menciptakan jalur transit dengan sendirinya, tetapi aturan proksi jelas bisa.

Ruang kerja sekali pakai yang disetujui mengurangi apa yang bisa dijangkau jaringan jarak jauh, tetapi hanya ketika konfigurasi berbaginya cocok dengan klaim. Folder bersama, integrasi papan klip, agen kredensial, dan kanal manajemen semuanya melintasi batas yang seharusnya diciptakan ruang kerja. Label ruang kerja tidak membuktikan apa pun tentang mana di antaranya yang terbuka.

Arsitektur tanpa kepercayaan NIST menyatakan prinsip di balik semua ini: lokasi jaringan saja tidak memberikan kepercayaan implisit. Autentikasi sumber daya masih punya tugas setelah terowongan diterima, begitu juga pertanyaan siapa lagi yang berbagi jaringan itu.

Apa yang bisa dilihat operator di jalur

VPN memindahkan lalu lintas Anda ke tempat lain di jalur; itu tidak menambahkan enkripsi aplikasi. Jika penyedia mengakhiri TLS Anda, penyedia bisa membaca apa yang seharusnya dilindungi peramban Anda, dan tidak ada aturan firewall lokal yang mengubahnya.

Pertahankan validasi sertifikat normal untuk tujuan sebenarnya dan pahami jalur penyelesai serta metadata, karena kueri DNS bisa mengungkap lebih daripada muatan yang mendahuluinya. Metadata saja, yaitu alamat mana yang Anda hubungi dan kapan, sering menjawab pertanyaan operator tanpa perlu membaca isi. Karena itu «lalu lintas terenkripsi» dan «lalu lintas bersifat pribadi» adalah klaim yang berbeda.

Jika keterlihatan itu tidak dapat diterima untuk tugas tersebut, jawabannya adalah arsitektur lain yang disetujui, bukan penyaringan lokal yang lebih banyak. Penyaringan lokal tidak dapat menyingkirkan pengamat dari jalur yang masih ia duduki.

Apa yang boleh diubah klien lokal

Inilah batas yang orang lewatkan, dan inilah yang membuat dua lainnya tidak relevan. Di Linux, CAP_NET_ADMIN mencakup konfigurasi antarmuka, administrasi firewall, dan perubahan rute dalam konteks jaringannya. Perangkat lunak yang memegang kemampuan itu dapat menulis ulang kebijakan yang baru Anda tulis.

getcap /usr/sbin/openvpn
systemd-analyze security vpn-client.service
ip netns list

Ruang nama jaringan adalah batas nyata untuk keadaan jaringan dan batas buruk untuk segala hal lain: itu tidak mengisolasi sistem berkas atau penyimpanan kredensial. Perlakukan sebagai satu lapisan, bukan wadah untuk seluruh masalah.

Dapatkan klien dan konfigurasinya dari sumber yang terpelihara, tinjau kewenangan yang dimintanya, dan jaga komponen berhak istimewa di bawah kendali administrator. Mesin virtual dapat menjadi bagian dari batas evaluasi yang memenuhi syarat tanpa menjadi izin menjalankan pemasang yang tidak dijelaskan di samping kredensial berharga. Pemasang berjalan dengan kewenangan apa pun yang Anda berikan, dan kewenangan itulah batasnya.

Tuliskan batas mana yang Anda terima

Akhiri dengan kalimat yang menyebut empat hal: kode lokal tepercaya, akses jarak jauh yang diizinkan, data aplikasi yang dilindungi, dan hubungan operator yang tersisa. Kalimat itu lebih bernilai daripada klaim menyeluruh bahwa VM, sistem operasi, atau produk antivirus membuat jaringan bermusuhan menjadi aman.

Lalu pastikan operasi sempit itu berfungsi dan penolakan yang diwajibkan masih berlaku, termasuk setelah terowongan putus. Batas yang hanya ada selama terowongan menyala bukan batas yang Anda dokumentasikan.

Tidak ada uji yang membuktikan bahwa setiap kerentanan tidak ada, dan tinjauan yang menyatakan sebaliknya berlebihan. Keluaran yang jujur menyebut risiko sisa dan orang yang menerimanya.

Artikel terkait