Pasca-analisis: apa yang diketahui tentang serangan terbaru pada jaringan server kunci kripto SKS Keyserver

Para peretas menggunakan fitur protokol OpenPGP yang telah dikenal selama lebih dari sepuluh tahun.

Kami memberi tahu Anda apa maksudnya dan mengapa mereka tidak dapat menutupnya.

Pasca-analisis: apa yang diketahui tentang serangan terbaru pada jaringan server kunci kripto SKS Keyserver
/hapus percikan/ Chunlea Ju

Masalah jaringan

Pada pertengahan Juni, tidak diketahui melakukan serangan ke jaringan server kunci kriptografi Server Kunci SKS, dibangun di atas protokol OpenPGP. Ini adalah standar IETF (RFC 4880), yang digunakan untuk mengenkripsi email dan pesan lainnya. Jaringan SKS diciptakan tiga puluh tahun yang lalu untuk mendistribusikan sertifikat publik. Ini termasuk alat-alat seperti GnuPG untuk mengenkripsi data dan membuat tanda tangan digital elektronik.

Peretas mengkompromikan sertifikat dua pengelola proyek GnuPG, Robert Hansen dan Daniel Gillmor. Memuat sertifikat yang rusak dari server menyebabkan GnuPG gagal—sistem terhenti begitu saja. Ada alasan untuk percaya bahwa penyerang tidak akan berhenti di situ, dan jumlah sertifikat yang disusupi akan terus bertambah. Saat ini, tingkat permasalahannya masih belum diketahui.

Inti dari serangan itu

Peretas memanfaatkan kerentanan dalam protokol OpenPGP. Ia sudah dikenal masyarakat selama puluhan tahun. Bahkan di GitHub dapat menemukan eksploitasi yang sesuai. Namun sejauh ini belum ada yang mengambil tanggung jawab untuk menutup “lubang” tersebut (kami akan membicarakan alasannya lebih detail nanti).

Beberapa pilihan dari blog kami di Habré:

Menurut spesifikasi OpenPGP, siapa pun dapat menambahkan tanda tangan digital ke sertifikat untuk memverifikasi pemiliknya. Apalagi jumlah tanda tangan maksimal tidak diatur sama sekali. Dan di sini muncul masalah - jaringan SKS memungkinkan Anda menempatkan hingga 150 ribu tanda tangan pada satu sertifikat, tetapi GnuPG tidak mendukung jumlah tersebut. Jadi, saat memuat sertifikat, GnuPG (serta implementasi OpenPGP lainnya) terhenti.

Salah satu pengguna melakukan percobaan — mengimpor sertifikat membutuhkan waktu sekitar 10 menit. Sertifikat tersebut memiliki lebih dari 54 ribu tanda tangan, dan beratnya 17 MB:

$ gpg --homedir=$PWD --recv C4BC2DDB38CCE96485EBE9C2F20691179038E5C6
gpg: key F20691179038E5C6: 4 duplicate signatures removed
gpg: key F20691179038E5C6: 54614 signatures not checked due to missing keys
gpg: key F20691179038E5C6: 4 signatures reordered
gpg: key F20691179038E5C6: public key "Daniel Kahn Gillmor <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1
$ ls -lh pubring.gpg
-rw-r--r--  1 filippo  staff    17M  2 Jul 16:30 pubring.gpg

Lebih buruk lagi, server kunci OpenPGP tidak menghapus informasi sertifikat. Hal ini dilakukan agar Anda dapat melacak rantai semua tindakan dengan sertifikat dan mencegah penggantiannya. Oleh karena itu, tidak mungkin menghilangkan unsur-unsur yang dikompromikan.

Pada dasarnya, jaringan SKS adalah “server file” besar dimana siapa pun dapat menulis data. Untuk menggambarkan masalahnya, tahun lalu penduduk GitHub membuat sistem file, yang menyimpan dokumen di jaringan server kunci kriptografi.

Mengapa kerentanannya tidak ditutup?

Tidak ada alasan untuk menutup kerentanan. Sebelumnya, itu tidak digunakan untuk serangan hacker. Meskipun komunitas IT bertanya untuk waktu yang lama Pengembang SKS dan OpenPGP harus memperhatikan masalah ini.

Agar adil, perlu dicatat bahwa pada bulan Juni mereka masih melakukannya diluncurkan server kunci eksperimental kunci.openpgp.org. Ini memberikan perlindungan terhadap jenis serangan ini. Namun, databasenya diisi dari awal, dan servernya sendiri bukan bagian dari SKS. Oleh karena itu, perlu waktu sebelum dapat digunakan.

Pasca-analisis: apa yang diketahui tentang serangan terbaru pada jaringan server kunci kripto SKS Keyserver
/hapus percikan/ Rubén Bagues

Adapun bug di sistem asli, mekanisme sinkronisasi yang rumit mencegahnya diperbaiki. Jaringan server kunci awalnya ditulis sebagai bukti konsep untuk tesis PhD Yaron Minsky. Selain itu, bahasa yang agak spesifik, OCaml, dipilih untuk pekerjaan ini. Oleh menurut pengelola Robert Hansen, kode ini sulit untuk dipahami, jadi hanya sedikit koreksi yang dilakukan. Untuk memodifikasi arsitektur SKS, arsitektur tersebut harus ditulis ulang dari awal.

Bagaimanapun, GnuPG tidak percaya bahwa jaringan tersebut akan diperbaiki. Dalam postingan di GitHub, para pengembang bahkan menulis bahwa mereka tidak merekomendasikan bekerja dengan SKS Keyserver. Sebenarnya, ini adalah salah satu alasan utama mengapa mereka memulai transisi ke layanan baru key.openpgp.org. Kita hanya bisa menyaksikan perkembangan peristiwa selanjutnya.

Beberapa materi dari blog perusahaan kami:

Sumber: www.habr.com

Tambah komentar