QuimaRAT — Cross-Platform Java RAT (MaaS)

Modular Java/JNA remote access trojan sold as malware-as-a-service ($150/mo–$1,200 lifetime); runs on Windows, Linux, and macOS with per-OS persistence, AES-256 C2, and a Pastebin-based C2-rotation channel.
Threat
QuimaRAT
Severity
HIGH
Type
Cross-platform RAT / MaaS
Access
Built lures (JAR/EXE/APP/SH/BAT/VBS)
Version
v0.2 · 2026-07-10
Author
HuntPack
Confidence
High (LevelBlue analysis)
01

Executive Summary

QuimaRAT is a newly documented Java-based remote access trojan (LevelBlue SpiderLabs, surfaced in the current cycle and widely reported 2026-07-06) sold under a malware-as-a-service model. It is a modular Apache Maven project targeting Java SE 8, bundling JNA native libraries for Windows, Linux, and macOS so a single payload runs cross-platform. The operator suite ships a Builder, Loader, and Dropper that generate lures in many formats (JAR, EXE, APP, SH, BAT, VBS, plus LNK/VBS/JS/DOCM/XLSM/CHM variants).

Capabilities include remote command execution, plugin/payload delivery, credential theft, file transfer, clipboard manipulation, webcam surveillance, and fileless shellcode execution on Windows. It establishes a single-instance .lock file in the OS temp directory (Java FileLock), stores an XOR-encrypted config.dat, communicates over TCP / WebSocket / TLS / HTTPS with AES-256 encryption, and supports an optional Pastebin-hosted C2-rotation mechanism so operators can swap infrastructure without rebuilding the client.

Highest-value defensive angle: because QuimaRAT rides the Java runtime, the durable signal is the Java process itself behaving like malwarejavaw.exe launched by an Office app or script host, a -jar executed from a user-writable/temp path, and per-OS autoruns (Run key / Scheduled Task / Startup folder on Windows; crontab and .desktop on Linux; a LaunchAgent plist on macOS) that point back at a Java payload.

Intel note: this is a behavioral hunt. The public reporting details TTPs and artifacts but does not publish a corroborated atomic IOC set (hashes/C2). The IOC appendix therefore ships behavioral signatures and placeholders — replace the hash/C2 placeholders with values from your own sandboxing or a vetted feed before enabling blocking.

Defender priority: Hunt javaw.exe/java.exe spawned by an Office or script-host parent, and any autorun (Run key / task / Startup / LaunchAgent / crontab) whose target is a Java runtime running a JAR from a temp path — these catch QuimaRAT regardless of the builder-chosen lure format.

02

Source Review & Web Hunter Notes

TierSourceKey FindingCarry Forward
1LevelBlue (SpiderLabs) — QuimaRAT analysisJava/JNA architecture, per-OS persistence, .lock + config.dat, AES-256 C2, Pastebin rotation, single-instance FileLockYes
2The Hacker News — QuimaRAT MaaS report (2026-07-06)MaaS pricing, Builder/Loader/Dropper suite, builder output formats, command countsYes
2SC Media — QuimaRAT briefCross-platform targeting, MaaS distribution confirmationPartial

Web-hunter note: Two independent reports describe consistent TTPs; no vendor has yet published a vetted hash/C2 IOC list. Confidence in the behavior is high; atomic-indicator coverage is a known gap (see §15).

03

Hunt Brief & Attack Chain

Hunt hypotheses (ordered by fidelity)

  1. H1 — Java from a lure parent (high): javaw.exe/java.exe spawned by an Office app or script host (wscript/cscript/mshta) indicates a QuimaRAT dropper lure detonating.
  2. H2 — JAR from temp (high): a Java runtime executing -jar against a path in Temp/AppData/Downloads/ProgramData.
  3. H3 — Run-key persistence (high): a registry Run value whose data invokes a Java runtime + .jar.
  4. H4 — Scheduled-task persistence (medium): a task action launching javaw.exe -jar.
  5. H5 — Startup-folder persistence (medium): a .jar/.lnk written into a Startup directory.
  6. H6 — Pastebin C2 rotation (medium): DNS/HTTP to pastebin.com from a Java process (config-driven C2 update).
  7. H7 — Runtime artifacts (medium): creation of a temp .lock single-instance file and an XOR-encrypted config.dat beside a JAR.
  8. H8 — Java C2 beacon (medium): a Java process holding sustained outbound TCP/WebSocket sessions to non-corporate hosts.

Attack chain

StepActionTelemetryHunt Angle
1 · DeliveryBuilder-generated lure (JAR/EXE/APP/SH/BAT/VBS/DOCM…)ProcessRollup2, PeFileWrittenQ1 · lure-parent Java
2 · ExecutionJava runtime executes the QuimaRAT JAR from tempProcessRollup2Q2 · -jar from temp
3 · Runtime setup.lock single-instance file + XOR config.dat writtenFileCreateInfo / PeFileWrittenQ7 · artifacts
4 · PersistenceRun key / Scheduled task / Startup (Win); crontab, .desktop (Linux); LaunchAgent (macOS)AsepValueUpdate, ScheduledTask, FileCreateInfoQ3 · Q4 · Q5 · native
5 · C2AES-256 over TCP/WebSocket/TLS/HTTPS; Pastebin host rotationNetworkConnectIP4, DnsRequestQ6 · Q8
6 · ObjectivesCredential theft, file transfer, clipboard, webcam, shellcodeProcessRollup2, NetworkConnectIP4native / Q8
04

Consolidated IOC Table

No vetted atomic IOCs (file hashes / C2 addresses) are published for QuimaRAT at time of writing. The table below lists behavioral and artifact indicators from the LevelBlue analysis — durable across builder-chosen lure formats. Populate atomic IOCs from your own detonation before enabling prevention.

TypeValueConfActionContext
Artifact fileconfig.dat (repeating-key XOR) beside a JARmedhuntQuimaRAT config store
Artifact file.lock in OS temp dir (Java FileLock single-instance)medhuntSingle-instance guard
BehaviorJava runtime spawned by Office / script hosthighhuntLure detonation
Behaviorjavaw.exe -jar from Temp/AppData/DownloadshighhuntPayload execution
BehaviorRun key / task / Startup → Java + .jarhighhuntPersistence
NetworkJava process → pastebin.commedhuntC2-host rotation channel
CryptoAES-256 C2; HANDSHAKE / HEARTBEAT protocol messagesmedenrichC2 framing
ToolkitQuima Control / Builder / Loader / DroppermedenrichOperator suite names
File hashREPLACE_WITH_SHA256 (from your detonation)lowdetectPlaceholder — no public hash
C2REPLACE_WITH_C2 (from your detonation)lowdetectPlaceholder — no public C2
05

Affected Surface & Telemetry Matrix

SurfaceRequired TelemetryPriorityGap Risk
Windows endpoints with a JRE installedProcessRollup2, AsepValueUpdate, ScheduledTaskCriticalLow
Windows without a JRE (bundled JRE lures)ProcessRollup2 (bundled java runtime), PeFileWrittenHighMedium — arbitrary java path
macOS endpointsProcessRollup2, FileCreateInfo (LaunchAgent plist)HighMedium — mac EDR coverage
Linux endpoints / serversProcessRollup2, crontab / .desktop file writesHighMedium — Linux sensor coverage
Network egressNetworkConnectIP4, DnsRequest (pastebin.com)HighMedium — TLS/443 blends in
06

ATT&CK Mapping

TacticTechniqueBehaviorCoverage
ExecutionT1059.007 / T1204.002Java payload via user-executed lure (JS/VBS/Office → java)Q1
ExecutionT1218 / T1620Fileless shellcode execution (Windows)native
PersistenceT1547.001Registry Run key → Java + .jarQ3
PersistenceT1053.005Scheduled task → javaw -jarQ4
PersistenceT1547.001Startup folder .jar / .lnkQ5
PersistenceT1543.001 / T1053.003macOS LaunchAgent plist; Linux crontab / .desktopnative
Defense EvasionT1027 / T1497XOR config.dat; virtualization/analysis checksQ7 / native
Credential AccessT1555 / T1056.001Credential theft, keylogging, clipboard capturenative
CollectionT1125 / T1115Webcam capture, clipboard manipulationnative
Command & ControlT1071.001 / T1573.002AES-256 over TCP/WebSocket/TLS/HTTPSQ8
Command & ControlT1102 / T1105Pastebin C2-host rotation; plugin/payload downloadQ6
07

Native Audit-Log Hunts (non-CQL)

  • macOS — LaunchAgent: new plist under ~/Library/LaunchAgents or /Library/LaunchAgents whose ProgramArguments invoke java/-jar; review with launchctl list.
  • Linux — crontab / autostart: @reboot crontab entries or ~/.config/autostart/*.desktop files launching a JRE; audit crontab -l and the autostart dirs.
  • Windows Security 4698 — scheduled-task creation with an action pointing at javaw.exe -jar.
  • Sysmon Event 11.jar, config.dat, or .lock written into Temp/AppData/Startup.
  • Sysmon Event 13 / Registry auditing — Run-key values referencing a Java runtime.
  • Proxy / DNS logs — requests to pastebin.com (raw paste paths) originating from a Java user-agent or host running Java.
08

CrowdStrike LogScale CQL Hunt Queries

Pick your tenant's cloud first — every "Open in Falcon" button below uses this selection.
Q1 · Java spawned by an Office / script-host lure
CONF HIGHFP MEDCOST LOW

Looks for: a Java runtime launched by an Office app or script host — the QuimaRAT dropper detonating. FP: some enterprise Java LOB apps launch via scripts; baseline and exclude known internal launchers.

// HUNT: QuimaRAT lure-parent launches Java
// MITRE: T1204.002, T1059.007  | CONF: high  FP: med  COST: low
// REQUIRES: ProcessRollup2
// TUNING: exclude approved script-launched Java LOB apps
#event_simpleName=/ProcessRollup2|SyntheticProcessRollup2/
| ParentBaseFileName=/^(winword|excel|powerpnt|outlook|wscript|cscript|mshta|hh)\.exe$/i
| FileName=/^javaw?\.exe$/i
| table([ComputerName, UserName, ParentBaseFileName, FileName, CommandLine], limit=200)
Q2 · Java executing a JAR from a temp path
CONF HIGHFP MEDCOST LOW

Looks for: javaw.exe -jar where the JAR lives in a user-writable/temp path — QuimaRAT payload execution. FP: some updaters run JARs from ProgramData; confirm the JAR name/signature and pair with persistence (Q3–Q5).

// HUNT: QuimaRAT JAR from temp/appdata
// MITRE: T1059.007  | CONF: high  FP: med  COST: low
// REQUIRES: ProcessRollup2
// TUNING: allowlist signed internal JAR paths
#event_simpleName=/ProcessRollup2|SyntheticProcessRollup2/
| FileName=/^javaw?\.exe$/i
| CommandLine=/-jar/i
| CommandLine=/AppData|\\Temp\\|Downloads|ProgramData|\\Users\\Public/i
| table([ComputerName, UserName, CommandLine, ParentBaseFileName, SHA256HashData], limit=200)
Q3 · Run-key persistence pointing at Java
CONF HIGHFP MEDCOST LOW

Looks for: an autostart Run value whose data invokes a Java runtime and a JAR. FP: a few legitimate Java apps register Run keys; scope the value data to -jar from a temp/user path.

// HUNT: QuimaRAT Run-key persistence
// MITRE: T1547.001  | CONF: high  FP: med  COST: low
// REQUIRES: AsepValueUpdate
// TUNING: exclude signed vendor Java autostarts
#event_simpleName=/AsepValueUpdate|RegGenericValueUpdate/
| RegObjectName=/\\CurrentVersion\\Run/i
| RegStringValue=/javaw?(\.exe)?.*-jar/i
| table([ComputerName, UserName, RegObjectName, RegValueName, RegStringValue], limit=200)
Q4 · Scheduled task launching javaw -jar
CONF MEDFP MEDCOST LOW

Looks for: task creation via schtasks.exe whose action runs a Java runtime with -jar. FP: exclude sanctioned Java maintenance tasks by name.

// HUNT: QuimaRAT scheduled-task persistence
// MITRE: T1053.005  | CONF: med  FP: med  COST: low
// REQUIRES: ProcessRollup2
// TUNING: allowlist approved Java task names
#event_simpleName=/ProcessRollup2|SyntheticProcessRollup2/
| FileName=/^schtasks\.exe$/i
| CommandLine=/javaw?(\.exe)?.*-jar/i
| table([ComputerName, UserName, CommandLine, ParentBaseFileName], limit=200)
Q5 · JAR / LNK written to a Startup folder
CONF MEDFP MEDCOST LOW

Looks for: a .jar or .lnk dropped into a Startup directory. FP: installers occasionally place Startup shortcuts; verify the target resolves to a Java payload.

// HUNT: QuimaRAT Startup-folder persistence
// MITRE: T1547.001  | CONF: med  FP: med  COST: low
// REQUIRES: PeFileWritten/FileCreateInfo
// TUNING: exclude known installer shortcuts
#event_simpleName=/PeFileWritten|NewExecutableWritten|FileCreateInfo/
| TargetFileName=/Start Menu\\Programs\\Startup/i
| TargetFileName=/\.jar$|\.lnk$/i
| table([ComputerName, UserName, TargetFileName], limit=200)
Q6 · Java process reaching Pastebin (C2 rotation)
CONF MEDFP MEDCOST LOW

Looks for: DNS resolution of pastebin.com attributed to a Java process — the optional C2-host update channel. FP: developers legitimately hit Pastebin; scope to Java-context requests and correlate with Q2 execution.

// HUNT: QuimaRAT Pastebin C2-rotation lookup
// MITRE: T1102, T1105  | CONF: med  FP: med  COST: low
// REQUIRES: DnsRequest
// TUNING: exclude developer workstations / CI hosts
#event_simpleName=/DnsRequest/
| DomainName=/(^|\.)pastebin\.com$/i
| ContextBaseFileName=/^javaw?\.exe$/i
| table([ComputerName, DomainName, ContextBaseFileName], limit=200)
Q7 · config.dat / .lock runtime artifacts
CONF MEDFP MEDCOST LOW

Looks for: the QuimaRAT runtime files — an XOR config.dat and a temp .lock single-instance guard. FP: both names are generic; require a nearby Java process (correlate with Q2) before actioning.

// HUNT: QuimaRAT runtime artifacts (config.dat / .lock)
// MITRE: T1027  | CONF: med  FP: med  COST: low
// REQUIRES: FileCreateInfo/PeFileWritten
// TUNING: correlate with a Java process on same host
#event_simpleName=/PeFileWritten|NewExecutableWritten|FileCreateInfo/
| TargetFileName=/\\config\.dat$|\\Temp\\[^\\]+\.lock$/i
| table([ComputerName, UserName, TargetFileName], limit=200)
Q8 · Java process sustained outbound C2
CONF MEDFP HIGHCOST MED

Looks for: external connections attributed to a Java process on non-web ports (candidate TCP/WebSocket C2). FP: high — Java apps make many outbound connections; use as a pivot after Q1/Q2, exclude RFC1918 and known SaaS. Replace the placeholder C2 once identified.

// HUNT: QuimaRAT Java outbound C2 (pivot)
// MITRE: T1071.001, T1573.002  | CONF: med  FP: high  COST: med
// REQUIRES: NetworkConnectIP4
// TUNING: exclude internal ranges + sanctioned SaaS; pivot from Q1/Q2 hosts
#event_simpleName=/NetworkConnectIP4/
| ContextBaseFileName=/^javaw?\.exe$/i
| RemotePort!=80
| RemotePort!=443
| RemoteAddressIP4!=/^(10\.|192\.168\.|172\.1[6-9]\.|172\.2[0-9]\.|172\.3[0-1]\.|127\.)/
| table([ComputerName, RemoteAddressIP4, RemotePort, ContextBaseFileName], limit=200)
09

CrowdStrike Custom IOA Recommendations

IOA NamePatternExclusionsAction
Office/Script → Java SpawnParentImage Office/wscript/cscript/mshta → child javaw.exeApproved script-launched Java LOB appsDetect
Java JAR from Tempjavaw.exe -jar with JAR path in Temp/AppData/DownloadsSigned internal JAR pathsDetect
Java Run-Key AutostartRun-key value data matching javaw…-jarSigned vendor Java autostartsDetect

All queries are Investigate-only until you baseline Java usage. Promote the Office→Java IOA first (narrowest, highest fidelity). Do not enable prevention on the Pastebin or generic outbound queries — both are FP-prone pivots.

10

Machine-Readable IOC Appendix

No vetted atomic IOCs are public. The CSV uses REPLACE_WITH_… placeholders — fill from your own detonation or a trusted feed before importing as prevent.

Falcon IOC Management CSVbulk import (placeholders)
type,value,action,severity,expiration,description,tags
sha256,REPLACE_WITH_SHA256,detect,high,2026-10-10,QuimaRAT JAR payload,malware:QuimaRAT
domain,REPLACE_WITH_C2,detect,high,2026-10-10,QuimaRAT C2,malware:QuimaRAT
ipv4,REPLACE_WITH_C2_IP,detect,high,2026-10-10,QuimaRAT C2,malware:QuimaRAT
domain,pastebin.com,hunt,low,2026-08-10,QuimaRAT C2-rotation channel (context-scope only),malware:QuimaRAT
Behavioral Signatureshunt logic
Office / wscript / cscript / mshta spawning javaw.exe
javaw.exe -jar with a JAR in Temp / AppData / Downloads / ProgramData
Run key / Scheduled task / Startup entry invoking javaw -jar
config.dat (repeating-key XOR) written beside a JAR
.lock single-instance file in the OS temp directory (Java FileLock)
Java process resolving pastebin.com (C2-host rotation)
macOS LaunchAgent plist / Linux crontab @reboot / .desktop autostart launching java
Operator Toolkit / Namingwatchlist
Quima Control (the RAT) — 74 Windows / 46 macOS+Linux modules
Quima Builder — lure output: JAR/EXE/APP/SH/BAT/VBS/LNK/JS/DOCM/XLSM/CHM/MSC/CPL
Quima Loader — browser-cache payload delivery
Quima Dropper — HTML / SVG payload generator
C2 protocol messages: HANDSHAKE, HEARTBEAT (AES-256)
Cross-OS Persistence Auditchecklist
Windows: HKCU/HKLM ...\CurrentVersion\Run values invoking java -jar
Windows: scheduled tasks with a javaw -jar action; Startup .jar/.lnk
macOS:   ~/Library/LaunchAgents + /Library/LaunchAgents plists calling java
Linux:   crontab -l @reboot java ; ~/.config/autostart/*.desktop
All:     JAR + config.dat pair in a user-writable directory
Egress:  Java-context requests to pastebin.com raw paths
11

Detection Validation Gates

GateCheckPass Criteria
Telemetry readyProcessRollup2 + AsepValueUpdate + DnsRequest flowing across OS fleetAll three present in last 24h
Benign baselineRun Q1/Q2 over 7 days; catalogue legitimate script-launched Java + JAR-from-ProgramData updatersExclusion list built before alerting
Positive testIn a lab, launch a benign -jar from %TEMP% via a VBS; run Q1 + Q2Both fire
Positive testAdd an HKCU Run value invoking javaw -jar; run Q3Q3 fires
PromotionOffice→Java IOA zero FPs over baseline windowPromote to detect-only IOA
12

Hardening — Tiered

Immediate (this week)
  • Change the default handler for .jar so double-clicking opens a text editor, not the JRE, on non-developer endpoints (MITRE M1042).
  • Block script-host lure formats — disable Windows Script Host or restrict .vbs/.js execution via GPO where not needed (M1042, M1038).
  • Enable Office ASR rules — block Office apps from creating child processes and from launching executable content (M1040).
Near term (1–4 weeks)
  • Remove/scope the JRE — uninstall Java where unused; where required, restrict to managed paths and mark for allowlisting (M1038, CIS).
  • Application control (WDAC/AppLocker) — allowlist approved JARs and Java runtimes; block execution from Temp/AppData/Downloads (M1038).
  • Egress filtering — restrict outbound to an allowlist; monitor/limit Pastebin raw access from endpoints (M1037).
Strategic (1–3 months)
  • macOS/Linux autostart control — monitor LaunchAgent, crontab, and .desktop creation via MDM/config management; alert on Java targets (M1047).
  • Attachment sandboxing — detonate inbound JAR/DOCM/CHM/LNK at the mail gateway before delivery (M1049, M1021).
  • User execution hardening — mark-of-the-web enforcement + phishing-resistant awareness on double-clickable lures (M1017, M1021).
13

Deployable Playbooks

1 · Re-associate .jar away from the JRE (PowerShell, per-user)

# Point .jar at notepad on non-developer endpoints so lures don't auto-run in the JVM
cmd /c assoc .jar=jarfile
cmd /c ftype jarfile="%SystemRoot%\system32\notepad.exe" "%1"
# Reverse on developer machines that legitimately need java -jar.

2 · Enable Office ASR (block child process + executable content)

# Block all Office apps from creating child processes
Add-MpPreference -AttackSurfaceReductionRules_Ids d4f940ab-401b-4efc-aadc-ad5f3c50688a -AttackSurfaceReductionRules_Actions Enabled
# Block executable content from email client and webmail
Add-MpPreference -AttackSurfaceReductionRules_Ids be9ba2d9-53ea-4cdc-84e5-9b1eeee46550 -AttackSurfaceReductionRules_Actions Enabled

3 · Hunt Run-key Java persistence (PowerShell)

$paths = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Run',
         'HKLM:\Software\Microsoft\Windows\CurrentVersion\Run'
foreach ($p in $paths) {
  Get-ItemProperty -Path $p -ErrorAction SilentlyContinue |
    ForEach-Object { $_.PSObject.Properties } |
    Where-Object { $_.Value -match 'javaw?.*-jar' } |
    Select-Object Name, Value
}

4 · macOS LaunchAgent sweep (shell)

for d in ~/Library/LaunchAgents /Library/LaunchAgents; do
  grep -lri -e 'java' -e '\.jar' "$d" 2>/dev/null
done
# Review each hit; unload with: launchctl unload -w <plist> after triage.
14

Containment Runbook

PhaseActionsOwnerEvidence
IsolateNetwork-contain hosts running a suspicious Java payload or reaching the C2; capture the JAR + config.datSOC / IRFalcon containment, RTR file pull
EradicateKill the Java process, remove the JAR/config.dat/.lock, delete Run key / task / Startup / LaunchAgent / crontab entriesIRRTR log, autostart export
EradicateRotate credentials, browser sessions, and clipboard-exposed secrets on affected usersIdAMReset log
RecoverDetonate the recovered JAR to extract atomic IOCs (hash/C2); import as prevent; replace placeholders in §10IR / TISandbox report
RecoverConfirm no residual persistence across all three OS families; enable the Office→Java IOASOCClean 72h window
15

Detection Coverage Map

TechniqueBehaviorCQLIOACoverage
T1204.002Lure-parent launches JavaQ1YesGood
T1059.007JAR from tempQ2CandidateGood
T1547.001Run-key persistenceQ3CandidateGood
T1053.005Scheduled taskQ4NoPartial
T1547.001Startup folderQ5NoPartial
T1102 / T1105Pastebin C2 rotationQ6NoPartial
T1027config.dat / .lock artifactsQ7NoPartial
T1071.001 / T1573.002Java C2 beaconQ8NoWeak (FP-heavy pivot)
T1543.001 / T1053.003macOS LaunchAgent / Linux crontabnativeNoPartial
T1555 / T1125 / T1115Cred theft / webcam / clipboardnativeNoGap

Known gaps: atomic IOCs (hash/C2) are unpublished — Q8 is an FP-heavy pivot until you detonate and pin real infrastructure; on-host collection actions (credential/webcam/clipboard) are not distinguishable in process telemetry alone. Prioritize Q1–Q3, detonate a recovered sample to harden Q8, and validate Q3/Q5/Q7 field behavior in your tenant before promoting.

16

Hunt Summary Ticket

TITLE:      QuimaRAT — cross-platform Java RAT (MaaS) behavioral hunt
SEVERITY:   High (active MaaS; Windows/macOS/Linux)
SCOPE:      All endpoints with a JRE (or bundled-JRE lures); mail-delivered lures
HYPOTHESIS: A builder-generated lure detonated a QuimaRAT JAR and installed
            per-OS autorun persistence with AES-256 C2 (Pastebin rotation).
QUERIES:    Q1 lure-parent Java · Q2 JAR-from-temp · Q3 Run-key (start here)
            Q4 task · Q5 startup · Q6 pastebin · Q7 artifacts · Q8 C2 pivot
DO FIRST:   Q1 (Office/script -> javaw) + Q2 (-jar from temp)
FINDINGS:   ____________________________________________
GAPS:       No public atomic IOCs; on-host collection actions; Q8 FP-heavy
ACTIONS:    Re-associate .jar; Office ASR; app-control; detonate to pin C2
OWNER:      ____________________
VERSION:    v0.2 · 2026-07-10
17

Changelog

v0.22026-07-24CQL correctness pass. All table() calls now carry an explicit row limit: the default is 200 and truncation is silent, so a capped result was indistinguishable from a complete one. Atomic-IOC sweeps (filters over 5+ hashes or C2 IPs) use limit=max so a wide infection is never silently under-scoped; behavioural hunts use limit=200, where exceeding the cap indicates the query needs tuning. Where present, event names that do not exist in the Falcon data model were corrected (e.g. ServiceInstalled is a Sysmon concept, not a Falcon event; ElfFileWritten is ELFFileWritten) — such queries could never return a row. No detection logic, fields, or IOCs changed.
v0.12026-07-10Initial HuntPack — 8 CQL queries (behavioral), cross-OS persistence hunts, IOA recs, tiered hardening, playbooks, containment. Intel: LevelBlue SpiderLabs + The Hacker News (2026-07-06). Atomic IOCs unpublished — placeholders used.
18

References

TierSourceUsed ForAccess Date
1LevelBlue (SpiderLabs) — Novel Java-Based QuimaRAT Targets Windows, macOS, and LinuxArchitecture, persistence, artifacts, C2, evasion2026-07-10
2The Hacker News — New Java-Based QuimaRAT MaaS Built to Run on Windows, Linux, and macOSMaaS model, toolkit, builder formats, command counts2026-07-10
2SC Media — QuimaRAT targets Windows, Linux, macOS via MaaSCross-platform targeting confirmation2026-07-10