Sebelum ini kita
Anehnya, Kolsek pada mulanya tidak dapat menghasilkan semula serangan yang diterangkan dan ditunjukkan oleh John, di mana dia menggunakan Internet Explorer yang dijalankan pada Windows 7 untuk memuat turun dan kemudian membuka fail MHT yang berniat jahat. Walaupun pengurus prosesnya menunjukkan bahawa system.ini, yang dirancang untuk dicuri daripada dirinya sendiri, dibaca oleh skrip yang tersembunyi dalam fail MHT, tetapi tidak dihantar ke pelayan jauh.
"Ini kelihatan seperti situasi mark-of-the-Web klasik," tulis Kolsek. βApabila fail diterima daripada Internet, menjalankan aplikasi Windows dengan betul seperti pelayar web dan klien e-mel menambah label pada fail tersebut dalam borang
Penyelidik mengesahkan bahawa IE sebenarnya menetapkan label sedemikian untuk fail MHT yang dimuat turun. Kolsek kemudian cuba memuat turun fail yang sama menggunakan Edge dan membukanya dalam IE, yang kekal sebagai aplikasi lalai untuk fail MHT. Tanpa diduga, eksploitasi itu berhasil.
Pertama, penyelidik menyemak "mark-of-the-Web", ternyata Edge juga menyimpan sumber asal fail dalam aliran data alternatif sebagai tambahan kepada pengecam keselamatan, yang mungkin menimbulkan beberapa soalan mengenai privasi ini kaedah. Kolsek membuat spekulasi bahawa baris tambahan mungkin telah mengelirukan IE dan menghalangnya daripada membaca SID, tetapi ternyata, masalahnya adalah di tempat lain. Selepas analisis yang panjang, pakar keselamatan menemui punca dalam dua entri dalam senarai kawalan akses yang menambah hak untuk membaca fail MHT pada perkhidmatan sistem tertentu, yang ditambahkan Edge di sana selepas memuatkannya.
James Foreshaw daripada pasukan kerentanan sifar hari yang berdedikasi - Google Project Zero -
Seterusnya, penyelidik ingin lebih memahami apa yang menyebabkan sistem keselamatan IE gagal. Analisis mendalam menggunakan utiliti Process Monitor dan pembongkar IDA akhirnya mendedahkan bahawa resolusi set Edge menghalang fungsi Win Api GetZoneFromAlternateDataStreamEx daripada membaca aliran fail Zone.Identifier dan mengembalikan ralat. Untuk Internet Explorer, ralat sedemikian semasa meminta label keselamatan fail adalah tidak dijangka sama sekali, dan, nampaknya, penyemak imbas menganggap bahawa ralat itu bersamaan dengan fakta bahawa fail itu tidak mempunyai tanda "mark-of-the-Web", yang secara automatik menjadikannya dipercayai, selepas mengapa IE membenarkan skrip tersembunyi dalam fail MHT untuk melaksanakan dan menghantar fail tempatan sasaran ke pelayan jauh.
"Adakah anda melihat ironi di sini?" tanya Kolsek. "Ciri keselamatan tanpa dokumen yang digunakan oleh Edge meneutralkan ciri sedia ada, sudah pasti lebih penting (mark-of-the-Web) dalam Internet Explorer."
Walaupun terdapat peningkatan kepentingan kerentanan, yang membolehkan skrip berniat jahat dijalankan sebagai skrip yang dipercayai, tidak ada petunjuk bahawa Microsoft berhasrat untuk membetulkan pepijat itu dalam masa terdekat, jika ia pernah diperbaiki. Oleh itu, kami masih mengesyorkan bahawa, seperti dalam artikel sebelumnya, anda menukar program lalai untuk membuka fail MHT kepada mana-mana pelayar moden.
Sudah tentu, penyelidikan Kolsek tidak pergi tanpa sedikit PR diri. Pada akhir artikel, beliau menunjukkan tampalan kecil yang ditulis dalam bahasa himpunan yang boleh menggunakan perkhidmatan 0patch yang dibangunkan oleh syarikatnya. 0patch secara automatik mengesan perisian yang terdedah pada komputer pengguna dan menggunakan patch kecil padanya secara literal dengan cepat. Sebagai contoh, dalam kes yang kami terangkan, 0patch akan menggantikan mesej ralat dalam fungsi GetZoneFromAlternateDataStreamEx dengan nilai yang sepadan dengan fail yang tidak dipercayai yang diterima daripada rangkaian, supaya IE tidak akan membenarkan sebarang skrip tersembunyi dilaksanakan mengikut terbina- dalam dasar keselamatan.
Sumber: 3dnews.ru