Peneliti keamanan telah menerbitkan di Project Zero kerentanan baru yang disebut Specter and Meltdown yang memungkinkan program untuk mencuri informasi dari memori program lain. Ini mempengaruhi arsitektur Intel, AMD dan ARM.
Kekurangan ini dapat dieksploitasi dari jarak jauh dengan mengunjungi situs web JavaScript. Rincian teknis dapat ditemukan di situs web redhat , tim keamanan Ubuntu .
Informasi Kebocoran melalui serangan sisi saluran eksekusi spekulatif (CVE-2017-5715, CVE-2017-5753, CVE-2017-5754 alias Spectre and Meltdown)
Ditemukan bahwa serangan samping saluran kelas baru berdampak pada sebagian besar prosesor, termasuk prosesor dari Intel, AMD, dan ARM. Serangan itu memungkinkan proses userspace jahat untuk membaca memori kernel dan kode berbahaya di tamu untuk membaca memori hypervisor. Untuk mengatasi masalah ini, pembaruan untuk kernel Ubuntu dan mikrokode prosesor akan diperlukan. Pembaruan ini akan diumumkan di Pemberitahuan Keamanan Ubuntu di masa mendatang begitu tersedia.
Contoh Implementasi dalam JavaScript
Sebagai bukti konsep, kode JavaScript ditulis bahwa, ketika dijalankan di browser Google Chrome, memungkinkan JavaScript untuk membaca memori pribadi dari proses di mana ia berjalan.
Sistem saya tampaknya dipengaruhi oleh kerentanan momok. Saya telah menyusun dan menjalankan proof-of-concept ( spectre.c
) ini.
Sistem Informasi:
$ uname -a
4.13.0-0.bpo.1-amd64 #1 SMP Debian 4.13.13-1~bpo9+1 (2017-11-22) x86_64 GNU/Linux
$ cat /proc/cpuinfo
model name : Intel(R) Core(TM) i3-3217U CPU @ 1.80GHz
$gcc --version
gcc (Debian 6.3.0-18) 6.3.0 20170516
Bagaimana cara mengurangi kerentanan Spectre dan Meldown pada sistem Linux?
Bacaan lebih lanjut: Menggunakan Meltdown untuk mencuri kata sandi secara real time .
Memperbarui
Menggunakan Spectre & Meltdown Checker
setelah beralih ke 4.9.0-5
versi kernel berikut @Carlos Pasqualini menjawab karena pembaruan keamanan tersedia untuk mengurangi cve-2017-5754 pada debian Stretch:
CVE-2017-5753 [bounds check bypass] aka 'Spectre Variant 1'
* Checking count of LFENCE opcodes in kernel: NO (only 31 opcodes found, should be >= 70)
> STATUS: VULNERABLE (heuristic to be improved when official patches become available)
CVE-2017-5715 [branch target injection] aka 'Spectre Variant 2'
* Mitigation 1
* Hardware (CPU microcode) support for mitigation: NO
* Kernel support for IBRS: NO
* IBRS enabled for Kernel space: NO
* IBRS enabled for User space: NO
* Mitigation 2
* Kernel compiled with retpoline option: NO
* Kernel compiled with a retpoline-aware compiler: NO
> STATUS: VULNERABLE (IBRS hardware + kernel support OR kernel with retpoline are needed to mitigate the vulnerability)
CVE-2017-5754 [rogue data cache load] aka 'Meltdown' aka 'Variant 3'
* Kernel supports Page Table Isolation (PTI): YES
* PTI enabled and active: YES
> STATUS: NOT VULNERABLE (PTI mitigates the vulnerability)
Perbarui 25 Jan 2018
The spectre-meltdown-checker
Script secara resmi dikemas dengan debian, tersedia untuk Debian Peregangan melalui backports repositori, Buster dan Sid.
Bypass Store Spekulatif (SSB) - juga dikenal sebagai Varian 4
Sistem dengan mikroprosesor yang memanfaatkan eksekusi spekulatif dan eksekusi spekulatif dari memori yang dibaca sebelum alamat semua penulisan memori sebelumnya diketahui dapat memungkinkan pengungkapan informasi tanpa izin kepada penyerang dengan akses pengguna lokal melalui analisis saluran samping.
Rogue System Register Read (RSRE) - juga dikenal sebagai Variant 3a
Sistem dengan mikroprosesor yang memanfaatkan eksekusi spekulatif dan yang melakukan pembacaan spekulatif register sistem dapat memungkinkan pengungkapan parameter sistem yang tidak sah kepada penyerang dengan akses pengguna lokal melalui analisis saluran samping.
Edit 27 Juli 2018
NetSpectre: Baca Memori Sewenang-wenang melalui Jaringan
Dalam makalah ini, kami menyajikan NetSpectre, serangan baru berdasarkan Spectre varian 1, tidak memerlukan kode yang dikendalikan penyerang pada perangkat target, sehingga mempengaruhi miliaran perangkat. Mirip dengan serangan Spectre lokal, serangan jarak jauh kami memerlukan kehadiran gadget Spectre dalam kode target. Kami menunjukkan bahwa sistem yang mengandung gadget Spectre yang diperlukan dalam antarmuka jaringan yang terbuka atau API dapat diserang dengan serangan Spectre jarak jauh generik kami, memungkinkan untuk membaca memori sewenang-wenang melalui jaringan. Penyerang hanya mengirim serangkaian permintaan kepada korban dan mengukur waktu respons untuk membocorkan nilai rahasia dari ingatan korban.
sumber
Jawaban:
Alan Cox membagikan tautan dari blog AMD: https://www.amd.com/en/corporate/speculative-execution
Varian Satu: Batas Periksa Bypass Varian Dua: Injeksi Target Cabang Varian Tiga: Load Cache Data NakalAkan lebih baik untuk memiliki konfirmasi pernyataan AMD ini oleh pihak ketiga.
'Mitigasi' pada sistem yang terkena dampak, akan membutuhkan kernel baru dan reboot, tetapi pada banyak distribusi belum ada paket yang dirilis dengan perbaikan:
Debian:
Sumber informasi lain yang saya temukan:
sumber
27 Januari 2018 Intel Microcode memecah beberapa sistem
The Intel Microcode Perbarui 2018/01/08 untuk mengatasi eksekusi spekulatif bercabang lubang keamanan pecah beberapa sistem. Ini mempengaruhi banyak sistem Ubuntu dari 8 Januari hingga 21 Januari. Pada 22 Januari 2018 Ubuntu merilis pembaruan yang mengembalikan Microcode lama dari 2017-07-07.
Jika Anda mengalami masalah dengan pembaruan, instal ulang Ubuntu dan matikan pembaruan antara 2018-01-08 dan 2018-01-22 Anda mungkin ingin mencoba pembaruan otomatis Ubuntu lagi.
16 Januari 2018 memperbarui Specter di 4.14.14 dan 4.9.77
Jika Anda sudah menjalankan versi Kernel 4.14.13 atau 4.9.76 seperti saya, ini adalah hal yang sulit untuk diinstal
4.14.14
dan4.9.77
ketika mereka keluar dalam beberapa hari untuk mengurangi lubang keamanan Spectre. Nama perbaikan ini adalah Retpoline dan tidak memiliki performa hebat yang diperkirakan sebelumnya:Tanpa memasukkan rincian JavaScript di sini adalah cara untuk segera menghindari lubang Meltdown (dan pada 10 Januari 2018, Spectre protection)
Pembaruan 12 Januari 2018
Perlindungan awal dari Specter ada di sini dan akan ditingkatkan dalam beberapa minggu dan bulan mendatang.
Kernel Linux 4.14.13, 4.9.76 LTS, dan 4.4.111 LTS
Dari artikel Softpedia ini :
Banyak pengguna memiliki masalah dengan pembaruan Ubuntu LTS pada tanggal 4 Januari 2018 dan 10 Januari 2018. Saya telah menggunakan
4.14.13
selama beberapa hari tanpa masalah namun YMMV .7 Januari 2018 pembaruan
Greg Kroah-Hartman menulis pembaruan status pada lubang keamanan Kernel Meltdown dan Specter Linux kemarin. Beberapa mungkin memanggilnya orang paling kuat kedua di dunia Linux tepat di sebelah Linus. Artikel ini membahas kernel stabil (dibahas di bawah) dan kernel LTS yang dimiliki sebagian besar pengguna Ubuntu.
Kernel Linux 4.14.11, 4.9.74, 4.4.109, 3.16.52, dan 3.2.97 Patch Meltdown Flaw
Dari artikel ini :
Pengguna didesak untuk segera memperbarui sistem mereka
4 Jan 2018 01:42 GMT · Oleh Marius Nestor
Pemelihara kernel Linux Greg Kroah-Hartman dan Ben Hutchings telah merilis versi baru dari Linux 4.14, 4.9, 4.4, 3.16, 3.18, dan 3.12 seri kernel LTS (Long Term Support) yang tampaknya menambal salah satu dari dua kelemahan keamanan kritis yang mempengaruhi paling modern pengolah.
Linux 4.14.11, 4.9.74, 4.4.109, 3.16.52, 3.18.91, dan 3.2.97 kernel sekarang tersedia untuk diunduh dari situs kernel.org, dan pengguna didesak untuk memperbarui distribusi GNU / Linux mereka ke versi baru ini jika mereka menjalankan salah satu dari seri kernel tersebut dengan segera. Mengapa memperbarui? Karena mereka tampaknya menambal kerentanan kritis yang disebut Meltdown.
Seperti yang dilaporkan sebelumnya, Meltdown dan Specter adalah dua eksploitasi yang mempengaruhi hampir semua perangkat yang ditenagai oleh prosesor modern (CPU) yang dirilis dalam 25 tahun terakhir. Ya, itu berarti hampir semua ponsel dan komputer pribadi. Meltdown dapat dieksploitasi oleh penyerang tidakrivil untuk secara jahat memperoleh informasi sensitif yang disimpan dalam memori kernel.
Kerentanan Patch untuk Spectre masih dalam pengerjaan
Walaupun Meltdown adalah kerentanan serius yang dapat mengekspos data rahasia Anda, termasuk kata sandi dan kunci enkripsi, Specter bahkan lebih buruk, dan itu tidak mudah untuk diperbaiki. Peneliti keamanan mengatakan itu akan menghantui kita selama beberapa waktu. Spectre diketahui mengeksploitasi teknik eksekusi spekulatif yang digunakan oleh CPU modern untuk mengoptimalkan kinerja.
Sampai bug Spectre juga ditambal, sangat disarankan agar Anda setidaknya memperbarui distribusi GNU / Linux Anda ke versi kernel Linux yang baru dirilis. Jadi cari repositori perangkat lunak dari distro favorit Anda untuk pembaruan kernel baru dan instal sesegera mungkin. Jangan tunggu sampai terlambat, lakukan sekarang!
Saya telah menggunakan Kernel 4.14.10 selama seminggu sehingga mengunduh dan mem-boot Ubuntu Mainline Kernel versi 4.14.11 tidak terlalu menjadi masalah bagi saya.
Pengguna Ubuntu 16.04 mungkin lebih nyaman dengan versi kernel 4.4.109 atau 4.9.74 yang dirilis bersamaan dengan 4.14.11.
Jika pembaruan rutin Anda tidak menginstal versi Kernel yang Anda inginkan, Anda dapat melakukannya secara manual dengan mengikuti ini Tanya jawab Ubuntu: https://askubuntu.com/questions/879888/how-do-i-update-kernel-to-the-latest -mainline-versi / 879920 # 879920
4.14.12 - Apa perbedaan dalam sehari
Kurang dari 24 jam setelah jawaban awal saya, sebuah patch dirilis untuk memperbaiki versi kernel 4.14.11 yang mungkin telah mereka buru-buru. Upgrade ke 4.14.12 direkomendasikan untuk semua pengguna 4.14.11. Greg-KH mengatakan :
Melihat pembaruan ini tidak banyak baris kode sumber yang diubah.
sumber
apt-get dist-upgrade
.Memang. Jadi, satu mitigasi yang masuk akal adalah dengan menonaktifkan JavaScript di peramban web Anda, atau menggunakan peramban web yang tidak mendukung JavaScript.
Sebagian besar browser yang mendukung JavaScript memiliki pengaturan untuk menonaktifkannya. Atau, jika Anda ingin mempertahankan daftar putih situs atau domain yang memungkinkan JavaScript, maka ada berbagai add-on yang dapat membantu, seperti uBlock Origin dan NoScript .
NB Seharusnya tanpa mengatakan bahwa menonaktifkan / membatasi JavaScript tidak hanya menjadi milik Anda mitigasi Anda. Anda juga harus meninjau (dan mungkin menerapkan) perbaikan kernel yang relevan dan pembaruan keamanan lainnya setelah itu ditulis, diuji dan diterbitkan. Pada distribusi Debian diturunkan, digunakan perintah seperti
sudo apt update
,sudo apt list-upgradable
, dansudo apt upgrade
.Memperbarui: jangan terima kata-kata saya untuk itu. Alan Cox mengatakan hal yang sama:
sumber
Fakta bahwa ini dapat dieksploitasi menggunakan JavaScript bukanlah poin utama, dan seharusnya tidak menjadi perhatian utama (meskipun ini adalah yang utama karena cara ini kode jarak jauh dapat dengan mudah dieksekusi di sistem Anda, tetapi ini bukan satu-satunya cara ini bisa terjadi).
Fokus Anda seharusnya tidak terletak pada Javascript dan / atau browser Anda. Idealnya, CPU Anda harus ditambal. Sayangnya, untuk sebagian besar gelombang bug saat ini hal ini tampaknya tidak mungkin dilakukan. Debian, bersama-sama semua pihak penyedia OS lainnya akan pergi dengan satu-satunya cara lain yang mungkin untuk merekomendasikan CPU yang tidak cacat: mereka memaksa sistem untuk memperbaiki bug di CPU. Tambalan itu tidak memperbaiki masalah. Alih-alih, OS menyembunyikannya sebaik mungkin dari program apa pun yang dijalankan pengguna di mesin (dan karenanya, juga browser Anda).
Persembunyian ini adalah pekerjaan komputasi ekstra, dan dengan demikian kinerja sistem Anda secara keseluruhan akan lebih rendah daripada tanpa. Seberapa jauh lebih rendah sangat tergantung pada apa yang sebenarnya dilakukan program-program itu.
Dengan mengingat hal itu kembali ke pertanyaan Anda: apa yang dapat Anda lakukan untuk melindungi sistem Debian Anda adalah menginstal pembaruan keamanan. Saya percaya bahwa Debian akan melakukan segala yang mungkin mengingat bug ini untuk menjalankan Debian seaman mungkin terlepas dari kekurangan CPU yang melekat.
Semua jenis perusahaan besar sudah menangani masalah ini, begitu juga banyak perangkat keras dan guru Linux. Saya tidak ingin benar-benar menahan Anda dari mencoba sesuatu sendiri atau mencoba membantu upaya umum. Namun, jika keamanan Anda sendiri dan perbaikan tepat waktu adalah yang Anda minati, maka kemungkinan besar mereka akan menemukan solusi yang lebih baik dalam waktu yang lebih singkat daripada Anda, mulai sekarang untuk melihat sendiri ini.
sumber