[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fqy78I2cOfQ0mDn5Z6GrnDCAkj0o8FmwQ6NjgEKD2d7A":3},{"article":4,"iocs":48},{"id":5,"title":6,"slug":7,"summary":8,"ai_summary":9,"brief":10,"full_text":11,"url":12,"image_url":13,"published_at":14,"ingested_at":15,"relevance_score":16,"entities":17,"category_id":30,"category":31,"article_tags":35},"de2848ca-4470-4ca0-b711-d3c73f0d1dcd","Microsoft Warns of Photo ZIP Phishing Campaign Targeting Hotels with Node.js Implant","microsoft-warns-of-photo-zip-phishing-campaign-targeting-hotels-with-node-js-imp-f18383","An active phishing campaign has been targeting hotel and other hospitality organizations across Europe and Asia since April 2026, using photo-themed ZIP files to drop a Node.js implant and dig into front-desk machines, Microsoft says. The company has not attributed the activity to a known threat actor, and the operators' end goal is still unclear. The lure plays to how hotels work.","A phishing campaign, active since April 2026, is targeting hotels in Europe and Asia with photo-themed ZIP files. These files deliver a Node.js implant, tracked as TonRAT, which uses the TON blockchain for C2 communication. Microsoft has not attributed the campaign to a specific threat actor, and the ultimate goal remains unclear, though it appears to focus on front-desk systems.","Phishing campaign uses photo ZIPs to drop Node.js implant on hotel systems.","Microsoft Warns of Photo ZIP Phishing Campaign Targeting Hotels with Node.js Implant Swati KhandelwalJun 26, 2026Phishing \u002F Malware An active phishing campaign has been targeting hotel and other hospitality organizations across Europe and Asia since April 2026, using photo-themed ZIP files to drop a Node.js implant and dig into front-desk machines, Microsoft says. The company has not attributed the activity to a known threat actor, and the operators' end goal is still unclear. The lure plays to how hotels work. Phishing emails carry the display name \"Booking Manager (via Calendly)\" and reference guest complaints, bedbug infestations, room inquiries, health inspections, and stay reviews. The lures came in Japanese, Danish, and Dutch, with Japanese the most common. The subject line names no recipient or property, which points to high-volume, list-driven sending rather than tailored spear phishing. The pressure is reputational: complaints, final warnings, threatened inspections. The delivery is the interesting part. The operators route messages through Calendly's email notification system and Google's URL redirect service, a trick Microsoft calls authentication laundering. Emails sent through the direct Calendly path pass SPF, DKIM, and DMARC, because they really are sent from authorized infrastructure. The checks confirm the sender is allowed to send. They say nothing about what the message is for. A multi-hop chain then walks the victim from a Calendly link through share.google and a Google redirect to a freshly registered, Cloudflare-fronted .cfd domain. That domain sits behind a Turnstile challenge that doubles as anti-analysis. Click through, and the target downloads a file named photo-\u003Cnumbers>.zip. Inside is a shortcut posing as an image: IMG-\u003Cnumbers>.png.lnk in the first wave, PHOTO-\u003Cnumbers>.png.lnk in the second. Opening it fires PowerShell. The script uses BigInt arithmetic to decode a hidden download URL, pulls a .ps1 to %TEMP%, and drops a legitimate Node.js v24.13.0 runtime from nodejs.org into user space, which then runs the JavaScript implant. No system-wide Node install is needed. The implant is tracked as TonRAT. It resolves its C2 domains through the TON blockchain API, then opens an encrypted WebSocket channel, per SOC Prime. Fetching domains on the fly makes static blocklists less useful. After the compromise, the implant beaconed to fixed IPs over non-standard ports: 8443, 8445, 8453, 5555, and 56001 to 56003. Some hosts also showed headless browser automation (--headless --no-sandbox), an ip-api.com geolocation check, and a forced shutdown via cmd \u002Fc shutdown -s -t 0. Microsoft has not reported confirmed data theft, ransomware, or named victims. Full remediation has to hit both persistence paths: the RunOnce entry pointing into ProgramData and the Node.js Run key, plus the runtime and .js files under AppData\\Local\\Nodejs. Pulling one leaves the other alive. Reception, reservations, and front office systems are the first places to look. The campaign is not brand new. SOC Prime and ITOCHU documented the same hotel phishing and the LNK-to-PowerShell-to-Node.js chain about two weeks earlier, and Microsoft says its findings line up with that reporting. Booking-themed phishing aimed at hotel staff has been a recurring pattern, including ClickFix campaigns that dropped PureRAT to steal Booking.com logins. What none of the reports can answer yet is what these operators want. The access is durable, the cleanup is easy to get wrong, and the final payload has not been pinned down. That is enough to treat this as more than another booking-themed phish. Found this article interesting? Follow us on Google News, Twitter and LinkedIn to read more exclusive content we post. SHARE     Tweet Share Share Share SHARE  Calendly, CloudFlare, Google, Malware, Microsoft, node.js, Phishing, powershell ⚡ Top Stories This Week Chrome V8 Zero-Day CVE-2026-11645 Exploited in the Wild - Patch Now Researchers Build Self-Replicating AI Worm That Operates Entirely on Local, Open-Weight Models Microsoft Defender RoguePlanet Zero-Day Grants SYSTEM Access on Updated Windows Anthropic Releases Claude Fable 5, Its Most Powerful AI Yet, With Cyber Safeguards Microsoft Patches Record 206 Flaws, Including Three Zero-Days and Critical RCE Bugs Ivanti, Fortinet, and SAP Release Patches for Multiple Critical Vulnerabilities Cybersecurity Stars Awards 2026: Winners Announced Across 95 Categories ThreatsDay Bulletin: Worm Code Leaked, AI Agent Phished, Claude Code Patch + 28 New Stories New GreatXML Exploit Bypasses Windows BitLocker via Recovery Partition XML Files Agentjacking Attack Tricks AI Coding Agents Into Running Malicious Code China-Linked Hackers Backdoored Linux Login Software to Hide for Nearly a Decade Critical Splunk Enterprise Flaw Lets Attackers Run Code Without Authentication U.S. Orders Anthropic to Suspend Fable 5 and Mythos 5 Access for Foreign Nationals Over 400 Arch Linux AUR Packages Hijacked to Deploy Infostealer and eBPF Rootkit Palo Alto Warns of Active Exploitation of PAN-OS GlobalProtect VPN Flaw ⚡ Weekly Recap: Chrome 0-Day, UniFi Exploits, macOS Stealers, VPN Flaw and More ⭐ Featured Resources Get the 2026 Guide to Govern and Secure Enterprise AI Agents at Scale [Watch Demo] See Which Security Gaps Attackers Could Exploit First AI Can’t Stop Every Attack. Learn How Zero Trust Can Block What’s Unknown Have You Outgrown Your MDR? 7 Warning Signs Every CISO Should Check","https:\u002F\u002Fthehackernews.com\u002F2026\u002F06\u002Fmicrosoft-warns-of-photo-zip-phishing.html","https:\u002F\u002Fblogger.googleusercontent.com\u002Fimg\u002Fb\u002FR29vZ2xl\u002FAVvXsEhWYWOSDRBtv65eOzqdHSuOxXN7BWyBo1EAltLLUTTKGt68GYJ67zn9ixdKIQjTPCgE3P1o09UzrwXzvbopRZIhjN0LxYAZR06WaXOd116NQutGo1zLaceeob3nkuIHCeP6ZhlVp1yVOfc7dt-YZKFhEJJiPF8H5P03bc1ny0E3mi7jbIhqh7wqodC_zKE\u002Fs1600\u002Fhotel-photo-zip.jpg","2026-06-26T09:27:12+00:00","2026-06-26T12:00:23.333441+00:00",8,[18,21,24,26,28],{"name":19,"type":20},"Node.js","product",{"name":22,"type":23},"Microsoft","vendor",{"name":25,"type":23},"Calendly",{"name":27,"type":23},"Google",{"name":29,"type":23},"Cloudflare","89f78b1c-3503-45a1-9fc7-e23d2ce1c6d5",{"id":30,"icon":32,"name":33,"slug":34},null,"Malware","malware",[36,41,43],{"category":37},{"id":38,"icon":32,"name":39,"slug":40},"6cbdd207-aaa1-4176-9534-e156b125e917","Nation-state","nation-state",{"category":42},{"id":30,"icon":32,"name":33,"slug":34},{"category":44},{"id":45,"icon":32,"name":46,"slug":47},"e7b231c8-5f79-4465-8d38-1ef13aea5a14","Threat Intelligence","threat-intelligence",[49,53,55,57,59,61,63,65,68,72,75,78,81,84,87,90,93],{"type":50,"value":51,"context":52},"ip","8443","Non-standard port used for C2 communication by the TonRAT implant.",{"type":50,"value":54,"context":52},"8445",{"type":50,"value":56,"context":52},"8453",{"type":50,"value":58,"context":52},"5555",{"type":50,"value":60,"context":52},"56001",{"type":50,"value":62,"context":52},"56002",{"type":50,"value":64,"context":52},"56003",{"type":34,"value":66,"context":67},"TonRAT","Name of the Node.js implant used in the campaign.",{"type":69,"value":70,"context":71},"mitre_attack","T1059.001","PowerShell used to decode URL and download payload.",{"type":69,"value":73,"context":74},"T1140","Deobfuscate\u002Fdecode files or information.",{"type":69,"value":76,"context":77},"T1573.002","Encrypted WebSocket channel for C2.",{"type":69,"value":79,"context":80},"T1071.001","Web Protocols (HTTP\u002FHTTPS) used for C2 communication.",{"type":69,"value":82,"context":83},"T1095","Non-standard Port for C2 communication.",{"type":69,"value":85,"context":86},"T1105","Ingress Tool Transfer (downloading implant).",{"type":69,"value":88,"context":89},"T1070.004","File Deletion (implied by cleanup difficulty).",{"type":69,"value":91,"context":92},"T1547.001","Registry Run Keys \u002F Startup Folder for persistence.",{"type":69,"value":94,"context":95},"T1218.011","Signed Binary Proxy Execution: Rundll32 (implied by LNK execution)."]