Hackers tied to the Midnight Blizzard cluster used Anthropic’s Claude AI to rebuild malware after security tools detected it, allowing them to continue espionage operations against Ukrainian and European targets.
New analysis shows that changing a file’s code and hash did not remove the shared behaviors and server links that enabled investigators to map the campaign.
Anthropic tracks this activity as GTG-20006 and says the targeting and techniques align with public reporting on Midnight Blizzard. The operation targeted more than 20 government, diplomatic, think tank and defense organizations. The attackers’ use of Claude extended beyond generating code to automating phishing systems, updating malware, and helping collect stolen data.
Researchers at ReversingLabs identified and classified samples, then expanded two published file hashes into a broader campaign picture. Their October 15 report linked the samples to a staging server, five additional PowerShell stager builds, two Windows Internet Shortcut delivery lures, and multiple connections between phishing domains and backend servers. ReversingLabs’ file and behavioral analysis does not independently prove the actor’s identity.
Midnight Blizzard–linked attackers used Claude AI
Anthropic reported that the operator used Claude to find, modify and redeploy implants after detections. ReversingLabs found five additional stager builds across a 25-day window (July 9–August 3), a pattern consistent with an ongoing rebuild cycle; however, the researchers cannot confirm from their own records whether AI produced those versions.
The two initial samples were ChocoShell, a PowerShell stager, and CornFlake, a Windows backdoor written in Go. Microsoft named both in its CaptiveCrunch reporting and linked the activity to Storm-2945, which Microsoft assesses as an operational sub-group of Midnight Blizzard. ReversingLabs first observed CornFlake on July 6 and ChocoShell on July 10.
Early timeline details require careful interpretation. ReversingLabs labeled both files as malicious on August 1, one day after Microsoft published its report; that classification relied on threat reputation. ReversingLabs’ records therefore show earlier possession of the samples, not an independent malicious verdict predating Microsoft’s disclosure.
ChocoShell behavior
ChocoShell hides its window, modifies PowerShell’s execution policy and runs Base64-encoded payloads. It incorporates public PowerSploit and Empire modules to collect browser history, queries Windows shadow copies via WMI, and schedules background tasks. Its HTTPS communications use a tracking-pixel endpoint to report progress. Microsoft additionally reported browser credential theft and data uploads associated with these components.
Investigators recovered two 60-byte Windows Internet Shortcut (.lnk) files that pointed to the staging server. One shortcut referenced a short download path; the other pointed to a PowerShell payload disguised as a JavaScript bundle. Neither shortcut contained executable code, and none of 37 antivirus engines flagged them — their risk came from the destinations they opened. Microsoft’s reporting places compromised hotel and venue captive-portal networks earlier in the attack chain; those hotel Wi‑Fi attacks redirected travelers to phishing pages and ClickFix prompts. ReversingLabs did not observe that upstream captive-portal activity, so its shortcut findings should not be treated as proof of every step Microsoft described.
CornFlake behavior
CornFlake establishes persistence via a registry startup entry and a scheduled task. It injects into a suspended process and reads browser profile data and Microsoft Teams cache files. Sandbox runs showed signs consistent with keylogging. ReversingLabs did not observe how CornFlake was delivered to victims and could not establish a direct delivery link from ChocoShell to CornFlake.
The strongest linkage among the rebuilt stagers was behavioral: all five additional stagers shared the same 35-item capability profile despite having different hashes. Some code edits disrupted fuzzy-hash similarity detection, but consistent beacon labels remained. A YARA search built around those beacon labels and the PowerShell actions recovered seven malicious scripts, including the original sample.
Two of the additional stagers and both shortcuts had strong infrastructure ties. Other scripts shared the same toolset but lacked an observed network connection, leaving open the possibility of another operator reusing similar code. That distinction is important when separating findings that support campaign attribution from those that provide hunting leads.
ReversingLabs observed the staging server still delivering malicious files as of checks on October 5. The researchers recommend searching historical telemetry, blocking confirmed infrastructure, and reviewing Microsoft Entra device-code sign-ins. Prior Teams credential theft highlights the group’s emphasis on account access. Administrators should restrict unused device-code authentication flows and test detection rules against clean files before deployment.
The practical takeaway: focus on what malware does and where it connects, rather than relying solely on file hashes or low detection counts from reputation services during an active investigation.
Indicators of Compromise (IoCs)
File hashes
| File or role | SHA-256 | SHA-1 |
|---|---|---|
| ChocoShell — original PowerShell sample | be99857449d2856dd5a84e21c8a3d5e0e01456adb44062ddec5a6b4970d8d42c |
937e75e0e1c82eecab69e9b8ad481bd7e0845308 |
| CornFlake — Go backdoor | 918fa52ae45ed60ba7cc8bdc99c3cbe9ab92e0375ec31fc05d0d4513be11c593 |
510af9bb00ff5d4a6856b1291af55db9f6e13551 |
| Additional stager 1 — infrastructure-linked | ca3be5885afb3eb3bb19341e2653212200c568f3f900e0b2f04de9ba209aed25 |
154d8cfd9e304b6644216456759b7fd12daf85c1 |
| Additional stager 2 — shared toolset | 20e20b074967ed6f6e04d609ccec5ff7492665ef25f894c90c2ddc92fa47ac38 |
7acb7082d37854877a08999374460c9d7e5cd663 |
| Additional stager 3 — infrastructure-linked | 1e3ee845fde739fcd3ca9ce62c7f142a7c501d11db4c4fb294d4939f12d0f916 |
1b97e0df9600335b0cd8db2eb4577d3dbf6e76db |
| Additional stager 4 — shared toolset | 403b624e35777cbc07dbe66398b21bba70396a20b859c880732338ce1dd1f41f |
99f2eac2f00451a9a55521905add54205e336b9d |
| Additional stager 5 — shared toolset | 6f7090895c1c3dee30de6b3f098ca3a788dc198646e5293a8b1210430b0add97 |
04b64591837c5c2696c2a4423b1bb3dab00a0f01 |
| Seventh YARA match — comparison pending | 28f622028e690c943f7fa9aca426c07cab52b5aaba757ef8a3328609c0b3bec3 |
6e5c658261f72fda92d475ac96f0213159af785d |
| Delivery shortcut 1 — infrastructure-linked | 5bc3c615da8dd7ef45e421d26a97644679ba0a0647b24efc96ebed8348f403d2 |
9c5c539138df6cfcd854c55316bb527520025928 |
| Delivery shortcut 2 — infrastructure-linked | 92cf0b883d220ba37f5ab378920fefdfdddc4fa76ee6c046696a7e5853a95c33 |
e82a7c86677c5752dceb6b848754698571fb0aa8 |
The source also provides these MD5 and import-hash values. The import hash is a common Go toolchain fingerprint and matches many unrelated clean and malicious Go files, so it is not a reliable standalone indicator.
| Hash type | Value | Associated file or limitation |
|---|---|---|
| MD5 | c6f4df18cb880500f3921a179c3a3766 |
ChocoShell |
| MD5 | fba867df17721879df9d8dcca68d6900 |
CornFlake |
| Import hash | 4e2bd2c481372f7ab13b83b63b424e97 |
CornFlake; common Go toolchain fingerprint |
IP addresses, domains and email addresses
| Type | Indicator | Reported role or context |
|---|---|---|
| IPv4 | 213[.]145[.]86[.]112 |
Stager hosting, beacon endpoint and ChocoShell C2 |
| IPv4 | 104[.]145[.]210[.]184 |
Embassy Kit device-code phishing server |
| IPv4 | 31[.]57[.]243[.]154 |
Phishing host associated with the Outlook lookalike |
| IPv4 | 104[.]194[.]151[.]133 |
Primary command-and-control server |
| IPv4 | 104[.]194[.]159[.]55 |
Server holding stolen browser-data archives |
| IPv4 | 38[.]146[.]28[.]75 |
Phishing-console notifier and Microsoft-listed AitM infrastructure |
| IPv4 | 107[.]189[.]26[.]194 |
Microsoft-listed second ChocoShell C2 and DNS resolver |
| IPv4 | 104[.]194[.]159[.]150 |
Microsoft-listed CaptiveCrunch AitM infrastructure |
| IPv4 | 38[.]146[.]28[.]132 |
CaptiveCrunch DNS resolver |
| IPv4 | 192[.]142[.]52[.]31 |
Moderate-confidence backdoor hunting lead; validate before blocking |
| IPv4 | 172[.]67[.]136[.]242 |
Cloudflare serving address observed for the Microsoft 365 lookalike |
| IPv4 | 188[.]114[.]97[.]3 |
Cloudflare serving address observed for the WhatsApp lure |
| IPv4 | 45[.]59[.]122[.]181 |
Serving address observed for the Ukrainian chamber lookalike |
| IPv4 | 107[.]189[.]24[.]79 |
Serving address observed for the Chatham House lookalike |
| Domain | ms365-live[.]com |
Microsoft 365 device-code phishing lookalike |
| Domain | owa-ms365[.]com |
Outlook Web Access lookalike |
| Domain | ms365-device[.]com |
Microsoft 365 lookalike |
| Domain | m365-owa[.]com |
Microsoft 365 lookalike |
| Domain | wa-meeting[.]com |
WhatsApp Web pairing-code phishing lure |
| Domain | chathamhouse[.]eu |
Chatham House lookalike; suspicious classification in the reported scan |
| Domain | chamber-ua[.]org |
Ukrainian chamber-of-commerce lookalike |
| Domain | cdncounter[.]net |
Reported actor infrastructure |
anna.manager[@]russianearabroad[.]net |
Phishing persona address | |
events[@]embassy-protocol[.]int |
Phishing persona address |
URLs and endpoint paths
| Base address | Exact path and query | Purpose |
|---|---|---|
hxxps://213[.]145[.]86[.]112 |
/t/pixel[.]gif?r=&m=stage2_entry8 |
Stage-two beacon |
hxxps://213[.]145[.]86[.]112 |
/t/pixel[.]gif?m=stage2_ctx_admin_la_true&r=r= |
Beacon carrying a context flag |
hxxps://213[.]145[.]86[.]112 |
/s |
Stager download |
hxxps://213[.]145[.]86[.]112 |
/s?r=0f511e19 |
Stager download with session token |
hxxps://213[.]145[.]86[.]112 |
/s?r=7ed4bb1d |
First shortcut’s destination |
hxxps://213[.]145[.]86[.]112 |
/cdn/chunks/vendor-9f3a1c[.]min[.]js?ref=0f511e19&stub=1 |
PowerShell stager disguised as JavaScript |
hxxps://213[.]145[.]86[.]112 |
/cdn/chunks/vendor-9f3a1c[.]min[.]js?ref=95766022&stub=1 |
Second shortcut’s destination |
hxxps://213[.]145[.]86[.]112 |
/cdn/chunks/polyfill-7e2b[.]min[.]js |
Library fetched by the stager; file classified as clean |
hxxps://213[.]145[.]86[.]112 |
/t/event |
Microsoft-reported data-upload endpoint; not directly observed by ReversingLabs |
| Same staging server | /WZ |
Additional sandbox-referenced path; limited context |
Host and behavioral hunting indicators
| Indicator | Context |
|---|---|
%LOCALAPPDATA%Microsoftsvchost32svchost32.exe |
ReversingLabs-observed backdoor installation path |
svchost32.exe |
Backdoor filename; also appears in unrelated malware |
svchost32 |
Microsoft-reported Windows service name |
Cloud Sync Service |
Microsoft-reported service display name |
.svchost32mid and .svchost32ul |
Marker strings used in the Go-backdoor YARA rule |
stage2_entry and stage2_ctx_ |
Operator-chosen beacon labels used to connect stagers |
collecting and key_abe_ |
Additional beacon labels seen in sandbox activity |
Note: IP addresses and domains above are intentionally defanged (for example, [.]) to prevent accidental resolution or hyperlinking. Re-fang only within controlled threat‑intelligence platforms such as MISP, VirusTotal, or your SIEM.
Update defenses against new malware as soon as it appears. Integrate threat intelligence feeds with telemetry from your SOCs and XDR tools.

