Malware yang menyematkan karakter null dalam kodenya dapat melewati pemindaian keamanan yang dilakukan oleh Anti-Malware Scan Interface (AMSI) pada Windows 10.
Microsoft telah memperbaiki kerentanan ini minggu lalu saat merilis pembaruan keamanan February 2018 Patch Tuesday.
Kerentanan mempengaruhi fitur keamanan AMSI Windows 10
Kerentanannya berada pada Anti-Malware Scan Interface (AMSI), fitur keamanan generik yang bertindak sebagai perantara antara aplikasi dan mesin antivirus lokal.
AMSI memungkinkan sebuah aplikasi mengirim file yang akan dipindai oleh perangkat lunak keamanan dan mengembalikan hasilnya. AMSI diperkenalkan dengan Windows 10 dan merupakan vendor agnostik, artinya secara otomatis akan mengirimkan file ke mesin AV AMSI yang kompatibel di PC lokal, bukan hanya Windows Defender bawaan.
Sementara AMSI dapat digunakan untuk memindai semua jenis file, Microsoft secara khusus mengembangkan AMSI untuk membantu memeriksa skrip yang dipanggil pada saat runtime, seperti PowerShell, VBScript, Ruby, dan lainnya, yang telah menjadi metode yang disukai untuk menghindari deteksi pada komputer yang menggunakan tanda tangan klasik- berbasis antivirus engine.
Dengan kata lain, AMSI bertindak sebagai pemindai pasca eksekusi untuk memeriksa sumber daya tambahan yang dimuat atau dipicu oleh file yang dieksekusi.
Peneliti keamanan berbasis di Vancouver, Satoshi Tanda telah menemukan bahwa bug di AMSI ini berhenti memindai sampai karakter null.
Ini berarti AMSI akan memindai file sampai karakter null dan membiarkan sisanya. Seorang penyerang hanya harus menyembunyikan perintah berbahaya di balik karakter null untuk melewati pemeriksaan AMSI.
“Secara teori, tidak ada tindakan selain penerapan patch yang harus dilakukan,” kata Tanda. “Namun, vendor perangkat lunak yang menggunakan AMSI untuk memindai konten PowerShell harus meninjau apakah ia dapat menangani karakter null dengan benar jika karakter null muncul.”
Tanda merekomendasikan bahwa mesin antivirus juga menguji perangkat lunak mereka sendiri untuk memastikan mesin pemindai mereka sendiri tidak memotong pemindaian terhadap file yang menyertakan karakter null.