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

Peretas telah menggunakan fitur protokol OpenPGP, yang telah dikenal selama lebih dari sepuluh tahun.

Kami memberi tahu Anda apa esensinya dan mengapa mereka tidak bisa menutupnya.


/ Unsplash / Chunlea Ju

Masalah jaringan


Pada pertengahan Juni, orang tak dikenal menyerang jaringan server kunci kriptografis SKS Keyserver , yang dibangun berdasarkan protokol OpenPGP. Ini adalah standar IETF ( RFC 4880 ), yang digunakan untuk mengenkripsi email dan pesan lainnya. Jaringan SKS dibuat tiga puluh tahun yang lalu untuk mendistribusikan sertifikat publik. Alat-alat seperti GnuPG untuk mengenkripsi data dan membuat tanda tangan digital elektronik terhubung dengannya.

Peretas mengkompromikan sertifikat dua pengelola proyek GnuPG - Robert Hansen dan Daniel Gillmor. Mengunduh sertifikat yang rusak dari server menyebabkan GnuPG lumpuh - sistem hanya membeku. Ada alasan untuk percaya bahwa penyerang tidak akan berhenti di situ, dan jumlah sertifikat yang dikompromikan hanya akan meningkat. Saat ini, sejauh mana masalah masih belum diketahui.

Inti dari serangan itu


Peretas mengeksploitasi kerentanan dalam protokol OpenPGP. Telah dikenal masyarakat selama beberapa dekade. Bahkan di GitHub, Anda dapat menemukan eksploitasi yang sesuai. Namun sejauh ini belum ada yang mengaku bertanggung jawab untuk menutup "lubang" (kami akan berbicara lebih banyak tentang alasan di bawah).

Beberapa pilihan dari blog kami di Habré:


Menurut spesifikasi OpenPGP, siapa pun dapat menambahkan tanda tangan digital ke sertifikat untuk mengonfirmasi kepemilikannya. Selain itu, jumlah maksimum tanda tangan tidak diatur dengan cara apa pun. Dan di sini muncul masalah - jaringan SKS memungkinkan Anda menempatkan hingga 150 ribu tanda tangan untuk satu sertifikat, tetapi GnuPG tidak mendukung nomor tersebut. Jadi, ketika memuat sertifikat, GnuPG (seperti, kebetulan, implementasi OpenPGP lainnya) hang.

Salah satu pengguna melakukan percobaan - mengimpor sertifikat membutuhkan waktu sekitar 10 menit. Sertifikat tersebut memiliki lebih dari 54 ribu tanda tangan, dan bobotnya 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 <dkg@fifthhorseman.net>" 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 

Situasi ini diperburuk oleh fakta bahwa server utama dengan OpenPGP tidak menghapus informasi sertifikat. Ini dilakukan agar Anda dapat melacak rantai semua tindakan dengan sertifikat dan mencegah substitusi mereka. Karena itu, tidak mungkin untuk menghilangkan elemen yang dikompromikan.

Faktanya, jaringan SKS adalah “server file” besar tempat setiap orang dapat menulis data. Untuk menggambarkan masalah tersebut, tahun lalu seorang warga GitHub menciptakan sistem file yang menyimpan dokumen di jaringan server kunci kriptografi.

Mengapa kerentanan tidak ditutup


Tidak ada alasan untuk menutup kerentanan. Sebelumnya, itu tidak digunakan untuk melakukan serangan hacker. Meskipun komunitas TI telah lama meminta pengembang SKS dan OpenPGP untuk memperhatikan masalah tersebut.

Dalam keadilan, perlu dicatat bahwa pada bulan Juni mereka masih meluncurkan server kunci keys.openpgp.org eksperimental. Ini menerapkan perlindungan terhadap jenis serangan ini. Namun, basis datanya diisi dari awal, dan server itu sendiri bukan bagian dari SKS. Oleh karena itu, waktu akan berlalu sebelum dapat digunakan.


/ Unsplash / Rubén Bagüés

Adapun bug di sistem asli, mekanisme sinkronisasi yang rumit mencegah memperbaikinya. Jaringan server utama pada awalnya ditulis sebagai bukti konsep untuk mempertahankan disertasi doktoral oleh Yaron Minsky. Selain itu, bahasa OCaml yang agak spesifik dipilih untuk digunakan. Menurut pengelola Robert Hansen, memahami kode itu sulit, jadi hanya koreksi kecil saja yang dilakukan. Untuk memodifikasi arsitektur SKS, Anda harus menulis ulang dari awal.

Bagaimanapun, GnuPG tidak percaya bahwa jaringan akan pernah diperbaiki. Dalam sebuah posting 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 keys.openpgp.org baru. Kami hanya bisa menyaksikan perkembangan acara lebih lanjut.

Beberapa bahan dari blog perusahaan kami:

Source: https://habr.com/ru/post/id461443/


All Articles