Penerusan agen SSH versus menyalin kunci: apa yang sebenarnya bocor
Login dengan kunci publik mengirim tanda tangan, bukan kunci privat. Penerusan agen tetap memberi host lain kemampuan menandatangani, dan itu paparan tersendiri.
Dua peristiwa berbeda disebut kunci SSH bocor, dan keduanya menuntut respons yang berbeda. Autentikasi kunci publik mengirim kunci publik dan tanda tangan yang dibuat dengan kunci privat, sehingga kunci privat tidak pernah menjadi bidang dalam permintaan. Penerusan agen memaparkan hal lain, karena host jarak jauh yang dapat menjangkau agen yang diteruskan dapat memintanya menandatangani tanpa pernah memegang kunci. Memperlakukan keduanya sebagai satu peristiwa berujung pada penggantian kunci yang sia-sia atau pada delegasi yang tetap berjalan.
Login kunci publik mengirim tanda tangan, bukan kunci
Pertukaran autentikasi membawa kunci publik pengguna dan tanda tangan atas data sesi. Server memeriksa tanda tangan itu dengan kunci yang sudah dipercayainya, karena itu separuh privat dapat tetap berada di klien melintasi jaringan yang tidak tepercaya. Operator VPN yang mengamati terowongan tetap melihat sesi SSH terenkripsi.
Itu menjelaskan protokolnya, bukan keterpercayaan setiap titik akhir di jalur. Pertahankan verifikasi identitas host, karena klien yang menerima kunci host apa pun telah melepaskan kendali yang berbeda dari yang dibahas di sini. Sesi yang tertangkap dan kunci yang tertangkap adalah temuan terpisah, dan hanya satu di antaranya kehilangan kredensial. Simpan keduanya dalam kalimat terpisah di laporan.
ssh-keygen -lf ~/.ssh/id_ed25519.pub ssh -o StrictHostKeyChecking=yes [email protected]
Perintah pertama mencetak sidik jari publik agar Anda dapat membandingkannya dengan yang dicantumkan server. Perintah kedua membuat pemeriksaan kunci host menjadi eksplisit alih-alih mengandalkan nilai bawaan yang tidak pernah dibaca siapa pun. Jalankan keduanya sebelum mengubah apa pun pada kunci, agar garis dasar terdokumentasi.
Meneruskan agen mendelegasikan kemampuan menandatangani
Saat penerusan aktif, soket muncul di host jarak jauh dan agen lokal menjawab permintaan yang datang melaluinya. Siapa pun yang dapat memakai soket itu selama sesi dapat mengautentikasi sebagai Anda ke host yang menerima identitas yang dimuat. Tidak ada kunci privat yang menyeberangi jaringan agar itu bekerja.
Paparan adalah kemampuannya, bukan berkasnya. Karena itu penerusan dimiliki oleh tugas bernama dan host bernama, bukan oleh setiap koneksi yang dibuat laptop. Host lompat yang meneruskan koneksi tanpa agen yang diteruskan biasanya menghapus kebutuhan itu sepenuhnya.
ssh-add -l ssh -o ForwardAgent=no [email protected] ssh -J [email protected] [email protected]
Yang pertama mendaftar identitas apa yang dipegang agen saat ini, yang layak diketahui sebelum menyerahkan soketnya ke mesin lain. Yang kedua terhubung tanpa delegasi. Yang ketiga memperlihatkan pola host lompat yang sering menggantikan penerusan sepenuhnya.
Pilih respons dari bukti yang Anda miliki
Identitas penanda tangan yang diyakini terpapar menuntut proses penggantian dan pencabutan, serta penghapusan penerimaannya dari layanan yang memercayainya. Menghapus salinan di laptop meninggalkan setiap salinan lain tanpa disentuh. Mulailah dari layanan, lalu bersihkan klien.
Masalah delegasi sementara lebih sempit. Akhiri penerusan yang tidak diperlukan, dan tinjau bersama pemilik insiden sesi serta identitas apa yang dicakupnya. Penggantian kunci dapat menyusul, tetapi bukti yang menentukan, bukan kekhawatiran.
Tidak adanya ekspor yang teramati hanya membuktikan bahwa mekanisme yang Anda takuti tidak muncul. Itu tidak mengatakan apa pun tentang apa lagi yang dapat dilakukan host di ujung lain soket itu.
Jaga kendali tetap terpisah dalam tulisan
Lindungi materi privat, batasi siapa yang dapat memintanya menandatangani, pertahankan identitas pihak lain yang terverifikasi. Itu tiga kendali yang saling memperkuat, dan tidak satu pun menggantikan yang lain saat Anda menjelaskan apa yang terjadi.
Laptop yang terganggu keamanannya atau aplikasi berhak istimewa di dalamnya adalah kasus ketiga dengan jangkauan dampak jauh lebih luas. Mengubah rute VPN tidak menyelesaikannya dan tidak memulihkan kepercayaan pada kunci yang mungkin telah dibaca dari disk.
Catat komponen mana yang tepercaya, apakah penerusan aktif, dan apa yang benar-benar teramati. Catatan itulah yang membuat keputusan berikutnya dapat dipertahankan, alih-alih dugaan tentang arti kebocoran.