EchoTrail Insights

Ground your SOC agent on what Windows processes actually do.

Windows process behavior data for SOC tools and AI agents: prevalence, ancestry, paths, and hashes for over 40,000 executables, from over 300 million real executions, growing every day. Query it by REST, plug it in by MCP, or take the whole dataset.

REST API

GET a process profile, a parent-child check, a process tree, or a semantic search. POST an event for analysis or a batch of names. Structured JSON with prevalence and ancestry.

GET /v1/process/rundll32.exe
Host: api.echotrail.io
Authorization: Bearer <key>
Get a free key

MCP server

The same data as tools for Claude, Codex, Cursor, or any MCP client, plus hash and path checks that are MCP-only today. One config block, same key.

"echotrail": {
  "url": "https://api.echotrail.io/mcp"
}
Set up MCP

Dataset

The whole dataset as an export under a non-exclusive, internal-use license, for vendors who want the data inside their own system.

40,000+ processes
90,000+ hashes
90,000+ parent-child pairs
See what is in it

One question, answered from the data

Built from the current rundll32.exe record.

1 · The question

An alert says rundll32.exe ran on a workstation. Who normally launches it, and does the parent matter?

rundll32.exe is a signed Microsoft component listed in LOLBAS.

2 · What the data shows

Top parents across 688,660 observed executions:

  • svchost.exe46.44%
  • explorer.exe20.09%
  • rundll32.exe19.05%

Listed in LOLBAS. ATT&CK: T1218.011, T1055.001, T1036.005.

3 · What the API returns

check_parent_child with the alert's parent (say winword.exe) returns whether that pair was observed, its share of rundll32.exe launches, and a verdict: normal, uncommon, rare, or never_observed.

Free returns that summary. Team returns the full parent list, paths, hashes, and the written guidance.

See the full rundll32.exe record →

What comes back

The same request on the free tier and on Team. Free includes summary responses. Team includes the detailed behavior record.

GET /v1/process/rundll32.exe

Free · summary

200 OK
{
  "name": "rundll32.exe",
  "known": true,
  "category": "Operating System",
  "publisher": "Microsoft",
  "description": "RunDLL32 (rundll32.exe) executes DLL files by calling a specified export function.",
  "most_common_parent": {
    "name": "svchost.exe",
    "share_pct": 46.44,
    "verdict": "normal"
  },
  "full_record_available": true,
  "upgrade_url": "https://echotrail.io/pricing/"
}

Team and above · full record

200 OK

The current rundll32.exe record. Lists are cut to the top three and empty fields are hidden for display; the API returns them.

{
  "process_name": "rundll32.exe",
  "description": "RunDLL32 (rundll32.exe) executes DLL files by calling a specified export function. It allows Windows and applications to run code stored in DLLs without a standalone executable. It is one of the most commonly abused LOLBins due to its ability to execute arbitrary code from DLLs.",
  "intel": {
    "normal_behavior": "Located in C:\\Windows\\System32 or C:\\Windows\\SysWOW64. Common parents include svchost.exe, explorer.exe, and spoolsv.exe. Can spawn itself recursively. Used legitimately for control panel applets, shell extensions, and DLL registration.",
    "suspicious_indicators": "Running from a non-standard path. Command-line pointing to DLLs in temp directories, user profiles, or download folders. Executing DLLs via URL (rundll32.exe javascript:\"..\"). Spawning shells (cmd.exe, powershell.exe). Making outbound network connections. Command-line referencing unusual export function names. Being launched by Office applications or script interpreters.",
    "abuse_patterns": "Proxy execution: attackers use rundll32 to execute malicious DLLs, bypassing application whitelisting since rundll32 is a signed Microsoft binary. JavaScript execution: rundll32.exe javascript:\"\\..\\mshtml,RunHTMLApplication\" can execute arbitrary JavaScript. DLL sideloading: placing a malicious DLL where rundll32 will find it. Payload delivery: malware droppers often use rundll32 to execute their DLL payloads. Cobalt Strike and other C2 frameworks frequently use rundll32 for DLL injection and execution.",
    "detection_guidance": "High-confidence: rundll32.exe executing DLLs from temp/user profile directories. rundll32.exe with javascript: in the command-line. rundll32.exe making outbound network connections. rundll32.exe spawned by Office applications. Medium-confidence: rundll32.exe with unusual export function names. rundll32.exe loading DLLs not in System32 or known application directories. Monitor Sysmon Event ID 1 (command-line) and Event ID 7 (DLL loads).",
    "false_positive_notes": "Very common in legitimate Windows operations. Shell extensions, control panel applets, and printer drivers use rundll32. explorer.exe launching rundll32 is normal for shell operations. svchost.exe spawning rundll32 for system maintenance is expected. Focus on the DLL path and export function in the command-line rather than rundll32 execution alone.",
    "mitre_techniques": [
      "T1218.011",
      "T1055.001",
      "T1036.005"
    ]
  },
  "classification": {
    "category": "Operating System",
    "publisher": "Microsoft",
    "is_lolbin": true,
    "risk_level": "high",
    "related_processes": [
      "cmd.exe",
      "powershell.exe",
      "explorer.exe"
    ]
  },
  "executions": {
    "total": 688986
  },
  "parents": {
    "total": 688918,
    "top": [
      {
        "name": "svchost.exe",
        "count": 319953,
        "percentage": 46.4428
      },
      {
        "name": "explorer.exe",
        "count": 138407,
        "percentage": 20.0905
      },
      {
        "name": "rundll32.exe",
        "count": 131240,
        "percentage": 19.0502
      }
    ]
  },
  "children": {
    "top": [
      {
        "name": "rundll32.exe",
        "count": 131240
      },
      {
        "name": "WinSAT.exe",
        "count": 2494
      },
      {
        "name": "winsat.exe",
        "count": 1866
      }
    ]
  },
  "grandparents": {
    "top": [
      {
        "name": "services.exe",
        "count": 188138
      },
      {
        "name": "explorer.exe",
        "count": 121434
      },
      {
        "name": "userinit.exe",
        "count": 61625
      }
    ]
  },
  "paths": {
    "total": 688986,
    "top": [
      {
        "path": "C:\\Windows\\System32",
        "count": 673066,
        "percentage": 97.6894
      },
      {
        "path": "C:\\Windows\\SysWOW64",
        "count": 15494,
        "percentage": 2.2488
      },
      {
        "path": "C:\\WINDOWS\\System32",
        "count": 226,
        "percentage": 0.0328
      }
    ]
  }
}

One dataset, over 300 million process executions observed in the wild, growing every day.

Real environments, not a sandbox

Over 300 million process executions from production endpoints across many organizations, so “normal” means what actually runs in the wild, and it grows every day.

Start free, go deep

Over 2,500 process pages are free, no account needed. The full dataset, over 40,000 executables, is one API key away. The Data

Built by detection engineers

EchoTrail has published Insights since 2018, from people who ran detection at the FBI, CrowdStrike, and Expel. Solutions

Most-searched processes

All free pages →

Every page is free to read. The API returns the same record as JSON under the license of your plan.

Rocky the raccoon

Explore the data with Rocky

Rocky is the free chat demo of this dataset. Ten questions a day, no account, answered from the same records the API returns.

Open the demo

We also do detection engineering consulting.

Detection rule libraries, detection-as-code pipelines, and AI SOC tooling. Fixed scope, fixed price, working code you own. Start with our field reference, The Detection Engineering Lifecycle.

See Solutions →