Untuk sistem yang berada di jalur kritis seperti ini, seharusnya tidak mungkin lolos dari pipeline CI yang benar
Saya bukan orang yang sangat ketat soal pengujian otomatis, tetapi untuk sistem sepenting ini, pengelolaan statusnya harus luar biasa baik
Seharusnya tidak boleh ada deployment produksi tanpa uji integrasi untuk semua lingkungan yang diklaim didukung, dan tidak masuk akal jika perusahaan sebesar dan sepenting ini bahkan tidak punya server staging atau pengujian pengembangan yang memvalidasi seluruh image yang didukung
Terlalu banyak asumsi padahal belum ada informasi lebih lanjut. Misalnya, bisa saja sebenarnya ada file yang normal, dan titik gagalnya ada pada kode yang mengunggah artefak tervalidasi ke CDN
Kalau begitu, masalah baru bisa muncul setelah melewati banyak pemeriksaan sebelum deployment. Saya tidak ingin buru-buru menyimpulkan bahwa mereka sama sekali tidak menguji ekspor ke Windows
Siapa bilang lingkungan seperti itu tidak ada? Siapa bilang semua pengujian itu tidak dilewati? Saat ini ada terlalu banyak asumsi
Saat saya wawancara beberapa tahun lalu dengan tim yang menangani bahasa yang berjalan di kernel, saya ingat mereka mengatakan CI menjalankan 20 ribu hingga 40 ribu kombinasi mesin/OS dan konfigurasi
Di antaranya pasti ada Windows default juga
Jika kriteria penerimaannya adalah “jika ada tanda tangan data yang salah, cegah mesin booting”, maka karena itu bisa berarti deployment atau jaringan yang rusak, tidak melakukan booting mungkin saja secara retrospektif adalah perilaku yang benar
Mungkin saja desainnya memang mengharuskan mesin tidak melakukan boot sepenuhnya sampai file dengan tanda tangan yang valid berhasil diunduh
Sulit dipercaya bahwa file yang seluruhnya berisi karakter null itu adalah artefak dari pipeline build otomatis
Saya lebih cenderung bertaruh bahwa setelah sesuatu di-build dan lolos pengujian CI, sistem rusak pada tahap hilir saat file disalin untuk persiapan deployment. Namun saat ini semuanya hanya spekulasi
Terkait itu, rasanya bukan kebetulan bahwa dua bencana teknologi terbesar dalam sejarah (CrowdStrike dan peretasan SolarWinds beberapa tahun lalu) sama-sama berasal dari perangkat lunak keamanan yang lepas kendali
Menurut saya, orang-orang bergaya hacker yang ingin memulai perusahaan perangkat lunak keamanan kemungkinan besar paling tidak tertarik menerapkan bagian-bagian membosankan dari budaya yang berorientasi proses. Dalam kasus SolarWinds, terungkap bahwa budaya keamanan internal perusahaan itu mengerikan, dan untuk kejadian ini pun, ketika akar penyebabnya keluar, besar kemungkinan itu adalah proses deployment yang cepat dan longgar
Saya tidak setuju. Perusahaan keamanan mengalami sindrom “terlalu besar untuk gagal”, dan uang mengalir dengan mudah karena pelanggan ingin mencentang kotak kepatuhan Keamanan adalah budaya, bukan produk yang dibeli, dan harus ditanamkan sejak hari pertama melalui upaya aktif dan kerja keras. Tidak ada produk di pasar yang benar-benar menyediakan keamanan; yang ada hanya produk untuk dijadikan sasaran pelimpahan tanggung jawab saat masalah terjadi
CrowdStrike awalnya didirikan dan berkantor pusat di Irvine, California
Sebagian besar organisasi engineering pada masa awal bersifat remote/kerja dari rumah atau berada di Irvine, lalu seiring pertumbuhan mereka menambahkan kantor Sunnyvale, dan belakangan memindahkan kantor pusat resmi ke Austin, TX
Dalam beberapa tahun terakhir mereka juga memperluas operasi engineering di luar negeri, dan ini kemungkinan mencakup offshoring
Ini hipotesis terpisah, tetapi keduanya bisa sama-sama benar. Perangkat lunak keamanan umumnya memerlukan hak akses yang luas dan kuat
Karena itu, jika terjadi kesalahan atau pelanggaran, dampaknya cenderung jauh lebih besar
Rekam jejak industrinya memang cukup unik. Yang langsung terlintas saja ada CrowdStrike, SolarWinds, Kaspersky, https://en.wikipedia.org/wiki/John_McAfee
Sepertinya masih ada lagi yang saya lupakan. Mungkin strukturnya mirip dengan masalah seleksi diri yang mengganggu industri ganja legal
Perangkat lunak keamanan memerlukan akses tingkat kernel. Jika ada sesuatu yang rusak, itu berujung pada boot loop dan crash
Kebanyakan perangkat lunak lain tidak memerlukan akses serendah itu, dan kalau crash pun tidak ikut menjatuhkan seluruh sistem, serta bisa melakukan upgrade otomatis yang cepat
Kalau harus mencari sisi positif dari bencana ini, ada sedikit sekali harapan bahwa organisasi-organisasi akan memikirkan ulang akses tingkat kernel
Tidak bisa diasumsikan bahwa sembarang perusahaan game cukup kompeten untuk memakai perangkat lunak anti-cheat tingkat kernel
Kecuali Microsoft menindak dengan sangat keras, sepertinya perangkat lunak game tidak akan terdampak
Meski begitu, karena ada perusahaan game di bawah Microsoft, kemungkinan besar mereka akan tetap menyediakan hook untuk game. Organisasi korporat tidak akan peduli sedikit pun dengan praktik anti-cheat Riot, karena mereka tidak memasang LoL di mesin kerja
Lawan yang harus dihadapi adalah para pembeli cheat yang berkata “driver tingkat kernel acak? Tidak masalah!”
Menurut saya anti-cheat seharusnya sebagian besar berbasis perilaku di sisi server
Setahu saya di macOS setidaknya akses kernel tidak dimungkinkan, dan itu lumayan melegakan
Ini terlihat seperti berkas uji yang mungkin dicoba oleh QA sebagai percobaan kedua atau ketiga setelah berkas kosong dan berkas valid minimal. Tingkat ketidakmampuan menyeluruh yang tampak di sini benar-benar mengejutkan
Di pasar yang bersaing untuk memukau eksekutif non-teknis lewat presentasi, tidak mengherankan bahwa perusahaan yang kompeten secara teknis tidak punya keunggulan atas perusahaan yang tidak kompeten
Baru-baru ini saya membaca putusan Craig Wright https://www.judiciary.uk/judgments/copa-v-wright/, dan orang yang secara palsu mengaku sebagai Satoshi Nakamoto itu bahkan tidak memiliki kemampuan teknis dasar di bidang yang ia klaim sebagai keahlian kelas dunianya. Di kursi saksi, ia bahkan tidak tahu arti ‘unsigned’, dan sejak tahun 90-an tampaknya ia menipu orang lewat jargon, demo yang dimanipulasi, dan dokumen palsu sambil mengerjakan keamanan untuk perusahaan besar
Pendiri sekaligus CEO CrowdStrike, George Kurtz, adalah CTO di McAfee 14 tahun lalu ketika McAfee melakukan hal yang hampir sama: https://old.reddit.com/r/sysadmin/comments/1e78l0g/can_crowd...https://en.wikipedia.org/wiki/George_Kurtz
CrowdStrike sendiri juga menimbulkan masalah yang sama di Debian stable 3 bulan lalu: https://old.reddit.com/r/debian/comments/1c8db7l/linuximage6...
Mengerikan bahwa aturan kepatuhan PCI telah mendorong CrowdStrike dan antivirus masuk ke hampir seluruh infrastruktur TI saat ini
Ironis juga bahwa kepatuhan justru menciptakan kerentanan terbesar sebagai titik kegagalan tunggal raksasa
Tapi memang begitulah regulasi pemerintah
Hal terburuk dari insiden ini adalah bahwa aktor negara kini mendapat cetak biru yang jelas untuk serangan infrastruktur berskala besar
Lucu melihat orang-orang di tautan itu marah karena ini disebut “gangguan Microsoft” dan bersikeras bahwa ini “kesalahan CrowdStrike”
Tapi ini juga kegagalan Microsoft. Lebih luas lagi, ini satu lagi kegagalan industri
Berapa kali lagi hal seperti ini harus terulang sebelum terjadi reformasi industri yang memungkinkan kita membangun sistem aman dan andal yang sudah kita teliti selama 70 tahun? Rasanya seperti 1988 terulang lagi
Cukup ironis bahwa Craig Wright pernah mengusulkan agar sertifikat digital tidak diterbitkan oleh satu komputer atau klaster saja, melainkan ditempatkan di blockchain
Jika berada di satu tempat, ia menjadi target, sedangkan jaringan peer-to-peer jauh lebih tangguh terhadap serangan
Jika masalah ini terkait dengan sertifikat root di semua komputer yang diganti dengan CrowdStrike, sertifikat yang terdaftar di blockchain mungkin bisa menjadi solusi. Saya bukan ahli kriptografi, tapi kedengarannya masuk akal
Sebagai tambahan, justru ketika mendengar penjelasan Craig Wright tentang blockchain, whitepaper Bitcoin mulai cukup saya pahami. Ia mungkin bukan coder terbaik, tapi bukankah matematikawan tidak sepenuhnya tak berguna dalam keamanan?
Saya tidak ingin terdengar seperti teori konspirasi, tetapi rasanya masih terlalu dini untuk menyingkirkan niat jahat hanya dengan Hanlon's razor
Sebagian besar kesalahan tidak berskala global sekonyol ini. Ini terlihat seperti kesalahan terbesar sejauh ini, seperti Y2K yang tidak terjadi
CrowdStrike memiliki perilaku yang mengganti dengan nol sebuah berkas yang sedang dikirim lewat soket jaringan jika berkas itu cocok dengan signature malware
Jika berkas-berkas ini adalah berkas signature malware itu sendiri, tidak mengherankan bila ada kecocokan
Ini cocok dengan apa yang saya dengar dari seorang teman yang mengenal orang yang bekerja di CrowdStrike terkait bug ini
Bug tersebut telah bersembunyi di dalam driver kernel selama bertahun-tahun, lalu terpicu ketika data cacat masuk. Data itu ditambahkan pada tahap pascapemrosesan pembaruan konfigurasi, setelah pengujian tetapi sebelum disalin ke server pembaruan yang akan diambil klien
Konfigurasi pengujian CrowdStrike tampaknya baik-baik saja untuk data konfigurasi itu sendiri, tetapi tidak menangkap masalah sebelum masuk produksi. Karena yang diuji adalah hal yang salah
Jika mereka merilis analisis pascakejadian, saya berharap mereka mengakui masalah ini dan menjelaskan apa yang akan mereka lakukan untuk mencegah kegagalan proses yang berdampak global lainnya
Akhirnya ada penjelasan yang cukup masuk akal
Sysadmin yang kompeten sepertinya sekarang sudah mematikan fitur pembaruan otomatis dari Greenland sampai New Zealand, memblokirnya dengan firewall, dan menyusun rencana untuk mengeluarkan produk ini dari aset server secepat mungkin
Anggaran pemasaran produk pesaing tampaknya akan naik pada kuartal ini
CrowdStrike harus menghadapi sesuatu yang jauh lebih besar daripada sekadar “mengakui”
Meski kontraknya memuat “batasan tanggung jawab”, saya berharap ada investigasi serius, denda, dan tuntutan hukum
Skala kerusakan akibat insiden ini sulit dihitung, dan lebih besar lagi jika memasukkan waktu yang terbuang oleh perusahaan dan masyarakat umum. Misalnya, termasuk orang-orang yang hendak naik pesawat Kelalaian seperti ini harus ada harganya
Saya kira Windows mewajibkan semua modul kernel ditandatangani
Jika ini bukan sekadar kebocoran pengujian, melainkan ada beberapa salinan yang rusak, pertanyaannya bagaimana salinan itu bisa lolos verifikasi tanda tangan dan dimuat oleh kernel
Bisa jadi ini bukan isi file aslinya, melainkan hasil dari respons manual untuk menghentikan kerusakan
Mungkin ada yang berharap jika file yang salah ditimpa dengan file berukuran sama yang seluruhnya berisi 0, pembaruannya akan menjadi tidak berbahaya
Atau jika mengikuti hipotesis bahwa “QA dilewati karena kerentanan kritis”, penghentian distribusi patch sebenarnya bisa jadi upaya untuk mengurangi akses ke data asli dan memperlambat rekayasa balik kerentanan
Menurut penjelasan yang diunggah di papan teknologi 4chan, masalahnya terdiri dari dua tahap
Driver kernel bertanda tangan bernama CSAgent.sys mem-parsing file definisi virus CrowdStrike, dan tidak menangani dengan benar kasus ketika file definisi yang malformed memicu akses memori yang salah
Ada driver kernel bom waktu yang berjalan tanpa masalah selama berbulan-bulan bersama file definisi normal, lalu pada suatu titik webserver atau CDN yang menyediakan file definisi mulai menyajikan konten yang salah seperti file kosong, byte acak, atau file perangkat lunak lain
Penjelasannya, klien pembaruan mengunduhnya ke bawah C:\Windows\System32\drivers, lalu CSAgent.sys membacanya lagi dan mem-parsing-nya hingga masuk ke BSOD dan loop reboot dengan PAGE_FAULT_IN_NONPAGED_AREA
Katanya, jika melihat perbedaan antara CSAgent.sys_18511.sys dan CSAgent.sys_18513.sys, terlihat jejak perubahan pada pemeriksaan ukuran dan ukuran buffer agar file definisi yang salah di masa mendatang tidak menyebabkan crash
Terdengar seperti ada fitur perlindungan virus di server yang menyediakan file definisi yang memblokir pembacaan disk, lalu alih-alih mengeluarkan error, menyajikan data keluaran berisi 0
Kalau benar ada paket antivirus tertentu yang menjadi penyebabnya, itu akan cukup lucu
Jika hal seperti ini terjadi berkali-kali, bisa jadi ini serangan peretas yang menargetkan driver kernel yang ditulis dengan buruk
Terutama dalam konteks momen pemilu seperti sekarang dan perusahaan yang disukai Trump, ini juga bisa menjadi unjuk kekuatan
Dulu pernah ada perangkat lunak keamanan yang mengubah seluruh isi file menjadi 0 sehingga merusak kompilasi perangkat lunak
Saya tidak mengatakan kasus kali ini seperti itu, tetapi tetap saja tidak mengejutkan
Pada dasarnya, linker di Windows tidak bisa membuka file karena proses lain sedang menguncinya untuk pemindaian. Namun alih-alih mengeluarkan error, proses itu mengubah object code yang akan di-link menjadi 0
Orang-orang tidak bisa menemukan penyebabnya sampai membuka debugger dan baru melihat bahwa bongkahan besar object code telah diganti dengan 0
Saya sudah terlalu sering mengalami Visual Studio tidak bisa menulis ke file yang baru saja dikompilasi
Antivirus menangkap binary yang baru dibuat tepat pada saat mt.exe perlu menulisnya, sampai-sampai saya membuat wrapper mt.exe yang menambahkan retry. Build CI juga sering gagal secara acak karena ini
1 komentar
Komentar Hacker News
Untuk sistem yang berada di jalur kritis seperti ini, seharusnya tidak mungkin lolos dari pipeline CI yang benar
Saya bukan orang yang sangat ketat soal pengujian otomatis, tetapi untuk sistem sepenting ini, pengelolaan statusnya harus luar biasa baik
Seharusnya tidak boleh ada deployment produksi tanpa uji integrasi untuk semua lingkungan yang diklaim didukung, dan tidak masuk akal jika perusahaan sebesar dan sepenting ini bahkan tidak punya server staging atau pengujian pengembangan yang memvalidasi seluruh image yang didukung
Kalau begitu, masalah baru bisa muncul setelah melewati banyak pemeriksaan sebelum deployment. Saya tidak ingin buru-buru menyimpulkan bahwa mereka sama sekali tidak menguji ekspor ke Windows
Di antaranya pasti ada Windows default juga
Mungkin saja desainnya memang mengharuskan mesin tidak melakukan boot sepenuhnya sampai file dengan tanda tangan yang valid berhasil diunduh
Saya lebih cenderung bertaruh bahwa setelah sesuatu di-build dan lolos pengujian CI, sistem rusak pada tahap hilir saat file disalin untuk persiapan deployment. Namun saat ini semuanya hanya spekulasi
Terkait itu, rasanya bukan kebetulan bahwa dua bencana teknologi terbesar dalam sejarah (CrowdStrike dan peretasan SolarWinds beberapa tahun lalu) sama-sama berasal dari perangkat lunak keamanan yang lepas kendali
Menurut saya, orang-orang bergaya hacker yang ingin memulai perusahaan perangkat lunak keamanan kemungkinan besar paling tidak tertarik menerapkan bagian-bagian membosankan dari budaya yang berorientasi proses. Dalam kasus SolarWinds, terungkap bahwa budaya keamanan internal perusahaan itu mengerikan, dan untuk kejadian ini pun, ketika akar penyebabnya keluar, besar kemungkinan itu adalah proses deployment yang cepat dan longgar
Keamanan adalah budaya, bukan produk yang dibeli, dan harus ditanamkan sejak hari pertama melalui upaya aktif dan kerja keras. Tidak ada produk di pasar yang benar-benar menyediakan keamanan; yang ada hanya produk untuk dijadikan sasaran pelimpahan tanggung jawab saat masalah terjadi
Sebagian besar organisasi engineering pada masa awal bersifat remote/kerja dari rumah atau berada di Irvine, lalu seiring pertumbuhan mereka menambahkan kantor Sunnyvale, dan belakangan memindahkan kantor pusat resmi ke Austin, TX
Dalam beberapa tahun terakhir mereka juga memperluas operasi engineering di luar negeri, dan ini kemungkinan mencakup offshoring
Karena itu, jika terjadi kesalahan atau pelanggaran, dampaknya cenderung jauh lebih besar
Sepertinya masih ada lagi yang saya lupakan. Mungkin strukturnya mirip dengan masalah seleksi diri yang mengganggu industri ganja legal
Kebanyakan perangkat lunak lain tidak memerlukan akses serendah itu, dan kalau crash pun tidak ikut menjatuhkan seluruh sistem, serta bisa melakukan upgrade otomatis yang cepat
Kalau harus mencari sisi positif dari bencana ini, ada sedikit sekali harapan bahwa organisasi-organisasi akan memikirkan ulang akses tingkat kernel
Tidak bisa diasumsikan bahwa sembarang perusahaan game cukup kompeten untuk memakai perangkat lunak anti-cheat tingkat kernel
Meski begitu, karena ada perusahaan game di bawah Microsoft, kemungkinan besar mereka akan tetap menyediakan hook untuk game. Organisasi korporat tidak akan peduli sedikit pun dengan praktik anti-cheat Riot, karena mereka tidak memasang LoL di mesin kerja
Ini terlihat seperti berkas uji yang mungkin dicoba oleh QA sebagai percobaan kedua atau ketiga setelah berkas kosong dan berkas valid minimal. Tingkat ketidakmampuan menyeluruh yang tampak di sini benar-benar mengejutkan
Di pasar yang bersaing untuk memukau eksekutif non-teknis lewat presentasi, tidak mengherankan bahwa perusahaan yang kompeten secara teknis tidak punya keunggulan atas perusahaan yang tidak kompeten
Baru-baru ini saya membaca putusan Craig Wright https://www.judiciary.uk/judgments/copa-v-wright/, dan orang yang secara palsu mengaku sebagai Satoshi Nakamoto itu bahkan tidak memiliki kemampuan teknis dasar di bidang yang ia klaim sebagai keahlian kelas dunianya. Di kursi saksi, ia bahkan tidak tahu arti ‘unsigned’, dan sejak tahun 90-an tampaknya ia menipu orang lewat jargon, demo yang dimanipulasi, dan dokumen palsu sambil mengerjakan keamanan untuk perusahaan besar
Pendiri sekaligus CEO CrowdStrike, George Kurtz, adalah CTO di McAfee 14 tahun lalu ketika McAfee melakukan hal yang hampir sama: https://old.reddit.com/r/sysadmin/comments/1e78l0g/can_crowd... https://en.wikipedia.org/wiki/George_Kurtz
CrowdStrike sendiri juga menimbulkan masalah yang sama di Debian stable 3 bulan lalu: https://old.reddit.com/r/debian/comments/1c8db7l/linuximage6...
Mengerikan bahwa aturan kepatuhan PCI telah mendorong CrowdStrike dan antivirus masuk ke hampir seluruh infrastruktur TI saat ini
Tapi memang begitulah regulasi pemerintah
Tapi ini juga kegagalan Microsoft. Lebih luas lagi, ini satu lagi kegagalan industri
Berapa kali lagi hal seperti ini harus terulang sebelum terjadi reformasi industri yang memungkinkan kita membangun sistem aman dan andal yang sudah kita teliti selama 70 tahun? Rasanya seperti 1988 terulang lagi
Jika berada di satu tempat, ia menjadi target, sedangkan jaringan peer-to-peer jauh lebih tangguh terhadap serangan
Jika masalah ini terkait dengan sertifikat root di semua komputer yang diganti dengan CrowdStrike, sertifikat yang terdaftar di blockchain mungkin bisa menjadi solusi. Saya bukan ahli kriptografi, tapi kedengarannya masuk akal
Sebagai tambahan, justru ketika mendengar penjelasan Craig Wright tentang blockchain, whitepaper Bitcoin mulai cukup saya pahami. Ia mungkin bukan coder terbaik, tapi bukankah matematikawan tidak sepenuhnya tak berguna dalam keamanan?
Sebagian besar kesalahan tidak berskala global sekonyol ini. Ini terlihat seperti kesalahan terbesar sejauh ini, seperti Y2K yang tidak terjadi
Tulisan ini salah, dan karena tidak ada cara lain untuk menurunkannya dari halaman depan, saya menandainya
Fakta bahwa berkas berisi nol seluruhnya ditemukan di komputer yang rusak tidak berarti berkas itu sejak awal didistribusikan sebagai berkas berisi nol seluruhnya
https://x.com/craiu/status/1814339965347610863
https://x.com/cyb3rops/status/1814329155833516492
Jika berkas-berkas ini adalah berkas signature malware itu sendiri, tidak mengherankan bila ada kecocokan
Ini cocok dengan apa yang saya dengar dari seorang teman yang mengenal orang yang bekerja di CrowdStrike terkait bug ini
Bug tersebut telah bersembunyi di dalam driver kernel selama bertahun-tahun, lalu terpicu ketika data cacat masuk. Data itu ditambahkan pada tahap pascapemrosesan pembaruan konfigurasi, setelah pengujian tetapi sebelum disalin ke server pembaruan yang akan diambil klien
Konfigurasi pengujian CrowdStrike tampaknya baik-baik saja untuk data konfigurasi itu sendiri, tetapi tidak menangkap masalah sebelum masuk produksi. Karena yang diuji adalah hal yang salah
Jika mereka merilis analisis pascakejadian, saya berharap mereka mengakui masalah ini dan menjelaskan apa yang akan mereka lakukan untuk mencegah kegagalan proses yang berdampak global lainnya
Sysadmin yang kompeten sepertinya sekarang sudah mematikan fitur pembaruan otomatis dari Greenland sampai New Zealand, memblokirnya dengan firewall, dan menyusun rencana untuk mengeluarkan produk ini dari aset server secepat mungkin
Anggaran pemasaran produk pesaing tampaknya akan naik pada kuartal ini
Meski kontraknya memuat “batasan tanggung jawab”, saya berharap ada investigasi serius, denda, dan tuntutan hukum
Skala kerusakan akibat insiden ini sulit dihitung, dan lebih besar lagi jika memasukkan waktu yang terbuang oleh perusahaan dan masyarakat umum. Misalnya, termasuk orang-orang yang hendak naik pesawat
Kelalaian seperti ini harus ada harganya
Ada klaim di Mastodon bahwa file yang diterima Kevin Beaumont berbeda untuk tiap pelanggan
https://cyberplace.social/@GossiTheDog/112812454405913406
Cukup gulir sedikit ke bawah
Jika ini bukan sekadar kebocoran pengujian, melainkan ada beberapa salinan yang rusak, pertanyaannya bagaimana salinan itu bisa lolos verifikasi tanda tangan dan dimuat oleh kernel
Bisa jadi ini bukan isi file aslinya, melainkan hasil dari respons manual untuk menghentikan kerusakan
Mungkin ada yang berharap jika file yang salah ditimpa dengan file berukuran sama yang seluruhnya berisi 0, pembaruannya akan menjadi tidak berbahaya
Atau jika mengikuti hipotesis bahwa “QA dilewati karena kerentanan kritis”, penghentian distribusi patch sebenarnya bisa jadi upaya untuk mengurangi akses ke data asli dan memperlambat rekayasa balik kerentanan
Menurut penjelasan yang diunggah di papan teknologi 4chan, masalahnya terdiri dari dua tahap
Driver kernel bertanda tangan bernama CSAgent.sys mem-parsing file definisi virus CrowdStrike, dan tidak menangani dengan benar kasus ketika file definisi yang malformed memicu akses memori yang salah
Ada driver kernel bom waktu yang berjalan tanpa masalah selama berbulan-bulan bersama file definisi normal, lalu pada suatu titik webserver atau CDN yang menyediakan file definisi mulai menyajikan konten yang salah seperti file kosong, byte acak, atau file perangkat lunak lain
Penjelasannya, klien pembaruan mengunduhnya ke bawah C:\Windows\System32\drivers, lalu CSAgent.sys membacanya lagi dan mem-parsing-nya hingga masuk ke BSOD dan loop reboot dengan PAGE_FAULT_IN_NONPAGED_AREA
Katanya, jika melihat perbedaan antara CSAgent.sys_18511.sys dan CSAgent.sys_18513.sys, terlihat jejak perubahan pada pemeriksaan ukuran dan ukuran buffer agar file definisi yang salah di masa mendatang tidak menyebabkan crash
Kalau benar ada paket antivirus tertentu yang menjadi penyebabnya, itu akan cukup lucu
Terutama dalam konteks momen pemilu seperti sekarang dan perusahaan yang disukai Trump, ini juga bisa menjadi unjuk kekuatan
Dulu pernah ada perangkat lunak keamanan yang mengubah seluruh isi file menjadi 0 sehingga merusak kompilasi perangkat lunak
Saya tidak mengatakan kasus kali ini seperti itu, tetapi tetap saja tidak mengejutkan
Pada dasarnya, linker di Windows tidak bisa membuka file karena proses lain sedang menguncinya untuk pemindaian. Namun alih-alih mengeluarkan error, proses itu mengubah object code yang akan di-link menjadi 0
Orang-orang tidak bisa menemukan penyebabnya sampai membuka debugger dan baru melihat bahwa bongkahan besar object code telah diganti dengan 0
Antivirus menangkap binary yang baru dibuat tepat pada saat mt.exe perlu menulisnya, sampai-sampai saya membuat wrapper mt.exe yang menambahkan retry. Build CI juga sering gagal secara acak karena ini