Skip to content

Threat Model — STRIDE Analysis


flowchart LR
subgraph ALTER[⚗️ THE ALTER]
direction TB
CHAMBER[🗄️ Chamber\nOverlayFS + Namespaces]
ARTIFACTS[📦 Artifacts\nPCAP · Telemetry · Memory]
end
subgraph WARD[🛡️ THE WARD]
direction TB
EXTRACT[🔍 extract-iocs]
TAGGER[🏷️ attack-tagger]
ANALYZE[📊 analyze-pcap]
end
subgraph SEAL[🔏 THE SEAL]
direction TB
ATTEST[✍️ Attestation]
SIGN[🔐 Signing]
WORM[💾 WORM Storage]
end
CHAMBER -->|raw evidence| ARTIFACTS
ARTIFACTS -->|PCAP| ANALYZE
ARTIFACTS -->|telemetry| EXTRACT
ARTIFACTS -->|memory| TAGGER
EXTRACT -->|IOCs| ATTEST
TAGGER -->|tags| ATTEST
ANALYZE -->|flows| ATTEST
ATTEST -->|evidence bundle| SIGN
SIGN -->|signed bundle| WORM
classDef alter fill:#1a0a2e,stroke:#8b5cf6,stroke-width:2px,color:#e9d5ff
classDef ward fill:#0f172a,stroke:#22d3ee,stroke-width:2px,color:#a5f3fc
classDef seal fill:#14532d,stroke:#84cc16,stroke-width:2px,color:#d9f99d
class CHAMBER,ARTIFACTS alter
class EXTRACT,TAGGER,ANALYZE ward
class ATTEST,SIGN,WORM seal

#STRIDEThreatLikelihoodImpactCurrent MitigationsRecommended Mitigations
S1SpoofingSample Substitution — Adversary swaps malware sample pre-detonationMediumCriticalContent-addressed storage (SHA-256), immutable sample registryVeil of Integrity: Signed sample manifests, TPM-bound sample sealing, in-toto attestation
S2SpoofingWorker Impersonation — Compromised analysis node claims false resultsMediumHighmTLS between Ward components, SPIFFE identityWard Sentinel: Short-lived workload certs, attestation-based admission, zero-trust mesh
S3SpoofingTPM Key Extraction — Physical/local attacker extracts sealing keysLowCriticalTPM 2.0 with PCR binding, sealed storageObsidian Vault: TPM-locked keys, PCR policy binding to measured boot, anti-hammering
T1TamperingPCAP/Telemetry Modification — Alter network captures or syscall logs post-collectionHighCriticalAppend-only artifact store, Merkle tree hashingChronicle Chain: Hash-linked artifact log, periodic anchoring to transparency log, WORM enforcement
T2TamperingRule Injection — Malicious YARA/Sigma rules injected into analysis pipelineMediumHighRule registry with signed packages, review workflowGrimoire Ward: Signed rule bundles, reproducible builds, canary rule testing, diff attestation
T3TamperingYARA Rule Corruption — Bit-flip or supply-chain compromise of detection rulesLowMediumChecksum verification, version pinningSigil Guard: Reproducible rule compilation, SBOM for rules, automated regression on rule change
R1RepudiationUnsigned Evidence — Artifacts lack cryptographic proof of originHighCriticalNone (gap)Seal of Witness: Mandatory cosign/Notary v2 signing, RFC 3161 timestamps, transparency log
R2RepudiationMissing Chain of Custody — No verifiable handoff log between Alter → Ward → SealHighHighBasic audit loggingLedger of Custody: Immutable transfer receipts, CSP (Custody Sequence Protocol), witness quorum
R3RepudiationNo Attestation — Analysis results cannot be tied to specific chamber executionMediumHighChamber metadata in artifactsAttestation Root: In-toto layout, SLSA provenance, TPM quote over chamber PCRs
I1Info DisclosureSample Exfiltration — Malware leaks via chamber network covert channelMediumCriticalNetwork namespace isolation, egress denyVeil of Silence: Zero-egress chamber, DNS sinkhole, TLS inspection, traffic shaping
I2Info DisclosureTelemetry Leakage — Sensitive host/system data in syscall/memory capturesHighHighRedaction filters, PII scrubbingMask of Anonymity: Differential privacy on telemetry, synthetic host profiles, kernel-level redaction
I3Info DisclosureSide-Channel Leakage — Timing/cache attacks reveal sample behavior to co-tenantsLowMediumDedicated chamber nodesSanctum Isolation: Single-tenant chambers, cache partitioning (CAT), constant-time artifact write
D1DoSChamber Resource Exhaustion — Malware consumes all CPU/RAM/disk in namespaceHighHighcgroups v2 limits, pids.max, memory.maxBound Crucible: Hard resource quotas, OOM kill priority, disk quota with reservation, watchdog
D2DoSPool Starvation — All chambers occupied, analysis queue backs up indefinitelyMediumHighQueue depth monitoring, autoscalingReservoir Protocol: Priority inversion prevention, dead-letter queue, burst capacity reservation
D3DoSTetragon/eBPF DoS — Malicious probe crashes kernel tracer, blinds observabilityLowCriticalTetragon health checks, fallback loggingAegis Fallback: Kernel auditd fallback, userspace syscall shim, probe validation sandbox
E1EoPNamespace Escape — Breakout from user/mount/net/pid namespace to hostMediumCriticalUser namespaces, seccomp, no-new-privsWarded Boundary: gVisor/Kata fallback, syscall whitelist, CRI-O with Kata, runtime class
E2EoPSudo Wrapper Abuse — Compromised analysis tool escalates via sudoers misconfigLowCriticalNo sudo in containers, capability dropKeyless Ward: Rootless throughout, capability bounding set, ambient capabilities denied
E3EoPDocker Socket Access — Chamber mounts /var/run/docker.sock, escapes to hostLowCriticalSocket not mounted by defaultSocket Seal: Podman rootless, socket activation with SELinux, socket proxy with ACL

sequenceDiagram
actor Adversary
participant Registry as 📜 Sample Registry
participant Chamber as 🗄️ Chamber
participant TPM as 🔐 TPM
participant Ward as 🛡️ Ward
Adversary->>Registry: Submit malicious sample (S1)
Registry->>Chamber: Dispatch sample (hash verified)
Chamber->>TPM: Seal sample hash to PCRs (S3)
Chamber->>Ward: Emit artifacts + attestation
Note over Ward: Verify attestation\nbefore processing
flowchart TD
ART[📦 Artifacts] -->|write| MERKLE[🔗 Merkle Log]
MERKLE -->|anchor| TRANS[📜 Transparency Log]
ART -->|verify| EXTRACT[🔍 extract-iocs]
ART -->|verify| TAGGER[🏷️ attack-tagger]
ART -->|verify| ANALYZE[📊 analyze-pcap]
subgraph TAMPER[Tampering Vectors]
T1[PCAP modification]
T2[Rule injection]
T3[YARA corruption]
end
T1 -.->|detected| MERKLE
T2 -.->|detected| GRMOIRE[📚 Grimoire Ward]
T3 -.->|detected| SIGIL[🛡️ Sigil Guard]
classDef detect fill:#7c3aed,stroke:#a855f7,color:#f5f5f5
class MERKLE,GRMOIRE,SIGIL detect
flowchart LR
CHAMBER[🗄️ Chamber] -->|1. Artifacts + PCR Quote| ATTEST[✍️ Attestation]
ATTEST -->|2. Signed Bundle| SIGN[🔐 Signing]
SIGN -->|3. WORM Write| WORM[💾 WORM]
WORM -->|4. Timestamp| TS[⏰ RFC3161 TSA]
TS -->|5. Anchor| LOG[📜 Transparency Log]
classDef seal fill:#14532d,stroke:#84cc16,color:#d9f99d
class ATTEST,SIGN,WORM,TS,LOG seal
graph TD
MALWARE[🦠 Malware] -->|covert channel| DNS[🌐 DNS]
MALWARE -->|timing| CACHE[💾 Cache]
MALWARE -->|syscalls| TELEM[📊 Telemetry]
DNS -->|blocked| VEIL[🕸️ Veil of Silence]
CACHE -->|partitioned| SANCTUM[🏰 Sanctum Isolation]
TELEM -->|redacted| MASK[🎭 Mask of Anonymity]
classDef defense fill:#0f172a,stroke:#22d3ee,color:#a5f3fc
class VEIL,SANCTUM,MASK defense
flowchart TB
subgraph CHAMBER[🗄️ Chamber]
CGROUP[cgroups v2]
SECCOMP[seccomp-bpf]
USERNS[User Namespace]
PIDNS[PID Namespace]
NETNS[Network Namespace]
MNTNS[Mount Namespace]
end
MALWARE[🦠 Malware] -->|fork bomb| PIDNS
MALWARE -->|mem exhaustion| CGROUP
MALWARE -->|syscall spray| SECCOMP
MALWARE -->|mount escape| MNTNS
MALWARE -->|net pivot| NETNS
MALWARE -->|uid map| USERNS
CGROUP -->|OOM kill| WATCHDOG[👁️ Watchdog]
SECCOMP -->|SIGSYS| TRAP[🪤 Syscall Trap]
USERNS -->|unprivileged| ROOTLESS[🚫 Rootless]
classDef layer fill:#1a0a2e,stroke:#8b5cf6,color:#e9d5ff
class CGROUP,SECCOMP,USERNS,PIDNS,NETNS,MNTNS layer

quadrantChart
title Risk Matrix: Likelihood × Impact
x-axis Low Likelihood --> High Likelihood
y-axis Low Impact --> High Impact
quadrant-1 🔴 Immediate Action
quadrant-2 🟠 High Priority
quadrant-3 🟡 Monitor
quadrant-4 🟢 Accept
"S1: Sample Substitution": [0.6, 0.95]
"S2: Worker Impersonation": [0.5, 0.75]
"S3: TPM Key Extraction": [0.15, 0.95]
"T1: PCAP Modification": [0.8, 0.9]
"T2: Rule Injection": [0.5, 0.8]
"T3: YARA Corruption": [0.2, 0.5]
"R1: Unsigned Evidence": [0.9, 0.95]
"R2: Missing Custody": [0.8, 0.8]
"R3: No Attestation": [0.5, 0.8]
"I1: Sample Exfiltration": [0.5, 0.95]
"I2: Telemetry Leakage": [0.75, 0.75]
"I3: Side-Channel": [0.2, 0.5]
"D1: Resource Exhaustion": [0.8, 0.8]
"D2: Pool Starvation": [0.5, 0.75]
"D3: Tetragon DoS": [0.15, 0.95]
"E1: Namespace Escape": [0.4, 0.95]
"E2: Sudo Abuse": [0.1, 0.95]
"E3: Docker Socket": [0.1, 0.95]

MitigationStatusComponentValidation
Content-addressed storage✅ ImplementedRegistrySHA-256 verification on dispatch
Append-only artifact log✅ ImplementedChamberMerkle root per detonation
cgroups v2 hard limits✅ ImplementedChamberCPU/RAM/pids/disk quotas
User namespaces + seccomp✅ ImplementedChamberRootless, no-new-privs, syscall filter
Network namespace zero-egress✅ ImplementedChamberDNS sinkhole, deny-all egress
mTLS Ward mesh🟡 PartialWardSPIFFE certs, need rotation automation
Signed rule bundles🟡 PartialWardcosign verify, need reproducible builds
Mandatory evidence signing❌ GapSealPriority 1: cosign/Notary v2 integration
Chain of custody ledger❌ GapSealPriority 1: CSP protocol design
In-toto attestation❌ GapSealPriority 2: SLSA provenance generation
TPM PCR binding🟡 PartialChamberPCR 0-7 measured, need policy sealing
gVisor/Kata fallback❌ PlannedChamberPriority 2: RuntimeClass for high-risk
Transparency log anchoring❌ PlannedSealPriority 2: Rekor/Trillian integration
Differential privacy telemetry❌ ResearchWardPriority 3: Evaluate utility tradeoff

TermMundane Meaning
AlterDetonation environment (chamber + artifact collection)
WardAnalysis pipeline (extract-iocs, attack-tagger, analyze-pcap)
SealEvidence attestation, signing, and WORM storage
VeilNetwork isolation / egress control
SanctumSingle-tenant, hardware-isolated chamber
GrimoireSigned, versioned rule registry (YARA, Sigma)
SigilCryptographic integrity marker (hash, signature)
ChronicleAppend-only, hash-linked artifact log
Ledger of CustodyImmutable transfer receipt chain
AegisFallback observability (auditd, userspace shim)
Obsidian VaultTPM-sealed key hierarchy
ReservoirChamber pool with priority/burst management

“A model unexamined is a ward unguarded.”

TriggerActionOwner
New chamber runtime (gVisor, Kata)Re-evaluate E1, E2, E3Platform
New analysis component addedAdd STRIDE row, update diagramsAnalysis
Supply chain incident (rule/pkg)Activate T2/T3 mitigationsSupply Chain
QuarterlyFull review, update heat mapSecurity
Post-incidentAdd specific threat, verify mitigationsIR Team

  1. Seal the Evidence — Implement mandatory cosign signing + RFC 3161 timestamps (R1, R2, R3)
  2. Bind the Ledger — Design Custody Sequence Protocol for Alter→Ward→Seal transfers (R2)
  3. Harden the Veil — Deploy zero-egress chamber with DNS sinkhole + TLS inspection (I1)
  4. Forge the Aegis — Implement auditd fallback + userspace syscall shim (D3)
  5. Anchor the Chronicle — Integrate Rekor transparency log for artifact anchoring (T1)

Sealed with the Sign of the Alter. Let no artifact pass unchallenged, no evidence stand unsealed, no threat dwell unmeasured.

Version: 1.0.0 | Classification: ARCANUM RESTRICTED | Custodian: Malware Research Cabal