Kaedah untuk mengesan perlanggaran dalam SHA-1, sesuai untuk menyerang PGP, telah dicadangkan

Penyelidik dari Institut Penyelidikan Informatik dan Automasi Negeri Perancis (INRIA) dan Universiti Teknologi Nanyang (Singapura) membentangkan kaedah serangan Berantakan (PDF), yang disebut-sebut sebagai pelaksanaan praktikal pertama serangan terhadap algoritma SHA-1 yang boleh digunakan untuk mencipta tandatangan digital PGP dan GnuPG palsu. Para penyelidik percaya bahawa semua serangan praktikal pada MD5 kini boleh digunakan untuk SHA-1, walaupun mereka masih memerlukan sumber yang besar untuk dilaksanakan.

Kaedah adalah berdasarkan melaksanakan serangan perlanggaran dengan awalan yang diberikan, yang membolehkan anda memilih tambahan untuk dua set data sewenang-wenangnya, apabila dilampirkan, output akan menghasilkan set yang menyebabkan perlanggaran, aplikasi algoritma SHA-1 yang akan membawa kepada pembentukan cincang yang terhasil yang sama. Dalam erti kata lain, untuk dua dokumen sedia ada, dua pelengkap boleh dikira, dan jika satu dilampirkan pada dokumen pertama dan satu lagi pada dokumen kedua, cincang SHA-1 yang terhasil untuk fail ini adalah sama.

Kaedah baharu berbeza daripada teknik serupa yang dicadangkan sebelum ini dengan meningkatkan kecekapan carian perlanggaran dan menunjukkan aplikasi praktikal untuk menyerang PGP. Khususnya, penyelidik dapat menyediakan dua kunci awam PGP dengan saiz yang berbeza (RSA-8192 dan RSA-6144) dengan ID pengguna yang berbeza dan dengan sijil yang menyebabkan perlanggaran SHA-1. Kunci pertama termasuk ID mangsa, dan kunci kedua termasuk nama dan imej penyerang. Selain itu, terima kasih kepada pemilihan perlanggaran, sijil pengecam kunci, termasuk kunci dan imej penyerang, mempunyai cincang SHA-1 yang sama seperti sijil pengenalan, termasuk kunci dan nama mangsa.

Penyerang boleh meminta tandatangan digital untuk kunci dan imejnya daripada pihak berkuasa pensijilan pihak ketiga, dan kemudian memindahkan tandatangan digital untuk kunci mangsa. Tandatangan digital kekal betul kerana perlanggaran dan pengesahan kunci penyerang oleh pihak berkuasa pensijilan, yang membolehkan penyerang mendapatkan kawalan ke atas kunci dengan nama mangsa (memandangkan cincangan SHA-1 untuk kedua-dua kunci adalah sama). Akibatnya, penyerang boleh menyamar sebagai mangsa dan menandatangani sebarang dokumen bagi pihaknya.

Serangan itu masih agak mahal, tetapi sudah cukup berpatutan untuk perkhidmatan perisikan dan syarikat besar. Untuk pemilihan perlanggaran mudah menggunakan GPU NVIDIA GTX 970 yang lebih murah, kosnya ialah 11 ribu dolar, dan untuk pemilihan perlanggaran dengan awalan tertentu - 45 ribu dolar (sebagai perbandingan, pada tahun 2012 kos untuk pemilihan perlanggaran dalam SHA-1 dianggarkan pada 2 juta dolar, dan pada 2015 - 700 ribu). Untuk menjalankan serangan praktikal ke atas PGP, ia mengambil masa dua bulan pengkomputeran menggunakan 900 NVIDIA GTX 1060 GPU, sewa yang menelan belanja penyelidik $75.

Kaedah pengesanan perlanggaran yang dicadangkan oleh penyelidik adalah kira-kira 10 kali lebih berkesan daripada pencapaian sebelumnya - tahap kerumitan pengiraan perlanggaran dikurangkan kepada 261.2 operasi, bukannya 264.7, dan perlanggaran dengan awalan yang diberikan kepada 263.4 operasi dan bukannya 267.1. Para penyelidik mengesyorkan beralih daripada SHA-1 kepada menggunakan SHA-256 atau SHA-3 secepat mungkin, kerana mereka meramalkan bahawa kos serangan akan turun kepada $2025 menjelang 10.

Pembangun GnuPG telah dimaklumkan tentang masalah itu pada 1 Oktober (CVE-2019-14855) dan mengambil tindakan untuk menyekat sijil bermasalah pada 25 November dalam keluaran GnuPG 2.2.18 - semua tandatangan identiti digital SHA-1 yang dibuat selepas 19 Januari tahun lepas kini diiktiraf sebagai tidak betul. CAcert, salah satu pihak berkuasa pensijilan utama untuk kunci PGP, merancang untuk beralih kepada menggunakan fungsi cincang yang lebih selamat untuk pensijilan kunci. Pembangun OpenSSL, sebagai tindak balas kepada maklumat tentang kaedah serangan baharu, memutuskan untuk melumpuhkan SHA-1 pada tahap keselamatan pertama lalai (SHA-1 tidak boleh digunakan untuk sijil dan tandatangan digital semasa proses rundingan sambungan).

Sumber: opennet.ru

Tambah komen