SHub Reaper infostealer variant ini merubah cara penyamarannya di setiap stage infection chain: payload di-host di typo-squatted Microsoft domain, dieksekusi dengan membuatnya seolah Apple security update, lalu persist dari direktori palsu Google Software Update. Tiga brand berbeda, satu execution chain. Ini merupakan teknik atau desain sserangan yang dibuat dengan alasan menghindari fitur keamanan atau asumsi keamanan pada target.
Sebelum ada payload di drop ke target, ada recon layer di sisi web. Halaman delivery mengumpulkan informasi sistem, WebGL data, indikator VPN, browser extension yang terpasang, dan tanda-tanda virtual machine atau security research tool. Script-nya juga mencari password manager 1Password, Bitwarden, LastPass dan cryptocurrency wallet extension seperti MetaMask dan Phantom. Teknik ini sudah sangat umum dilakukan oleh penyerang di masa modern karena menghindari deteksi dini sebelum merancang titi serang yang tepat.
Operator ingin tahu profil target sebelum commit mengirimkan payload yang identifiable. Kalau WebGL menunjukkan VM signature, atau ada extension analysis tool, halaman bisa ganti konten beberapa halaman mengganti konten mereka dengan pesan "Access Denied" dalam bahasa Rusia setelah mendeteksi upaya analisis. Ada juga geofencing, salah satu pengecekan pertama loader adalah melihat apakah keyboard dengan bahasa Rusia terpasang di macOS. Jika ditemukan, malware mengirim event cis_blocked ke server attacker dan keluar tanpa melakukan apapun. Ini adalah pola umum di malware untuk hindari infeksi di wilayah CIS untuk meminimalkan risiko dari penegak hukum setempat.
Initial Access: ClickFix ke applescript:// Pivot
Versi SHub sebelumnya mengarahkan korban untuk paste command ke Terminal. Reaper menggeser proses itu ke Script Editor melalui URL scheme applescript://. Pergeseran ini membantu bypass beberapa proteksi yang Apple tambahkan di macOS Tahoe 26.4 untuk Terminal-based attack chain. Ini poin teknis yang penting. Terminal sudah lebih sering dijadikan target deteksi EDR tools mulai memantau process Terminal, spawned process dari bash, dan outbound connection dari context Terminal.
Script Editor adalah attack surface yang lebih jarang dimonitor, dan applescript:// URL scheme adalah cara legitimate untuk membuka script di Script Editor secara programatik. Attacker tidak memanfaatkan bug baru mereka menggunakan legitimate API macOS untuk masuk melalui jalur yang lebih sedikit dipantau. Setelah korban klik "Run" di Script Editor, malware menampilkan Apple XProtectRemediator security update sementara command tersembunyi dieksekusi di background. Tahap selanjutnya meminta password macOS dari pengguna dan mengambil credential tersebut selama eksekusi. Korban kemudian melihat fake compatibility error yang dirancang untuk mengurangi kecurigaan, dan mengalihkan perhatian.
Password login itu berharga karena membuka macOS Keychain sistem penyimpanan terenkripsi Apple untuk password, Wi-Fi credential, app token, dan private key. Tanpa login password, database Keychain hanya data terenkripsi, tetapi dengan password tersebut, kontennya bisa didekripsi dan dibaca.
Collection: Scope Harvesting dan Chromium Wallet Profiling
Setelah eksekusi berhasil dan password diperoleh, collection phase berjalan secara sistematis. SHub menyasar 14 browser berbasis Chromium Chrome, Brave, Edge, Opera, OperaGX, Vivaldi, Arc, Sidekick, Orion, Coccoc, Chrome Canary, Chrome Dev, Chrome Beta, dan Chromium mencuri saved password, cookie, dan autofill data dari setiap profil yang ditemukan. Firefox mendapat perlakuan yang sama untuk credential yang tersimpan. SHub memiliki tabel besar extension ID wallet, dan yang lebih signifikan, setiap wallet diasosiasikan dengan tiga flag per-wallet yang mengontrol apa yang dikumpulkan. Ini jauh lebih advanced dibanding pendekatan "copy extension folder" flat yang digunakan MacSync, dan mengimplikasikan bahwa penulisnya sudah mem-profile bagaimana extension wallet berbeda mempersist secrets dan state mereka.
Di luar wallet dan browser, SHub juga mengambil direktori macOS Keychain, data akun iCloud, Safari cookie dan browsing data, database Apple Notes, dan session file Telegram informasi yang bisa memungkinkan attacker untuk membajak akun tanpa mengetahui password. SHub juga menyalin shell history file (.zsh_history dan .bash_history) dan .gitconfig, yang sering berisi API key atau authentication token yang digunakan developer.
Untuk exfiltration, file yang dikumpulkan di-stage di /tmp/shub_<random>/, lalu script mengecek apakah direktori melebihi 85MB. Jika iya, Reaper membuat Bash script di /tmp/shub_split.sh untuk membagi archive menjadi chunk ZIP 70MB dan mengupload-nya secara sekuensial ke C2 di hebsbsbzjsjshduxbs[.]xyz/gate/chunk via curl. Chunked upload bukan hanya soal ukuran file upload besar satu kali lebih mudah di-flag oleh DLP atau network monitoring dibanding serangkaian transfer sedang yang terlihat seperti backup traffic biasa, karena dengan mengirim jumlah file berukuran kecil membuat susah untuk di deteksi.
Wallet Backdoor: Persistence di Level Aplikasi
Di sinilah SHub secara signifikan melampaui kebanyakan macOS infostealer, mayoritas stealer adalah smash-and-grab: eksekusi sekali, ambil semua, selesai. SHub juga melakukan itu, tapi kemudian melangkah lebih jauh. Jika menemukan wallet Electron-based tertentu terinstall, malware diam-diam mengganti file app.asar core logic aplikasi dengan versi yang dimodifikasi dari C2, mematikan process aktif, menimpa file asli, membersihkan signature, dan menandatangani ulang app bundle agar macOS menerima modifikasi tersebut.
Detail implementasi per wallet cukup spesifik: build Exodus dan Atomic Wallet yang dimodifikasi mengeksfiltrasi password dan seed phrase ke wallets-gate[.]io/api/injection setiap kali wallet dibuka; versi backdoored Ledger Wallet dan Ledger Live mematikan TLS check dan menampilkan fake recovery wizard yang mencuri seed phrase; Trezor Suite variants menampilkan fake "critical update" overlay, menangkap phrase tersebut, dan menonaktifkan update untuk mempertahankan build berbahaya.Untuk bypass Gatekeeper, script membersihkan quarantine attribute dengan xattr -cr dan menggunakan ad hoc code signing pada modified application bundle.
Ini adalah persistence yang tidak bergantung pada LaunchAgent atau cron job persistence-nya ada di dalam aplikasi yang korban jalankan sendiri secara rutin. Setiap kali korban membuka wallet, credential keluar. Dan karena app bundle sudah re-signed dengan ad hoc signature, macOS tidak complaint kecuali ada explicit trust pinning ke certificate aslinya.
Persistence dan C2 Backdoor
Sebelum terminasi, AppleScript membuat struktur direktori yang meniru Google Software Update: ~/Library/Application Support/Google/GoogleUpdate.app/Contents/MacOS/. Sebuah bash script bernama GoogleUpdate yang di-decode dari Base64 ditempatkan di direktori ini dan didaftarkan menggunakan LaunchAgent property list bernama com.google.keystone.agent.plist.
Pemilihan namespace ini tidak random. com.google.keystone adalah nama yang sangat dikenal ini adalah Keystone updater milik Google yang ter-install di hampir semua macOS machine yang pernah punya Chrome. Kalau kamu scroll manual melalui ~/Library/LaunchAgents/ tanpa tahu pasti apa yang kamu cari, entry ini tidak terlihat sebagai program yang di rancang dengan fungsi yang bisa merugikan pengguna.
LaunchAgent menjalankan script GoogleUpdate setiap 60 detik. Script ini berfungsi sebagai beacon, mengirim detail sistem ke endpoint /api/bot/heartbeat di C2. Jika server mengembalikan payload "code", script mendekodenya, menulis ke file tersembunyi /tmp/.c.sh, mengeksekusinya dengan privilege user saat ini, lalu menghapus file tersebut.
Pola write-execute-delete di /tmp adalah cara klasik untuk menjalankan arbitrary command tanpa meninggalkan file executable permanen yang bisa di-scan. File .c.sh hanya ada selama eksekusi, dan karena di /tmp yang tidak persistent, bahkan restart pun tidak akan meninggalkan artefak.
Pentester: applescript:// sebagai delivery vector adalah sesuatu yang worth dimasukkan ke dalam macOS social engineering playbook. Terminal-based ClickFix sudah mulai dikenal dan di-flag oleh EDR tools yang lebih baru script Editor via URL scheme adalah pivot yang lebih quiet. Testing endpoint protection terhadap AppleScript execution dari context non-Terminal penting untuk memvalidasi coverage.
Developer: .gitconfig dan shell history masuk dalam target collection SHub. API key yang pernah di-paste ke terminal atau disimpan di gitconfig adalah exposed. Rotasi credential setelah incident, dan audit file-file tersebut di mesin development yang diduga ter-compromise, harus masuk ke incident response checklist macOS.
Detection engineer: Ada beberapa sinyal behavioral yang worth dimonitor: unexpected AppleScript atau osascript activity, suspicious outbound traffic setelah Script Editor execution, atau pembuatan LaunchAgent atau file terkait di namespace yang berasosiasi dengan trusted vendor. Secara spesifik, com.google.keystone.agent.plist yang tidak diinstall oleh Chrome atau Google software itu sendiri adalah anomaly yang jelas. Di sisi network, chunked POST ke domain random dengan path /gate/chunk dari context curl yang dijalankan oleh script adalah sinyal yang bisa di-correlate dengan data exfiltration.
Baca Juga Tentang: CryptoStealer Malware Openclaw ClickFix Extention Backdoor
Benediktus Sava – Security Researcher
Sumber: SentinelOne Appleinsider Malwarebytes

.png)

.png)
.png)
.png)
.png)