Spook.js, teknik baru untuk mengeksploitasi kerentanan Spectre di Chrome

Sekumpulan penyelidik dari universiti Amerika, Australia dan Israel melaporkan bahawa menerangkan teknik serangan baru yang memungkinkan untuk mengeksploitasi kelemahan Kelas spectre pada penyemak imbas berkuasa Chromium.

Serangan itu, diberi nama kod Spook.js, memungkinkan ketika menjalankan kod JavaScript memintas mekanisme pengasingan laman web dan membaca isi keseluruhan ruang alamat dari proses semasa, iaitu mengakses data halaman yang dijalankan di tab lain, tetapi diproses dalam proses yang sama.

Oleh kerana Chrome melancarkan laman web yang berlainan dalam proses yang berbeza, serangan praktikal terhad kepada perkhidmatan yang membolehkan pengguna yang berlainan mengehos halaman mereka. Kaedah serangan Spook.js memungkinkan dari halaman di mana penyerang dapat menanamkan kod JavaScriptnya, tentukan kehadiran halaman lain yang dibuka oleh pengguna laman web yang sama dan mengekstrak maklumat sulit daripadanya, misalnya, kelayakan atau butiran bank digantikan oleh sistem pelengkapan automatik dalam bentuk web.

Aplikasi kaedah yang lain adalah serangan pada plugin penyemak imbas, yang membolehkan, apabila pemalam yang dikendalikan oleh penyerang dipasang, untuk mengekstrak data dari pemalam lain.

Spook.js berlaku untuk mana-mana penyemak imbas berdasarkan enjin Chromium, termasuk Google Chrome, Microsoft Edge, dan Brave. Para penyelidik juga percaya bahawa kaedah tersebut dapat disesuaikan untuk bekerja dengan Firefox, tetapi oleh kerana enjin Firefox sangat berbeza dengan Chrome, kerja membuat eksploitasi seperti itu dibiarkan ke masa depan.

Untuk melindungi daripada serangan yang berkaitan dengan pelaksanaan arahan spekulatif melalui penyemak imbas, segmentasi ruang alamat dilaksanakan di Chrome: pengasingan kotak pasir membolehkan JavaScript berfungsi hanya dengan penunjuk 32-bit dan berkongsi memori pengawal dalam tumpukan 4GB yang tidak tumpang tindih.

Untuk mengatur akses ke seluruh ruang alamat proses dan mengelakkan batasan 32-bit, para penyelidik menggunakan teknik kekeliruan jenis, yang membolehkan mesin JavaScript memproses objek dengan jenis yang salah, memungkinkan untuk membentuk 64-bit kod berdasarkan gabungan dua nilai 32-bit.

Inti dari serangan itu adalah dengan memproses objek jahat yang dibuat khas dalam mesin JavaScript, keadaan dibuat yang menyebabkan pelaksanaan spekulatif arahan yang mengakses larik. Objek dipilih sedemikian rupa sehingga medan yang dikendalikan oleh penyerang ditempatkan di kawasan di mana penunjuk 64-bit digunakan.

Oleh kerana jenis objek berniat jahat tidak sesuai dengan jenis larik yang sedang diproses, dalam keadaan normal tindakan tersebut disekat di Chrome oleh mekanisme penyahmampatan kod yang digunakan untuk mengakses array. Untuk menyelesaikan masalah ini, kod serangan Type Confusion diletakkan dalam blok bersyarat "if", yang tidak menyala dalam keadaan normal, tetapi berjalan dalam mod spekulatif, jika pemproses secara salah memprediksi lebih banyak cabang.

Akibatnya, pemproses secara spekulatif mengakses penunjuk 64-bit yang dihasilkan dan mengembalikan keadaan setelah menentukan ramalan yang gagal, tetapi jejak pelaksanaan ditetapkan dalam cache bersama dan dapat dipulihkan menggunakan kaedah untuk menentukan kandungan cache hingga ketiga- saluran parti, menganalisis perubahan masa akses ke data cache dan bukan cache.

Untuk menganalisis kandungan cache dalam keadaan ketepatan pemasa yang tidak tersedia dalam JavaScript, metode yang dicadangkan oleh Google digunakan yang menipu strategi pengusiran data cache Tree-PLRU yang digunakan dalam prosesor dan memungkinkan, dengan meningkatkan kitaran bilangan, untuk meningkatkan perbezaan masa dengan kehadiran dan ketiadaan nilai dalam cache dengan ketara.

Penyelidik telah mengeluarkan prototaip eksploit yang berfungsi di Chrome 89 en sistem dengan Intel i7-6700K dan i7-7600U. Eksploitasi dibuat menggunakan prototaip kod JavaScript yang sebelumnya diterbitkan oleh Google untuk melakukan serangan Spectre.

Akhirnya penyelidik menyebutkan bahawa berjaya menyiapkan eksploitasi kerja untuk sistem berdasarkan pemproses Intel dan Apple M1, yang diberi kesempatan untuk mengatur memori yang dibaca pada kecepatan 500 byte sesaat dan ketepatan 96%. Kaedah ini semestinya berlaku untuk pemproses AMD, tetapi tidak mungkin untuk menyiapkan eksploitasi yang berfungsi sepenuhnya.

Fuente: https://www.spookjs.com


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.