CVE-2026-41091 & CVE-2026-45498: Analisis Teknis Link Following LPE dan DoS di Microsoft Defender - Ethical Hacking Indonesia

Ethical Hacking Indonesia Mei 21, 2026
Microsoft Windows Defender Vulnerability - Ethical Hacking Indonesia

Advisory Microsoft menyebut root cause CVE-2026-41091 sebagai "improper link resolution before file access" kategori CWE yang dikenal sebagai link following. mpengine.dll Microsoft Malware Protection Engine berjalan dengan privilege SYSTEM. Setiap kali engine ini mengakses file untuk discan, operasi tersebut terjadi dalam konteks SYSTEM. Kalau ada jeda antara resolusi path dan akses file aktual, dan jeda itu bisa dimanfaatkan attacker untuk mengganti target path dengan symlink atau junction, maka file yang diakses oleh proses SYSTEM bukan lagi file yang dimaksud.

Pattern ini check-use gap atau lebih spesifiknya TOCTOU (Time-of-Check to Time-of-Use) pada resolusi symlink adalah mekanisme yang mendasari hampir semua LPE berbasis link following di Windows. Bedanya dengan platform lain: Windows punya beberapa jenis "link" yang relevan disini symbolic link, junction (directory junction), mount point, dan hard link masing-masing punya semantik resolusi berbeda di kernel, dan tidak semua AV engine memperlakukan semua jenis ini dengan benar.

attack surface spesifik: engine antivirus secara desain harus mengakses file yang dikirim atau dipicu oleh user-mode. Drop file ke direktori tertentu, trigger scan, dan proses SYSTEM akan membaca file tersebut. Kalau di antara dua momen itu attacker bisa memasang symlink yang mengarah ke target file sensitif misalnya binary system atau file konfigurasi dengan permission restricted maka operasi baca/tulis engine tadi sekarang berlaku ke target tersebut.

Attack Surface: Trigger Scan, Kontrol Path.

Satu pertanyaan pertama saat melihat LPE di AV engine: seberapa banyak kontrol yang punya attacker local atas apa yang discan?

Di Windows, Defender berjalan secara real-time. File apa pun yang di-write ke disk akan dipicu scan-nya secara otomatis. User standard (tanpa admin privilege) bisa write ke sejumlah lokasi: direktori temp user, direktori AppData, atau lokasi yang bisa diakses melalui hardlink dari file yang bisa di-write.

Race condition selalu terdengar sulit, tapi di Windows ada beberapa teknik untuk memperlambat atau mendelay operasi file untuk memperbesar potensi windows race. OpLock (opportunistic locks), event-based synchronization, bahkan teknik NtSetInformationFile tertentu yang bisa delay close handle. Untuk CVE-2026-41091 spesifik, detail teknis lengkap belum dirilis publik. Tapi mengingat lima peneliti berbeda melaporkan ini secara terpisah, kemungkinan ada lebih dari satu primitive atau lebih dari satu code path yang vulnerable.

mpengine.dll dan Antimalware Platform: Dua Komponen, Dua CVE

Penting untuk memisahkan dua komponen ini karena Microsoft mempatchnya di versi berbeda:

Microsoft Malware Protection Engine (mpengine.dll) bertanggung jawab untuk scanning, detection, dan cleaning. Ini adalah komponen yang terdampak CVE-2026-41091 (LPE) dan CVE-2026-45584 (RCE terpisah yang tidak masuk KEV tapi dipatch bersamaan). Fix ada di versi 1.1.26040.8.

Microsoft Defender Antimalware Platform koleksi user-mode binary dan kernel-mode driver yang menjadi "wadah" di mana engine berjalan. CVE-2026-45498 (DoS) ada di layer ini, bukan di engine parsing. 

Pemisahan ini relevan secara teknis karena attack surface-nya berbeda. DoS di Platform layer bisa berarti attacker bisa membuat Defender berhenti berfungsi tanpa menyentuh engine sama sekali mematikan perlindungan sebagai precondition sebelum mengeksekusi payload yang seharusnya terdeteksi. Kalau kedua CVE ini dipakai bersama dalam satu chain: DoS dulu untuk mengganggu Defender, kemudian LPE untuk eskalasi. Belum ada konfirmasi publik bahwa keduanya dipakai bersamaan, tapi threat model-nya bisa kita susun seperti itu sebgai asumsi.

Konteks Historis dari KEV (Known Exploited Vulnerabilities Catalog)

CISA menambahkan dua CVE baru tadi bersamaan dengan empat CVE lama yang masuk KEV dan ini bagian yang perlu diperhatikan:

CVE-2008-4250 - buffer overflow di Windows Server Service (NetAPI32.dll) via crafted RPC request. vulnerability yang sama yang dieksploitasi oleh MS08-067, prekursor teknis Conficker worm. 

CVE-2009-1537 - NULL byte overwrite di QuickTime Movie Parser (quartz.dll). Parser media di Windows yang menerima input dari file yang dibuat attacker, dengan bug overwrite yang cukup untuk corrupt memory structure.

CVE-2010-0806 dan CVE-2010-0249 — keduanya use-after-free di Internet Explorer. CVE-2010-0249 adalah "Aurora" atau dikenal sebagai operasi aurora exploit yang dipakai dalam serangan terhadap Google dan perusahaan teknologi besar lainnya pada 2010. Mekanismenya: objek di-free, pointer ke object tersebut tetap disimpan di suatu lokasi, kemudian pointer itu diakses kembali saat object sudah tidak valid. Allocator heap pada titik itu mungkin sudah re-use memori tersebut dengan data yang dikontrol attacker.

CVE-2009-3459 - heap-based buffer overflow di Adobe Reader saat parsing PDF. Ini adalah kategori yang berbeda: parser file yang menerima dokumen dari luar, dengan bug di path parsing yang memungkinkan overflow ke heap, corrupt adjacent allocation, dan eksekusi arbitrary code.

Semua ini masuk KEV sekarang bukan karena ditemukan baru-baru ini, tapi karena ada evidence aktif bahwa ada infrastruktur yang masih menjalankan software versi tersebut dan sedang dieksploitasi. Setiap kali infrastructure lama diekspos kembali ke internet karena migrasi, reuse image, atau konsolidasi sistem vulnerability 15 tahun yang lalu menjadi current threat.

Primitive Exploit: Kenapa "Link Following" Bisa Berkembang Jauh

Dari sudut pandang primitive: link following memberikan write-what-where yang tidak langsung. Engine membuka file tapi file itu sekarang adalah target yang dikontrol attacker. Tergantung operasi apa yang dilakukan engine setelah buka file:

  • Kalau engine membaca file dan kemudian menulis output ke path lain, attacker mungkin bisa pengaruhi output path dengan cara serupa
  • Kalau engine menulis ke file misalnya cleaning/quarantine yang memodifikasi konten maka write tersebut bisa diarahkan ke binary system atau file konfigurasi
  • Kalau engine men-delete atau me-rename file sebagai bagian dari remediation, itu bisa menjadi primitive delete-arbitrary-file, yang di Windows sudah cukup untuk LPE di banyak skenario (lihat teknik PrintSpoofer/EfsPotato family yang bergantung pada delete primitif)
SYSTEM-level file operations yang bisa dikontrol user bisa jadi sangat banyak jalur LPE di Windows, karena ada banyak lokasi di mana delete atau write dari SYSTEM bisa dikonversi ke code execution. 

CVE-2026-41091 sebagai post-exploitation step kalau sudah punya foothold sebagai low-privilege user, ini adalah path ke SYSTEM tanpa perlu kernel exploit. Windows AV sebagai LPE vector adalah teknik yang sudah ada di playbook (lihat penelitian serupa terhadap Trend Micro, Avast, dan produk AV lain tahun-tahun sebelumnya). Verifikasi versi engine dengan Get-MpComputerStatus | Select-Object AMEngineVersion sebelum asumsi bahwa sistem sudah ter-patch.


Benediktus Sava – Security Researcher
 

Share this

Add Comments


EmoticonEmoticon