Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions docs/DETECTION_GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,15 @@ not mean the simulator performs the technique.

## Five correlated signals

## Benign-lookalike Tuning Matrix

| Synthetic Action | Common Benign Explanation | Useful Enrichment Fields | Analyst Verification Question | Why No Standalone Alert |
| :--- | :--- | :--- | :--- | :--- |
| Cross-process handle | Debuggers, endpoint agents, or administrative tools requesting access. | signer, path, user, integrity level | Is the source binary a signed administrative/security tool? | Too common in normal OS/software operations to alert on alone. |
| Remote memory allocation | Valid inter-process communications or legitimate monitoring apps. | parentage, prevalence, acquisition quality | Does the targeting process regularly allocate memory in peer processes? | Creates high false-positive rates if flagged independently. |
| Remote thread context write | Legitimate thread manipulation by OS utilities or crash reporting tools. | signer, path, parentage | Is this execution part of an expected application framework task? | Context switching and thread writes happen natively in many frameworks. |
| Remote thread execution | System diagnostics, profilers, or routine sub-routine execution. | user, path, prevalence | Was the target thread spawned by an authenticated system service? | Generating alerts here without context swamps analysts with noise. |
| Unbacked memory execution | Dynamic JIT compilers or runtime script environments. | acquisition quality, integrity level, signer | Is the target process running a JIT engine (e.g., V8, .NET)? | JIT engines naturally execute unbacked memory blocks during standard runtime. |
### 1. Cross-process handle

One fictional process requests access to a different fictional process. This is
Expand Down