Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
elastic avatar

Security Generate Security Sample Data

  • 2.1k installs
  • 546 repo stars
  • Updated July 22, 2026
  • elastic/agent-skills

security-generate-security-sample-data seeds Elastic Security with ECS events, attacks, and synthetic alerts.

About

The security-generate-security-sample-data skill populates Elastic Security dashboards, Alerts tab, and Attack Discovery with realistic sample data. It generates ECS-compliant events, multi-step attack scenarios, and synthetic alert documents for demos, POCs, detection rule testing, and dashboard validation. Requires Node.js 22+, network access to Kibana and Elasticsearch, and KIBANA_URL plus API key or username/password plus Elasticsearch URL or cloud ID credentials. Quick start path generates everything and opens Kibana with zero-friction defaults. Use when demoing Elastic Security, testing detection rules, or seeding POC environments without production traffic. ECS-compliant security events and multi-step attack scenarios Synthetic alerts for dashboards, Alerts tab, and Attack Discovery Requires Node 22+, Kibana and Elasticsearch credentials via env vars Zero-friction quick start generates data and opens Kibana Supports detection rule testing and security POC seeding security-generate-security-sample-data seeds Elastic Security with ECS events, attacks, and synthetic alerts Seeded dashboards and alerts with ECS-compliant attack scenarios for testing User demos Elastic Security,.

  • ECS-compliant security events and multi-step attack scenarios.
  • Synthetic alerts for dashboards, Alerts tab, and Attack Discovery.
  • Requires Node 22+, Kibana and Elasticsearch credentials via env vars.
  • Zero-friction quick start generates data and opens Kibana.
  • Supports detection rule testing and security POC seeding.

Security Generate Security Sample Data by the numbers

  • 2,125 all-time installs (skills.sh)
  • +161 installs in the week ending Aug 4, 2026 (Skillselion tracking)
  • Ranked #283 of 2,203 Security skills by installs in the Skillselion catalog
  • Security screen: HIGH risk (skills.sh audit)
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
At a glance

security-generate-security-sample-data capabilities & compatibility

Capabilities
ecs event generation · attack scenario synthesis · alert seeding · kibana demo setup · detection rule testing data
Works with
elasticsearch
Use cases
security audit · testing
npx skills add https://github.com/elastic/agent-skills --skill security-generate-security-sample-data

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs2.1k
repo stars546
Security audit3 / 3 scanners passed
Last updatedJuly 22, 2026
Repositoryelastic/agent-skills

How do I populate Elastic Security with realistic demo or test security data?

Generate ECS-compliant security events, attack scenarios, and synthetic alerts for Elastic Security demos and detection rule testing.

Who is it for?

Security engineers demoing Elastic or validating detection rules in POCs.

Skip if: Production incident response on live attacker traffic without synthetic scope.

When should I use this skill?

User demos Elastic Security, tests detection rules, or needs security sample data.

What you get

Seeded dashboards and alerts with ECS-compliant attack scenarios for testing.

  • Synthetic security event logs
  • Attack scenario datasets
  • Test alert fixtures

By the numbers

  • Supports 5 integration packages: system, endpoint, windows, aws, and okta
  • Generates Windows logon events 4624 and 4625 plus process creation 4688

Files

SKILL.mdMarkdownGitHub ↗

Generate Security Sample Data

Generate ECS-compliant security events, multi-step attack scenarios, and synthetic alert documents that populate Elastic Security dashboards, the Alerts tab, and Attack Discovery.

Quick start

For a zero-friction experience that generates everything and opens Kibana:

node skills/security/generate-security-sample-data/scripts/demo-walkthrough.js

Workflow

- [ ] Step 1: Set environment variables
- [ ] Step 2: Generate sample data
- [ ] Step 3: Explore in Kibana
- [ ] Step 4: Clean up when done

Step 1: Set environment variables

export ELASTICSEARCH_URL="https://your-project.es.region.aws.elastic.cloud"
export ELASTICSEARCH_USERNAME="admin"
export ELASTICSEARCH_PASSWORD="your-password"
export KIBANA_URL="https://your-project.kb.region.aws.elastic.cloud"

Step 2: Generate sample data

Generate everything at once
node skills/security/generate-security-sample-data/scripts/sample-data.js \
  system endpoint okta aws windows --scenarios --alerts
Generate only events
node skills/security/generate-security-sample-data/scripts/sample-data.js \
  system endpoint --count 100
Generate only attack scenarios
node skills/security/generate-security-sample-data/scripts/sample-data.js --scenarios
Generate only synthetic alerts
node skills/security/generate-security-sample-data/scripts/sample-data.js --alerts

Step 3: Explore in Kibana

After generating data, direct the user to these pages:

  • Security > Alerts — synthetic alerts with MITRE ATT&CK mappings
  • Security > Attack Discovery — requires an LLM connector to analyze alerts
  • Security > Hosts — host activity from sample events
  • Security > Overview — summary of all security data
  • Discover — raw events across all data streams

Step 4: Clean up when done

node skills/security/generate-security-sample-data/scripts/sample-data.js --cleanup

What gets generated

Sample data spans 5 packages (system, endpoint, windows, aws, okta) and 4 focused attack scenarios covering the most common demo themes: Windows credential theft, AWS cloud privilege escalation, Okta identity takeover, and a full ransomware kill chain. Synthetic alert documents are indexed into .alerts-security.alerts-default with MITRE ATT&CK mappings, severity levels, and risk scores.

All events use RFC 5737 / RFC 2606 safe addresses. For full tables of packages, scenarios, and alerts see references/sample-data-reference.md.

Continuous mode

Stream events to simulate a live environment:

node skills/security/generate-security-sample-data/scripts/sample-data.js \
  --continuous --interval 15

Every 5th batch includes an attack scenario; every 10th batch adds synthetic alerts. Press Ctrl+C to stop.

Tool reference

sample-data.js

FlagDescription
--count, -nEvents per package (default: 50)
--scenariosRun all attack simulation scenarios
--scenario NAMERun a specific scenario
--alertsGenerate synthetic alert documents
--cleanupRemove all sample data and alerts
--continuousStream live events (Ctrl+C to stop)
--interval NSeconds between continuous batches (default: 30)
--json, -jOutput results as JSON
--yes, -ySkip confirmation prompts

demo-walkthrough.js

Zero-friction runner that generates everything and opens Kibana.

FlagDescription
--cleanupRemove all sample data, alerts, case
--continuousGenerate then stream live events
--count NEvents per package (default: 50)
--interval NSeconds between batches (default: 30)

Examples

Quick demo for a stakeholder

"Set up a demo environment so I can show Attack Discovery to my VP."
node skills/security/generate-security-sample-data/scripts/demo-walkthrough.js

Targeted scenario testing

"Generate only the ransomware attack chain to test our detection rules."
node skills/security/generate-security-sample-data/scripts/sample-data.js \
  --scenario ransomwareChain --alerts

Simulating a live SOC

"Keep generating events so the dashboards stay active during the demo."
node skills/security/generate-security-sample-data/scripts/demo-walkthrough.js --continuous

Cleaning up after a demo

"Remove all sample data from my project."
node skills/security/generate-security-sample-data/scripts/sample-data.js --cleanup

Guidelines

  • All generated documents are tagged with tags: ["elastic-security-sample-data"] for safe cleanup. The cleanup command

only deletes documents with this marker.

  • If marker fields are not indexed in a data stream, cleanup falls back to scanning _source.tags for matching sample

documents from the last 14 days.

  • Synthetic alerts are indexed directly into .alerts-security.alerts-default — they do not require detection rules to

be installed or enabled.

  • Attack Discovery requires an LLM connector (OpenAI, Anthropic, Google Gemini, or similar) configured in Kibana under

Stack Management > Connectors. The "Complete" project tier unlocks the feature, but the connector must be set up separately.

  • Use the case-management skill for creating investigation cases from alerts.

Production use

  • Do not run against production clusters unless you intend to inject synthetic data alongside real alerts. Sample

events and alerts are tagged for cleanup but will appear in dashboards, the Alerts tab, and Attack Discovery alongside real data.

  • All write operations (generate, --cleanup, --continuous) prompt for confirmation. Pass --yes or -y to skip

when called by an agent.

  • --cleanup runs deleteByQuery across all sample data indices — verify environment variables point to the intended

cluster before running.

  • --continuous mode indexes events indefinitely until manually stopped with Ctrl+C.

Environment variables

VariableRequiredDescription
ELASTICSEARCH_URLYesElasticsearch URL
ELASTICSEARCH_API_KEYYes\*Elasticsearch API key
ELASTICSEARCH_USERNAMEYes\*Elasticsearch username (alternative)
ELASTICSEARCH_PASSWORDYes\*Elasticsearch password (alternative)
KIBANA_URLNoKibana URL (for case creation and links)
KIBANA_USERNAMENoKibana username (if using Kibana features)
KIBANA_PASSWORDNoKibana password (if using Kibana features)

\*Either API key or username/password is required for Elasticsearch.

Related skills

Forks & variants (1)

Security Generate Security Sample Data has 1 known copy in the catalog totaling 2 installs. They canonicalize to this original listing.

How it compares

Use this skill over generic mock-data generators when testing Elastic Security detection rules that expect integration-specific event schemas.

FAQ

What credentials are required?

KIBANA_URL and Kibana auth plus Elasticsearch URL or cloud ID with Elasticsearch auth.

What Node version is required?

Node.js 22 or newer per skill compatibility notes.

What data formats are generated?

ECS-compliant events, attack scenarios, and synthetic alert documents.

Is Security Generate Security Sample Data safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

Securityauditappsec

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.