Sebuah tool exploitasi berbasis COM hijacking baru-baru ini menarik perhatian komunitas keamanan siber setelah dirilis secara terbuka di GitHub. Tool yang diberi nama COMLoaderAstharot ini dirancang untuk melakukan persistensi dan eksekusi kode melalui teknik COM (Component Object Model) hijacking yang menyasar browser populer, yaitu Google Chrome dan Microsoft Edge. Yang membuat tool ini menonjol dari berbagai implementasi COM hijack lainnya adalah penggunaan mekanisme callback yang sangat tidak biasa dan pendekatan anti-deteksi yang cukup canggih untuk sebuah tool berukuran kecil.
COMLoaderAstharot dikembangkan dalam bahasa C++ dengan komposisi sekitar 87.5% C++ dan 12.5% C, yang menunjukkan penggunaan fitur-fitur tingkat rendah yang intensif dalam implementasinya. Tool ini beroperasi dengan cara mendaftarkan dan memanipulasi CLSID (Class Identifier) `{9FC8E510-A27C-4B3B-B9A3-BF65F00256A8}`, sebuah Class ID yang secara spesifik terkait dengan komponen browser. Dengan meng-hijack registry entry untuk CLSID ini, pelaku dapat memastikan bahwa setiap kali browser target dijalankan, kode jahat ikut dimuat dan dieksekusi secara otomatis dalam konteks proses browser.
Salah satu aspek paling menarik dari COMLoaderAstharot adalah penggunaan fungsi LdrCallEnclave sebagai mekanisme callback-nya. Dalam ekosistem COM hijacking konvensional, callback biasanya diregistrasikan melalui fungsi-fungsi seperti DllGetClassObject, DllCanUnloadNow, atau melalui apartment threading model yang sudah umum. Penggunaan LdrCallEnclave sangat jarang ditemukan dalam literatur exploit development karena fungsi ini secara asal ditujukan untuk managed code execution dalam Windows Enclave — sebuah fitur keamanan yang dirancang untuk menjalankan code dalam lingkungan terisolasi. Dengan memanfaatkan fungsi ini untuk tujuan yang tidak diawasi, tool ini berhasil melewati beberapa pendekatan deteksi yang berbasis pada pola pemanggilan COM tradisional.
Penggunaan LdrCallEnclave memiliki beberapa keunggulan strategis dari sudut pandang evasion. Pertama, sebagian besar solusi Endpoint Detection and Response (EDR) memiliki ruleset yang sangat lengkap untuk memantau pemanggilan fungsi COM dan callback terkait, namun pemantauan terhadap LdrCallEnclave dalam konteks COM loading masih relatif minim. Kedua, fungsi ini beroperasi pada level loader Windows (ntdll), yang berarti eksekusinya terjadi sebelum banyak mekanisme hooking user-mode EDR sempurna menangkap aktivitasnya. Ketiga, penggunaan enclave ini menciptakan semacam “jalan belakang” yang membingungkan analisis berbasis alur kontrol fungsi konvensional.
Selain teknik callback yang unik, COMLoaderAstharot juga mengimplementasikan pendekatan sinkronisasi proses yang tidak konvensional dengan menggunakan event objects alih-alih mutex. Dalam kebanyakan malware berbasis COM, mutex digunakan sebagai mekanisme tunggal untuk memastikan hanya satu instance yang berjalan, sekaligus berfungsi sebagai indicator of compromise (IoC) bagi solusi keamanan. Mutex memiliki nama yang sering kali mudah dideteksi dan diprediksi oleh scanner malware. Sebaliknya, event objects menawarkan perilaku sinkronisasi yang serupa namun dengan karakteristik yang kurang dipantau oleh kebanyakan produk keamanan. Penggunaan event objects juga memungkinkan kontrol alur yang lebih halus terhadap kapan callback dipicu dan bagaimana respons dikirim balik.
Dari sisi eksekusi, COMLoaderAstharot dirancang untuk berjalan dalam dua mode: sebagai executable (.exe) mandiri atau sebagai DLL yang dimuat melalui mekanisme COM. Penulis tool ini secara terbuka menyebutkan bahwa ketika berjalan sebagai DLL, deteksi oleh produk antivirus komersial jauh lebih tinggi dibandingkan saat berjalan sebagai executable. Hal ini disebabkan karena Windows Defender dan antivirus lainnya memiliki heuristik khusus yang lebih agresif terhadap DLL yang dimuat secara tidak wajar, terutama dari lokasi registrasi COM. Sebagai executable, tool ini lebih mudah melewati filter karena dapat mengontrol seluruh lifecycle eksekusinya sendiri, termasuk memuat modul-modul yang diperlukan secara lebih organik.
Penggunaan library Windows HTTP (winhttp) alih-alih Internet Open (wininet) juga merupakan keputusan desain yang disengaja untuk menghindari deteksi. Wininet dikenal sebagai library yang lebih tinggi levelnya dan sering menjadi target pemantauan oleh EDR maupun firewall berbasis host karena library ini secara historis digunakan oleh banyak malware untuk komunikasi Command and Control (C2). Winhttp, di sisi lain, beroperasi pada level yang lebih rendah dan memiliki karakteristik traffic yang lebih sulit dibedakan dari aktivitas jaringan normal browser. Dalam konteks COMLoaderAstharot, penggunaan winhttp memungkinkan tool ini melakukan download dan komunikasi jaringan dengan footprint yang jauh lebih kecil.
Menariknya, fitur download function pada versi terbaru COMLoaderAstharot sementara ini dikomentari (commented out) dalam kode sumber. Ini menunjukkan bahwa tool ini sedang dalam tahap pengembangan aktif dan penulisnya mungkin sedang menyesuaikan mekanisme download agar lebih tahan terhadap deteksi. Dalam kondisi saat ini, tool ini berfungsi sebagai loader persistensi — ia memastikan bahwa kode yang sudah ditentukan sebelumnya akan dieksekusi setiap kali browser target dijalankan. Untuk memuat payload tambahan dari remote, tool ini kemungkinan besar akan membutuhkan komponen pendamping atau akan diaktifkan kembali dalam versi masa depan.
Dari sisi stabilitas, penulis COMLoaderAstharot melaporkan bahwa tool ini telah beroperasi selama lebih dari 6 bulan tanpa crash atau masalah kestabilan yang signifikan. Angka ini cukup mengesankan untuk sebuah implementasi COM hijack, yang secara tradisional dikenal rentan terhadap crash terutama ketika browser melakukan pembaruan atau perubahan pada komponen COM internalnya. Kestabilan ini kemungkinan besar disebabkan oleh penggunaan CLSID yang tepat dan pendekatan callback yang tidak memaksa loading modul ke dalam address space browser dengan cara yang agresif.
Dari perspektif analisis kode, COMLoaderAstharot merupakan proyek yang relatif kecil namun terstruktur dengan baik. Ukurannya yang compact memudahkan modifikasi dan integrasi ke dalam payload chain yang lebih besar. arsitektur modularnya memisahkan komponen COM registration, callback execution, dan sinkronisasi proses ke dalam unit-unit yang terpisah, sehingga memudahkan penyesuaian untuk target CLSID lain atau mekanisme callback tambahan. Struktur seperti ini sangat diinginkan dalam workflow operator APT atau red team yang membutuhkan tool yang mudah dimodifikasi untuk berbagai scenarion operasional.
Dalam konteks ancaman siber di Indonesia, COM hijacking merupakan teknik yang sangat relevan dan sering diabaikan dalam postur keamanan banyak organisasi. Banyak tim IT hanya memantau autostart registry keys yang konvensional seperti HKCU\Software\Microsoft\Windows\CurrentVersion\Run namun mengabaikan registrasi COM di HKCR\CLSID dan HKCU\Software\Classes. COM hijacking memungkinkan persistensi yang sepenuhnya tersembunyi dari pengguna biasa dan bahkan dari administrator sistem yang tidak memiliki pemahaman mendalam tentang Windows COM. Ini menjadikan tekik ini sangat menarik bagi aktor ancaman yang menginginkan persistensi jangka panjang dengan jejak minimal.
Tujuan utama COMLoaderAstharot dalam menarget Chrome dan Edge juga menunjukkan pemahaman yang baik tentang behavior user di lingkungan korporat dan individu. Chrome menguasai lebih dari 65% pangsa pasar browser global, sementara Edge menjadi browser default di Windows 10 dan 11. Dengan menarget kedua browser ini, penyerang memastikan bahwa kompromi tetap aktif setiap kali korban melakukan aktivitas browsing sehari-hari. Lebih kritis lagi, karena browser berjalan dengan privilege user yang sama, payload yang dieksekusi dalam konteks browser otomatis mendapatkan akses ke credential, session token, dan data browsing yang tersimpan — termasuk password manager yang berintegrasi dengan browser.
Analisa Retasan
COMLoaderAstharot mewakili evolusi signifikan dalam teknik COM hijacking. Penggunaan
LdrCallEnclavesebagai callback mechanism adalah inovasi yang benar-benar menarik karena memanfaatkan fitur Windows yang jarang dipantau dalam konteks keamanan. Dari sudut pandang pertahanan, ini berarti tim keamanan perlu memperluas visibility mereka melampaui pemantauan COM callback konvensional dan mulai memasukkanLdrCallEnclaveke dalam ruleset EDR mereka. Tantangannya adalah bahwa fitur ini juga digunakan oleh beberapa software legitimate, sehingga false positive harus dikelola dengan hati-hati.Penggunaan event objects alih-alih mutex sebagai mekanisme sinkronisasi juga mengonfirmasi tren yang sudah berlangsung: aktor ancaman semakin meninggalkan pola-pola tradisional yang mudah dideteksi dan beralih ke primitive Windows yang kurang dipantau. Solusi keamanan perlu berevolusi dari pendekatan signature-based ke behavioral analysis yang lebih dinamis. Dalam konteks Indonesia, banyak organisasi masih bergantung pada antivirus konvensional tanpa EDR yang memadai, yang berarti COM hijack seperti ini kemungkinan besar akan lolos dari deteksi sepenuhnya.
Rekomendasi praktis untuk tim keamanan di Indonesia: pertama, lakukan audit pada registry COM untuk semua workstation dan server, khususnya pada CLSID yang terkait dengan browser. Kedua, implementasikan AppLocker atau WDAC (Windows Defender Application Control) untuk membatasi loading DLL dari lokasi yang tidak terverifikasi. Ketiga, pastikan EDR yang digunakan memiliki capability untuk memantau anomali pada
LdrCallEnclavedan modul ntdll lainnya. Keempat, implementasikan logging terhadap perubahan pada registry COM di seluruh endpoint menggunakan Group Policy atau tool manajemen endpoint. Pencegahan selalu lebih efektif daripada respons setelah kompromi terjadi.
Sumber: GitHub – COMLoaderAstharot | Repo: Astharot15/COMLoaderAstharot | Bahasa: C++ / C | Stars: 24