Repository navigation
Closed
Labels
CrestContributions from Crest developement team.Contributions from Crest developement team.New IntegrationIssue or pull request for creating a new integration package.Issue or pull request for creating a new integration package.enhancementNew feature or requestNew feature or request
Description
Description
Create an XM Cyber integration that ingests exposure findings, entity inventory, audit trail and security risk score data into Elastic, enabling attack path visibility, vulnerability prioritization and compliance use cases.
Sample data available upon request.
Required data
Field availability to be confirmed against XM Cyber API responses.
| XM Cyber Field | Expected ECS Mapping | Availability | Notes |
|---|---|---|---|
| Entity name | host.name / user.name |
Type-dependent (Device vs. AD User) | |
| Entity type | labels.entity_type |
Device, AD User, AD Security Group, etc. | |
| Compromised status | event.outcome |
Compromised / Not compromised | |
| Compromise risk score | labels.compromise_risk_score |
0–100 | |
| Choke point score | labels.choke_point_score |
||
| Affected critical assets count | labels.critical_assets_count |
||
| IP address | host.ip |
Visible in entity detail table | |
| Exposure name | event.action |
e.g., PrintNightmare, AD DCSync | |
| Exposure type | labels.exposure_type |
e.g., hackingTechnique | |
| Exposure severity | vulnerability.severity |
Critical, High, Medium, Low, Informative | |
| Critical assets at risk | labels.critical_assets_at_risk |
||
| CVE ID | vulnerability.id |
VRM — visible in vulnerability detail table | |
| CVSS v4.0 | vulnerability.score.base |
VRM | |
| Scenario name | labels.scenario_name |
||
| Scenario risk grade | labels.risk_grade |
A–F scale | |
| Scenario risk score | labels.risk_score |
0–100 | |
| Audit event type | event.type |
e.g., ACCESS | |
| Audit event subtype | event.action |
e.g., XM_LOGIN, LOGOUT | |
| Audit username | user.name |
||
| Audit user email | user.email |
||
| Audit source IP | source.ip |
||
| Sensor name | host.name |
||
| Sensor status | labels.sensor_status |
active / inactive | |
| Organization security score | labels.security_score |
Main dashboard score, 0–100 |
Dashboard ideas
- Entities Overview: Total entities, critical assets, and choke points; distribution by compromised status and severity; most impacted entities table
- Scenario Exposure Findings: Exposures with most risk to critical assets and choke points; exposure profile detail with severity, complexity, and affected entities
- Security Score Trend: Organization-wide risk score over time (1 month / 3 month / 6 month / 1 year views)
- Audit Trail: Most active users, user activity distribution, 2FA setup trend, most active IPs, audit detail log
- Scenarios Overview: Risk grade distribution, inactive scenario count, lowest-scoring scenarios, scenario detail table
- Sensors Overview: Sensors by OS type and cloud provider, failed sensors by reason, sensors requiring updates, version distribution
- VRM — Vulnerabilities / Devices / Products: CVE inventory by severity and age, new vs. remediated trend, vulnerability funnel by XM enrichment; device and product detail tables with choke point and critical asset context
Use cases
- Attack path correlation: Combine XM Cyber choke point and critical asset data with EDR telemetry to prioritize alert triage based on whether the affected entity sits on an active attack path
- Exposure driven vulnerability prioritization: XM Cyber's VRM surfaces CVEs already enriched with attack path context, enabling SOC teams to prioritize remediation by actual risk rather than CVSS alone
- Entity risk scoring: Use compromise risk scores and choke point status as signals in Elastic's user and entity risk scoring framework
Metadata
Metadata
Assignees
Labels
CrestContributions from Crest developement team.Contributions from Crest developement team.New IntegrationIssue or pull request for creating a new integration package.Issue or pull request for creating a new integration package.enhancementNew feature or requestNew feature or request
Activity
github-actions commentedon Apr 20, 2026
tl;dr: I recommend treating this as a net-new integration request and starting with a scaffold PR for
packages/xm_cybermodeled onpackages/cyera, because no XM Cyber package exists in this repo and CI requires package check/install/test gates from day one.Recommendation
Create an initial PR that only scaffolds the XM Cyber package (manifest, one CEL-based logs data stream, docs skeleton, validation, and baseline tests), then iterate on additional data streams in follow-up PRs.
Findings
No existing XM Cyber package in-repo
packages/search returned noxm,xmcyber, orxm-cyberpackage directory.packages/forxm cyber|xm_cyber|xmcyberreturned no matches.Best structural template is
cyera(same API-polling / security-posture style integration)packages/cyera/manifest.yml:36-51defines a CEL input policy template with API collection.packages/cyera/manifest.yml:53-74shows credential var patterns (url,client_id,client_secret).packages/cyera/data_stream/issue/manifest.yml:1-8and:10-33show logs data stream and polling/batch vars.packages/cyera/data_stream/issue/elasticsearch/ingest_pipeline/default.yml:35-43shows parse + event classification patterns.Repository process/CI expectations for new packages are explicit
docs/extend/build-create-package.md:8-31,:57-73.docs/extend/_publish_an_integration.md:11-22,:54-56..buildkite/scripts/common.sh:835-840,:930-950..buildkite/scripts/trigger_integrations_in_parallel.sh:54-83.Checklist precedent for new integrations
.github/ISSUE_TEMPLATE/integration-checklist.md:12-20,:24-37.Known environment limitation while triaging
Verification
Detailed Action Plan
elastic-package create packageand name itxm_cyber(docs/extend/build-create-package.md:12-14,:26-33).elastic-package create data-stream(docs/extend/build-create-package.md:59-63,:67-70).cyeraAPI auth/input conventions inpackages/xm_cyber/manifest.yml(reference:packages/cyera/manifest.yml:36-74).cyera/issuepattern (reference:packages/cyera/data_stream/issue/elasticsearch/ingest_pipeline/default.yml:35-43).docs/README.md,validation.yml,sample_event.json, and_dev/testfixtures (reference structure visible underpackages/cyera/**).elastic-package checkandelastic-package testbefore opening PR (docs/extend/_publish_an_integration.md:11-22; CI enforcement in.buildkite/scripts/common.sh:835-840,:930-950)..github/ISSUE_TEMPLATE/integration-checklist.md:12-20,:24-37).Related Items
#18530[New Integration] XM Cyber)packages/cyera/manifest.ymlpackages/cyera/data_stream/issue/manifest.ymlpackages/cyera/data_stream/issue/elasticsearch/ingest_pipeline/default.ymldocs/extend/build-create-package.mddocs/extend/_publish_an_integration.md.buildkite/scripts/common.sh.github/ISSUE_TEMPLATE/integration-checklist.mdhttps://github.com/elastic/integrations/pull/18408packages/microsoft_intune/changelog.yml:6)Note
🔒 Integrity filter blocked 19 items
The following items were blocked because they don't meet the GitHub integrity level.
search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".issue_read: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".search_issues: has lower integrity than agent requires. The agent cannot read data with integrity below "approved".To allow these resources, lower
min-integrityin your GitHub frontmatter:What is this? | From workflow: Issue Triage
Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not.