CastleRAT Multi-Stage Remote Access Trojan
Executive Summary
What current reporting adds: Red Canary's August 2026 Intelligence Insights placed CastleRAT in its threat rankings and described both compiled Python and native C builds, dead-drop resolution through Pythonw, and bring-your-own-runtime execution. Blackpoint independently reported more than 60 CastleLoader/CastleRAT-related incidents between May and early July, with finger.exe retrieval and caret-obfuscated commands recurring across the chain. Earlier ThreatDown, Splunk, and Recorded Future research supplies the technical depth needed to turn that prevalence signal into a defensible behavior-led hunt.
How the chain works: Observed delivery begins with compromised-site ClickFix prompts or CastleLoader. One chain executes an MSI, provisions the Deno JavaScript runtime, stages an obfuscated Python environment protected with PyArmor, and extracts content from an image before loading the RAT in memory. Other builds use Pythonw for dead-drop resolution against an actor-controlled destination or a public Steam Community page. CastleRAT exists as Python and C variants and supports system discovery, keylogging, screen capture, remote shell access, file operations, and command execution.
Why detection belongs in runtime and lineage evidence: Infrastructure rotates and public services can be abused by unrelated users, so the durable signals are the transition points: finger.exe retrieval with command obfuscation, an unexpected Deno runtime launched from a user-writable path, Python or Pythonw executing from a staged environment, and Pythonw-attributed DNS to Steam Community. Q01 and Q02 are the strongest keepers; Q03-Q05 need the same host, parent, path, and owner context before they mean CastleRAT.
Operational limit: Endpoint command lines cannot prove in-memory injection, RC4 protocol semantics, screen capture, keylogging, or a remote-shell command. Those require memory acquisition, packet or proxy content, and event-specific follow-up. No fresh atomic IOC set was independently corroborated across the accessible current sources, so this pack deliberately ships none. All CQL remains static-reviewed only: no Falcon tenant parse, benign baseline, positive fixture, scheduled search, IOA, prevention action, or deployment is claimed.
| Priority | Why now | Coverage delivered | Key limitation |
|---|---|---|---|
| Find durable behavior and preserve evidence | Current and independently corroborated 2026 reporting | 5 CQL designs plus native pivots | Static-only; tenant, content, and native-log semantics remain unverified |
Source and Claim Review
Current-run sanitized plain-text snapshots were hashed before assembly. Every source was treated as untrusted data; no embedded instruction, command, exploit code, payload, or destination was executed.
| ID | Publisher | Tier | Independence | Accessed | Status |
|---|---|---|---|---|---|
| S01 | Red Canary | T1 | red-canary | 2026-09-07T11:06:52Z | successful sanitized current detection-report extraction |
| S02 | Blackpoint Cyber | T1 | blackpoint | 2026-09-07T11:06:52Z | successful sanitized first-hand SOC extraction |
| S03 | ThreatDown | T1 | threatdown | 2026-09-07T11:06:52Z | successful sanitized technical-research extraction |
| S04 | Splunk Threat Research Team | T1 | splunk | 2026-09-07T11:06:52Z | successful sanitized malware-analysis extraction |
| S05 | Recorded Future Insikt Group | T1 | recorded-future | 2026-09-07T11:06:52Z | successful sanitized annual-report extraction |
| S06 | Microsoft Learn | T1 | microsoft | 2026-09-07T11:06:52Z | successful sanitized authoritative control extraction |
| Claim | Statement | Sources | Confidence |
|---|---|---|---|
| C01 | Red Canary observed CastleRAT in 2026 as Python and C builds using dead-drop resolution and bring-your-own-runtime execution. | S01 | high |
| C02 | Blackpoint linked more than 60 May-July incidents to a CastleLoader/CastleRAT ClickFix chain. | S02 | high |
| C03 | Blackpoint repeatedly observed finger.exe retrieval and caret-obfuscated commands in the initial chain. | S02 | high |
| C04 | ThreatDown documented a chain that used MSI delivery, Deno, PyArmor-protected Python, image-carried content, and in-memory CastleRAT loading. | S03 | high |
| C05 | CastleRAT can use Pythonw for dead-drop resolution through actor infrastructure or Steam Community. | S01 | high |
| C06 | Splunk analyzed Python and native C variants that collect host identity and communicate with RC4-protected C2. | S04 | high |
| C07 | Reported capabilities include keylogging, screen capture, remote shell, file handling, and command execution. | S01, S04 | high |
| C08 | Recorded Future clustered CastleRAT infrastructure by RC4 keys and linked it operationally with CastleLoader while avoiding overclaiming a single controller. | S05 | high |
| C09 | Public-service dead drops and rotating infrastructure are insufficient alone for attribution or blocking. | S01, S05 | high |
| C10 | The defensible portable hunt focuses on runtime acquisition, execution lineage, user-writable staging, and process-attributed DNS rather than content inspection. | S01, S02, S03, S04 | high |
Hunt Brief and Attack Chain
The scaffold separates queryable endpoint behaviors from application, content, memory, and forensics gaps. Each hypothesis retains evidence and a safe validation plan.
| Step | Claims | Behavior | Platform | Goal |
|---|---|---|---|---|
| 1 | C02,C03 | a user follows a ClickFix lure and launches a retrieval command | Windows | Find finger.exe retrieval and command obfuscation |
| 2 | C04 | an MSI or loader provisions a Deno runtime | Windows | Find Deno execution from user-writable staging |
| 3 | C04 | a staged Python/PyArmor environment processes image-carried content | Windows | Find unusual Python lineage and image/script arguments |
| 4 | C01,C05 | Pythonw resolves a dead drop or current C2 location | Windows | Correlate process-attributed DNS with the staged host |
| 5 | C06,C07 | CastleRAT collects host data and provides operator capabilities | Windows | Acquire memory and reconstruct process/network behavior |
| 6 | C08,C09 | infrastructure and payload variants rotate | Windows | Prefer behavior, owner context, and same-host correlation |
| ID | Behavior | Telemetry | Use | Lookback | Validation |
|---|---|---|---|---|---|
| H01 | finger.exe performs retrieval from an obfuscated ClickFix command | ProcessRollup2 / SyntheticProcessRollup2 | alert-candidate | 30d | Run finger.exe only against an analyst-controlled inert lab service and baseline any legitimate legacy finger use. |
| H02 | Deno executes from a user-writable path after a shell, MSI, or script parent | ProcessRollup2 / SyntheticProcessRollup2 | alert-candidate | 30d | Use a signed Deno fixture in a lab user path and baseline approved developer hosts and runtime managers. |
| H03 | Python or Pythonw executes from a staged user path with image, packed-script, or loader arguments | ProcessRollup2 / SyntheticProcessRollup2 | hunt | 30d | Exercise an inert local script and image path; inventory PyArmor and packaged-Python owners before interpreting hits. |
| H04 | Pythonw-attributed DNS reaches Steam Community or a rare newly observed domain | DnsRequest / SuspiciousDnsRequest | hunt | 30d | Confirm process attribution and compare against approved automation; never block Steam Community based on this signal alone. |
| H05 | Deno or Python runtime binaries are written into a user-writable staging path | NewExecutableWritten / PeFileWritten | hunt | 30d | Use an approved harmless runtime copy on a test host and baseline developer tooling caches and software deployment. |
| H06 | CastleRAT keylogging, screen capture, RC4 C2, or remote-shell commands occur | memory, packet/proxy content, and host artifacts | gap | 30d | Acquire memory and approved network content from a corroborated host; portable Falcon fields cannot prove these content-level actions. |
Affected surface and telemetry
Windows Falcon process, file, DNS, and IPv4 network telemetry plus browser/proxy and host-acquisition pivots. Proxy, IPv6, resolver attribution, wrapper depth, memory, packet content, and product-native schema remain repository- and tenant-dependent.
Consolidated IOC Table
No eligible atomic IOCs were independently corroborated across the accessible primary technical sources as of 2026-09-07. Public services, technique strings, product names, and MITRE identifiers are not atomic indicators and are not promoted into an IOC list.
ATT&CK Mapping
Every technique row is an analyst inference from source-backed behavior, not an unsupported actor attribution.
| Tactic | Technique | Name | Behavior | Basis | Sources |
|---|---|---|---|---|---|
| Execution | T1204.004 | Malicious Copy and Paste | ClickFix delivery | analyst inference | S02,S03 |
| Command and Control | T1105 | Ingress Tool Transfer | finger.exe and runtime acquisition | analyst inference | S02,S03 |
| Execution | T1059.007 | JavaScript/JScript | Deno JavaScript runtime stage | analyst inference | S03 |
| Execution | T1059.006 | Python | staged Python/PyArmor execution | analyst inference | S01,S03,S04 |
| Command and Control | T1102.003 | One-Way Communication | public-service dead-drop resolution | analyst inference | S01 |
| Discovery | T1082 | System Information Discovery | host identity collection | analyst inference | S04 |
| Collection | T1056.001 | Keylogging | reported CastleRAT capability | analyst inference | S01,S04 |
| Collection | T1113 | Screen Capture | reported CastleRAT capability | analyst inference | S01,S04 |
Native / Non-CQL Hunts
| Hunt | Log source | Logic | Response |
|---|---|---|---|
| ClickFix browser and clipboard reconstruction | browser history, proxy, clipboard policy, and user interview | Reconstruct the compromised-site visit and pasted command without replaying it; preserve the original page evidence and timestamps. | Scope the delivery window and train from the exact lure only after evidence capture. |
| Runtime and memory acquisition | EDR process tree plus approved memory capture | Preserve Deno/Python/Pythonw binaries, MSI, image, scripts, hashes, parent lineage, loaded modules, and volatile memory before removal. | Escalate when the runtime is unowned or memory confirms an injected payload. |
| RC4/C2 content review | proxy, packet capture, DNS, and firewall logs | On a corroborated host, inspect repeated destination changes and application-layer behavior; do not contact or replay suspected C2. | Block only reviewed dedicated infrastructure and keep public services in detect-only context. |
CrowdStrike LogScale CQL Hunt Queries
Looks for: finger.exe invoked with retrieval-shaped arguments, especially from cmd.exe, PowerShell, or the Run-dialog lineage and with caret-heavy command text. Accomplishes: targets Blackpoint's repeated initial mechanism before CastleLoader or CastleRAT changes payloads.
// HUNT: finger.exe retrieval with ClickFix-style command obfuscation // HYPOTHESIS: H01 // USE: alert-candidate // MITRE: T1204.004, T1105 // CONF: high // FP: medium // COST: low // TIMEFRAME: 30d — bounded analyst review window // REQUIRES: ProcessRollup2 or SyntheticProcessRollup2; FileName, CommandLine, ParentBaseFileName, aid // FALSE POSITIVES: legacy finger diagnostics, network administrators, security labs, and compatibility tests // TUNING: inventory legitimate finger owners and exclude by managed host plus approved parent/path, never by filename alone // VALIDATION: STATIC-ONLY #event_simpleName = /^(ProcessRollup2|SyntheticProcessRollup2)$/ | FileName = /^finger\.exe$/i | CommandLine = /(?:@|\/user:|\^.{0,12}\^|\s-[a-z])/i | table([@timestamp, ComputerName, UserName, ParentBaseFileName, ImageFileName, CommandLine, TargetProcessId, aid]) | sort(@timestamp, order=desc, limit=1000)
Looks for: deno.exe running from Users, ProgramData, Temp, AppData, or Public and launched by a shell, MSI, or script host. Accomplishes: catches the bring-your-own-runtime transition used in the documented in-memory CastleRAT chain.
// HUNT: Deno runtime execution from a user-writable staging path // HYPOTHESIS: H02 // USE: alert-candidate // MITRE: T1059.007 // CONF: high // FP: medium // COST: low // TIMEFRAME: 30d — bounded analyst review window // REQUIRES: ProcessRollup2 or SyntheticProcessRollup2; ImageFileName, CommandLine, ParentBaseFileName, aid // FALSE POSITIVES: developers, CI workers, runtime managers, and approved Deno applications // TUNING: exclude only approved signer/path/host combinations after owner review // VALIDATION: STATIC-ONLY #event_simpleName = /^(ProcessRollup2|SyntheticProcessRollup2)$/ | FileName = /^deno\.exe$/i | ImageFileName = /\\(Users|ProgramData|Temp|AppData|Public)\\/i | ParentBaseFileName = /^(cmd|powershell|pwsh|msiexec|wscript|cscript)\.exe$/i | table([@timestamp, ComputerName, UserName, ParentBaseFileName, ImageFileName, CommandLine, SHA256HashData, TargetProcessId, aid]) | sort(@timestamp, order=desc, limit=1000)
Looks for: Python or Pythonw running from a user-writable path with PyArmor, image, JavaScript, or loader-oriented arguments. Accomplishes: exposes the staged interpreter boundary while keeping packaged applications and research tooling as explicit lookalikes.
// HUNT: Staged Python or Pythonw execution with packed-script or image arguments // HYPOTHESIS: H03 // USE: hunt // MITRE: T1059.006 // CONF: medium // FP: high // COST: low // TIMEFRAME: 30d — bounded analyst review window // REQUIRES: ProcessRollup2 or SyntheticProcessRollup2; ImageFileName, CommandLine, ParentBaseFileName, aid // FALSE POSITIVES: packaged Python applications, PyArmor users, data-science notebooks, and image-processing automation // TUNING: scope to Q01/Q02 hosts or exclude owner-approved signed runtime paths and projects // VALIDATION: STATIC-ONLY #event_simpleName = /^(ProcessRollup2|SyntheticProcessRollup2)$/ | FileName = /^(python|pythonw)(\.exe)?$/i | ImageFileName = /\\(Users|ProgramData|Temp|AppData|Public)\\/i | CommandLine = /(?:pyarmor|\.jpe?g\b|\.png\b|\.js\b|loader|runtime)/i | table([@timestamp, ComputerName, UserName, ParentBaseFileName, ImageFileName, CommandLine, SHA256HashData, TargetProcessId, aid]) | sort(@timestamp, order=desc, limit=1000)
Looks for: DNS requests to Steam Community carrying Python or Pythonw process context. Accomplishes: creates a narrow public-service dead-drop pivot that is meaningful only with unowned runtime and same-host delivery evidence.
// HUNT: Pythonw-attributed dead-drop DNS to Steam Community // HYPOTHESIS: H04 // USE: hunt // MITRE: T1102.003 // CONF: medium // FP: high // COST: low // TIMEFRAME: 30d — bounded analyst review window // REQUIRES: DnsRequest or SuspiciousDnsRequest; DomainName, ContextBaseFileName, aid // FALSE POSITIVES: game clients, automation, scraping, monitoring, and security research // TUNING: never block the parent service; require Q01-Q03 or an unowned Pythonw path on the same host // VALIDATION: STATIC-ONLY #event_simpleName = /^(DnsRequest|SuspiciousDnsRequest)$/ | DomainName = /(^|\.)steamcommunity\.com$/i | ContextBaseFileName = /^(python|pythonw)(\.exe)?$/i | table([@timestamp, ComputerName, UserName, ContextBaseFileName, ContextProcessId_decimal, DomainName, aid]) | sort(@timestamp, order=desc, limit=1000)
Looks for: executable writes named deno.exe, python.exe, or pythonw.exe beneath Users, ProgramData, Temp, AppData, or Public. Accomplishes: finds bring-your-own-runtime staging before execution while retaining writer and hash context for same-host correlation.
// HUNT: Deno or Python runtime written into a user-writable staging path // HYPOTHESIS: H05 // USE: hunt // MITRE: T1105 // CONF: medium // FP: high // COST: low // TIMEFRAME: 30d — bounded analyst review window // REQUIRES: NewExecutableWritten or PeFileWritten; TargetFileName, ContextBaseFileName, SHA256HashData, aid // FALSE POSITIVES: developer runtime installers, package managers, application bundles, and software deployment // TUNING: baseline approved runtime caches and prioritize Q01/Q02 lineage or unsigned one-off paths // VALIDATION: STATIC-ONLY #event_simpleName = /^(NewExecutableWritten|PeFileWritten)$/ | TargetFileName = /\\(Users|ProgramData|Temp|AppData|Public)\\[^\r\n]*(deno|pythonw?)\.exe$/i | table([@timestamp, ComputerName, UserName, ContextBaseFileName, TargetFileName, SHA256HashData, aid]) | sort(@timestamp, order=desc, limit=1000)
Operationalization and IOA Candidates
Every query has an explicit operational decision. Alert-candidate rows have complete design-only packages; no schedule, notification, IOA, or prevention rule was created.
| Query | Use | Decision | Readiness | Rationale |
|---|---|---|---|---|
| Q01 | alert-candidate | alert-package | design-only | Tenant parsing, positive testing, and benign baseline are not recorded. |
| Q02 | alert-candidate | alert-package | design-only | Tenant parsing, positive testing, and benign baseline are not recorded. |
| Q03 | hunt | hunt-only | design-only | Tenant parsing, positive testing, and benign baseline are not recorded. |
| Q04 | hunt | hunt-only | design-only | Tenant parsing, positive testing, and benign baseline are not recorded. |
| Q05 | hunt | hunt-only | design-only | Tenant parsing, positive testing, and benign baseline are not recorded. |
Machine-Readable IOC Appendix
No eligible atomic IOCs were independently corroborated as of 2026-09-07. The pack therefore ships behavior-led queries and no hash, IP, domain, or URL import block. Public service names and runtime strings remain hunt context only.
As of 2026-09-07, no eligible atomic IOCs were independently corroborated. This pack intentionally provides no hash, IP, domain, or URL import block.
Hardening — Tiered and Deployable
- Hunt finger.exe retrieval and unexpected staged runtimes (M1047; CTRL01) — run Q01-Q05 over 30 days and preserve every unowned runtime/process tree before changing the host deployable-design Verify: confirm each hit has an owner, signer/path, parent, destination, and approved purpose Rollback: the hunt is read-only; remove only temporary analyst collection artifacts Authority: Blackpoint and ThreatDown reporting accessed 2026-09-07.
- Pilot malicious-copy-and-paste and script-child protections (M1040; CTRL02) — place applicable script/download protections in audit for a representative cohort before any block action deployable-design Verify: approved workflows complete and inert test behavior produces the expected audit event Rollback: restore the exported rule action through the same management channel Authority: Microsoft Defender ASR guidance and Red Canary detection guidance.
- Constrain Deno, Pythonw, and packaged runtimes outside approved paths (M1038; CTRL03) — inventory runtime owners, create audit policy for unapproved signer/path combinations, and pilot before enforcement deployable-design Verify: approved developer and automation workflows pass; an inert unapproved user-path runtime is audited Rollback: deploy the prepared rollback policy or return the cohort to audit Authority: Microsoft App Control for Business guidance accessed 2026-09-07.
- Restrict public dead-drop access with owner-aware egress policy (M1037; CTRL04) — monitor Pythonw and staged runtimes reaching public content services; block only dedicated reviewed destinations, not parent services deployable-design Verify: a benign public-service test remains available while an unapproved dedicated fixture is denied or alerted Rollback: restore the previous scoped egress rule and retain detection Authority: Recorded Future and Red Canary reporting plus Microsoft network-control guidance.
- Remove legacy finger client where no business owner exists (M1042; CTRL05) — inventory finger.exe use, assign owners to exceptions, and remove or deny execution only where no supported dependency remains deployable-design Verify: approved support cases pass and an unowned invocation is prevented or alerted Rollback: reinstall or re-allow only the reviewed signed binary for a time-bounded exception Authority: Blackpoint first-hand incident reporting and Microsoft feature governance.
- Centralize browser, endpoint, DNS, proxy, and software-control evidence (M1047; CTRL06) — retain process, file, DNS, proxy, browser, application-control, and user-report evidence in a separately administered repository deployable-design Verify: a tabletop reconstruction links lure, command, runtime, DNS, and host actions across one test case Rollback: restore prior forwarding only after equivalent independent evidence exists Authority: Microsoft security logging and application-control guidance.
Deployable playbook · PB01 · guarded pilot and rollback
- Export current application-control, ASR, egress, runtime inventory, and logging state
- inventory approved finger, Deno, Pythonw, PyArmor, browser-automation, and MSI workflows
- apply audit controls to a limited cohort
- run inert local fixtures without contacting source infrastructure
- verify expected telemetry and business health
- expand only when exceptions are owned
- rollback through exported policies if a stop condition fires
- retain configuration, events, decisions, and recovery evidence
Containment Runbook
| Phase | Trigger | Authority | Owner | Evidence | Recovery |
|---|---|---|---|---|---|
| 1. Validate and preserve | Q01/Q02 or correlated Q03-Q05 hit | SOC lead | SOC analyst | raw events, process tree, MSI, runtime, image, scripts, hashes, DNS/network | none; preservation is read-only |
| 2. Scope delivery | unapproved runtime chain corroborated | incident commander | endpoint and web/proxy responders | browser history, proxy, copied command, related hosts/users | document approved test or continue |
| 3. Isolate affected endpoint | active RAT or operator behavior confirmed | incident commander plus business owner | endpoint operations | isolation time, exceptions, active sessions, business impact | temporary access only under continuity plan |
| 4. Address accounts and destinations | keylogging/session theft or dedicated C2 evidence | incident commander plus identity/network owners | identity and network operations | revocations, blocks, destination evidence, owner approvals | restore access through clean reauthentication and reviewed rules |
| 5. Eradicate, recover, re-hunt | scope stable and volatile evidence preserved | incident commander and system owner | endpoint engineering and SOC | rebuild/cleanup record, known-good hashes, fresh Q01-Q05 results | return after no unexplained hits and owner sign-off |
Preservation order: raw results, application/proxy events, process tree, files and hashes, network/DNS, identity/session state, policy/configuration, analyst notes, and tool logs. Closure: known-good recovery, explained re-hunt results, and incident-commander plus system-owner approval.
Detection Coverage and Validation Evidence
Validation state: STATIC REVIEW PASSED only after the complete local gate suite succeeds. This is not Falcon parsing, canary success, schedule creation, or deployment evidence.
| Technique | Coverage | Query or handoff | Evidence | Limitation |
|---|---|---|---|---|
| T1204.004 | Static or gap | Q01 | local structure, field, syntax, provenance, and safety review | tenant parser, positive test, and benign baseline absent |
| T1105 | Static or gap | Q01, Q05 | local structure, field, syntax, provenance, and safety review | tenant parser, positive test, and benign baseline absent |
| T1059.007 | Static or gap | Q02 | local structure, field, syntax, provenance, and safety review | tenant parser, positive test, and benign baseline absent |
| T1059.006 | Static or gap | Q03 | local structure, field, syntax, provenance, and safety review | tenant parser, positive test, and benign baseline absent |
| T1102.003 | Static or gap | Q04 | local structure, field, syntax, provenance, and safety review | tenant parser, positive test, and benign baseline absent |
| T1082 | Static or gap | native/memory handoff | local structure, field, syntax, provenance, and safety review | tenant parser, positive test, and benign baseline absent |
| T1056.001 | Static or gap | native/memory handoff | local structure, field, syntax, provenance, and safety review | tenant parser, positive test, and benign baseline absent |
| T1113 | Static or gap | native/memory handoff | local structure, field, syntax, provenance, and safety review | tenant parser, positive test, and benign baseline absent |
Recorded evidence and next tests
- Every CQL card retains
VALIDATION: STATIC-ONLY; no Falcon tenant was contacted. - The offline tenant dry run checks extraction and profile readiness only.
- Content, memory, product-native, IPv6, proxy, and wrapper-depth gaps remain visible.
- Next: parse Q01 and Q02 in the intended repository over one hour, verify fields, then run approved inert positive and 30-day benign tests.
Hunt Summary Ticket
TITLE: CastleRAT hunt — v0.1 Draft SEVERITY: high — current evidence supports high-impact compromise and downstream control risk SCOPE: Windows Falcon process, file, DNS, and IPv4 network telemetry plus browser/proxy and host-acquisition pivots HYPOTHESIS: H01 alert-candidate — finger.exe performs retrieval from an obfuscated ClickFix command; H02 alert-candidate — Deno executes from a user-writable path after a shell, MSI, or script parent; H03 hunt — Python or Pythonw executes from a staged user path with image, packed-script, or loader arguments; H04 hunt — Pythonw-attributed DNS reaches Steam Community or a rare newly observed domain; H05 hunt — Deno or Python runtime binaries are written into a user-writable staging path; H06 gap — CastleRAT keylogging, screen capture, RC4 C2, or remote-shell commands occur QUERIES RUN: Q01 alert-candidate; Q02 alert-candidate; Q03 hunt; Q04 hunt; Q05 hunt DO FIRST: Q01 and Q02 over 30d FINDINGS: GAPS: tenant parsing, native/content/memory evidence, positive and benign tests ACTIONS: SOC validates Q01/Q02; platform and endpoint owners preserve and scope evidence OWNER: Security Operations / Detection Engineering / Platform Owner VERSION: v0.1 Draft · 2026-09-07 · STATIC REVIEW PASSED
Changelog
References
| ID | Publisher | Version/status | Accessed | Use | URL |
|---|---|---|---|---|---|
| S01 | Red Canary | successful sanitized current detection-report extraction | 2026-09-07T11:06:52Z | C01, C05, C07, C09, C10 | https://redcanary.com/blog/threat-intelligence/intelligence-insights-august-2026/ |
| S02 | Blackpoint Cyber | successful sanitized first-hand SOC extraction | 2026-09-07T11:06:52Z | C02, C03, C10 | https://blackpointcyber.com/blog/blackpoint-soc-threat-pulse-week-of-july-6-2026/ |
| S03 | ThreatDown | successful sanitized technical-research extraction | 2026-09-07T11:06:52Z | C04, C10 | https://www.threatdown.com/blog/castlerat-cyber-attack-is-the-first-to-abuse-deno-javascript-runtime-to-evade-enterprise-security/ |
| S04 | Splunk Threat Research Team | successful sanitized malware-analysis extraction | 2026-09-07T11:06:52Z | C06, C07, C10 | https://www.splunk.com/en_us/blog/security/castlerat-malware-detection-splunk-mitre-attck.html |
| S05 | Recorded Future Insikt Group | successful sanitized annual-report extraction | 2026-09-07T11:06:52Z | C08, C09 | https://assets.recordedfuture.com/insikt-report-pdfs/2026/cta-2026-0319.pdf |
| S06 | Microsoft Learn | successful sanitized authoritative control extraction | 2026-09-07T11:06:52Z | C10 | https://learn.microsoft.com/windows/security/application-security/application-control/windows-defender-application-control/wdac |