Class: Analytic
Analytics contain the concrete, platform-specific detection logic implementing a Detection Strategy for a specific operating environment. An analytic specifies the exact log data sources to query (via x_mitre_log_source_references), the detection logic or query pattern, and optionally defines tunable parameters (x_mitre_mutable_elements) allowing defenders to adapt it to their environment.
Each analytic targets exactly one platform (x_mitre_platforms maximum cardinality is 1). Multiple analytics may implement the same detection strategy, one per supported platform.
The detection chain is:
_ DetectionStrategy (x_mitre_analytic_refs →)_
_ Analytic (x_mitre_log_source_references →)_
_ DataComponent (log_source name/channel →)_
_ detects →_
_ Technique_
URI: attack:Analytic
classDiagram
class Analytic
click Analytic href "../Analytic/"
AttackObject <|-- Analytic
click AttackObject href "../AttackObject/"
Analytic : confidence
Analytic : created
Analytic : created_by_ref
Analytic : description
Analytic : extensions
Analytic : external_references
Analytic --> "1..*" ExternalReference : external_references
click ExternalReference href "../ExternalReference/"
Analytic : granular_markings
Analytic --> "*" GranularMarking : granular_markings
click GranularMarking href "../GranularMarking/"
Analytic : id
Analytic : labels
Analytic : lang
Analytic : modified
Analytic : name
Analytic : object_marking_refs
Analytic : revoked
Analytic : spec_version
Analytic --> "1" SpecVersionEnum : spec_version
click SpecVersionEnum href "../SpecVersionEnum/"
Analytic : type
Analytic : x_mitre_attack_spec_version
Analytic : x_mitre_deprecated
Analytic : x_mitre_domains
Analytic --> "1..*" AttackDomainEnum : x_mitre_domains
click AttackDomainEnum href "../AttackDomainEnum/"
Analytic : x_mitre_log_source_references
Analytic --> "*" LogSourceReference : x_mitre_log_source_references
click LogSourceReference href "../LogSourceReference/"
Analytic : x_mitre_modified_by_ref
Analytic : x_mitre_mutable_elements
Analytic --> "*" MutableElement : x_mitre_mutable_elements
click MutableElement href "../MutableElement/"
Analytic : x_mitre_old_attack_id
Analytic : x_mitre_platforms
Analytic --> "*" AttackPlatformEnum : x_mitre_platforms
click AttackPlatformEnum href "../AttackPlatformEnum/"
Analytic : x_mitre_version
Inheritance
- StixEntity
- CommonSchemaComponent
- Core
- AttackObject
- Analytic
- AttackObject
- Core
- CommonSchemaComponent
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| x_mitre_domains | 1..* AttackDomainEnum |
The ATT&CK technology domains to which this object belongs | direct |
| x_mitre_platforms | * AttackPlatformEnum |
The single target platform for this analytic | direct |
| x_mitre_modified_by_ref | 0..1 StixIdentifier |
The STIX ID of the identity object that created the current version of this o... | direct |
| x_mitre_log_source_references | * LogSourceReference |
A list of log source references that link this analytic to specific data comp... | direct |
| x_mitre_mutable_elements | * MutableElement |
Environment-tunable parameters within this analytic that defenders can adjust... | direct |
| x_mitre_attack_spec_version | 1 SemverString |
The version of the ATT&CK Data Model specification used to construct this obj... | AttackObject |
| x_mitre_version | 1 AttackVersionString |
The version of this ATT&CK object content in 'major | AttackObject |
| x_mitre_deprecated | 0..1 Boolean |
Boolean flag indicating that this ATT&CK object has been deprecated and shoul... | AttackObject |
| x_mitre_old_attack_id | 0..1 String |
A legacy ATT&CK ID previously assigned to this object before a knowledge base... | AttackObject |
| type | 1 StixTypeName |
STIX object type | Core, StixEntity |
| spec_version | 1 SpecVersionEnum |
STIX specification version | Core |
| id | 1 StixIdentifier |
STIX object identifier | Core, StixEntity |
| created | 1 Datetime |
Creation timestamp | Core |
| modified | 1 Datetime |
Modification timestamp | Core |
| created_by_ref | 1 StixIdentifier |
The STIX ID of the identity object that first created this ATT&CK object | Core |
| labels | * String |
Terms used to describe this object | Core |
| revoked | 0..1 Boolean |
Indicates whether this object has been revoked | Core |
| confidence | 0..1 Integer |
Confidence that the producer has in this data | Core |
| lang | 0..1 String |
Language of textual properties | Core |
| external_references | 1..* ExternalReference |
External references | Core |
| object_marking_refs | 1..* StixIdentifier |
Marking definition references applied to this object | Core |
| granular_markings | * GranularMarking |
Granular markings that apply to selected content | Core |
| extensions | * String |
Open-ended extension payloads | Core |
| name | 1 String |
The name of this analytic | StixEntity |
| description | 1 String |
A description of this analytic, including what it detects, how it works, and ... | StixEntity |
In Subsets
Identifier and Mapping Information
Annotations
| property | value |
|---|---|
| stix_type | x-mitre-analytic |
| attack_id_format | AN#### |
Schema Source
- from schema: https://w3id.org/lmodel/attack
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | attack:Analytic |
| native | attack:Analytic |
LinkML Source
Direct
name: Analytic
annotations:
stix_type:
tag: stix_type
value: x-mitre-analytic
attack_id_format:
tag: attack_id_format
value: AN####
description: "Analytics contain the concrete, platform-specific detection logic implementing\
\ a Detection Strategy for a specific operating environment. An analytic specifies\
\ the exact log data sources to query (via x_mitre_log_source_references), the detection\
\ logic or query pattern, and optionally defines tunable parameters (x_mitre_mutable_elements)\
\ allowing defenders to adapt it to their environment.\nEach analytic targets exactly\
\ one platform (x_mitre_platforms maximum cardinality is 1). Multiple analytics\
\ may implement the same detection strategy, one per supported platform.\nThe detection\
\ chain is:\n DetectionStrategy (x_mitre_analytic_refs →)\n Analytic (x_mitre_log_source_references\
\ →)\n DataComponent (log_source name/channel →)\n detects →\n \
\ Technique"
in_subset:
- attack_sdos
from_schema: https://w3id.org/lmodel/attack
is_a: AttackObject
slots:
- x_mitre_domains
- x_mitre_platforms
- x_mitre_modified_by_ref
- x_mitre_log_source_references
- x_mitre_mutable_elements
slot_usage:
type:
name: type
required: true
pattern: ^x-mitre-analytic$
id:
name: id
required: true
pattern: ^x-mitre-analytic--
name:
name: name
description: The name of this analytic.
required: true
description:
name: description
description: A description of this analytic, including what it detects, how it
works, and any important behavioral or environmental context.
required: true
external_references:
name: external_references
description: External references. The first entry MUST contain the analytic's
ATT&CK ID as external_id (e.g., 'AN0001').
comments:
- 'jsonschema_minItems: "1"'
required: true
created_by_ref:
name: created_by_ref
required: true
object_marking_refs:
name: object_marking_refs
required: true
x_mitre_platforms:
name: x_mitre_platforms
description: The single target platform for this analytic. Maximum cardinality
is 1; each analytic targets exactly one platform.
comments:
- 'jsonschema_maxItems: "1"'
x_mitre_domains:
name: x_mitre_domains
required: true
Induced
name: Analytic
annotations:
stix_type:
tag: stix_type
value: x-mitre-analytic
attack_id_format:
tag: attack_id_format
value: AN####
description: "Analytics contain the concrete, platform-specific detection logic implementing\
\ a Detection Strategy for a specific operating environment. An analytic specifies\
\ the exact log data sources to query (via x_mitre_log_source_references), the detection\
\ logic or query pattern, and optionally defines tunable parameters (x_mitre_mutable_elements)\
\ allowing defenders to adapt it to their environment.\nEach analytic targets exactly\
\ one platform (x_mitre_platforms maximum cardinality is 1). Multiple analytics\
\ may implement the same detection strategy, one per supported platform.\nThe detection\
\ chain is:\n DetectionStrategy (x_mitre_analytic_refs →)\n Analytic (x_mitre_log_source_references\
\ →)\n DataComponent (log_source name/channel →)\n detects →\n \
\ Technique"
in_subset:
- attack_sdos
from_schema: https://w3id.org/lmodel/attack
is_a: AttackObject
slot_usage:
type:
name: type
required: true
pattern: ^x-mitre-analytic$
id:
name: id
required: true
pattern: ^x-mitre-analytic--
name:
name: name
description: The name of this analytic.
required: true
description:
name: description
description: A description of this analytic, including what it detects, how it
works, and any important behavioral or environmental context.
required: true
external_references:
name: external_references
description: External references. The first entry MUST contain the analytic's
ATT&CK ID as external_id (e.g., 'AN0001').
comments:
- 'jsonschema_minItems: "1"'
required: true
created_by_ref:
name: created_by_ref
required: true
object_marking_refs:
name: object_marking_refs
required: true
x_mitre_platforms:
name: x_mitre_platforms
description: The single target platform for this analytic. Maximum cardinality
is 1; each analytic targets exactly one platform.
comments:
- 'jsonschema_maxItems: "1"'
x_mitre_domains:
name: x_mitre_domains
required: true
attributes:
x_mitre_domains:
name: x_mitre_domains
description: The ATT&CK technology domains to which this object belongs. At least
one domain must be specified. An object may belong to multiple domains when
the same technique, group, or software is relevant across domain boundaries.
comments:
- 'jsonschema_minItems: "1"'
in_subset:
- attack_sdos
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: x_mitre_domains
owner: Analytic
domain_of:
- Technique
- Tactic
- Group
- AttackCampaign
- Mitigation
- AttackMalware
- AttackTool
- Asset
- DataSource
- DataComponent
- Matrix
- DetectionStrategy
- Analytic
range: AttackDomainEnum
required: true
multivalued: true
x_mitre_platforms:
name: x_mitre_platforms
description: The single target platform for this analytic. Maximum cardinality
is 1; each analytic targets exactly one platform.
comments:
- 'jsonschema_maxItems: "1"'
in_subset:
- attack_sdos
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: x_mitre_platforms
owner: Analytic
domain_of:
- Technique
- AttackMalware
- AttackTool
- Asset
- DataSource
- Analytic
range: AttackPlatformEnum
multivalued: true
x_mitre_modified_by_ref:
name: x_mitre_modified_by_ref
description: 'The STIX ID of the identity object that created the current version
of this object. In practice, always references MITRE''s canonical identity object:
identity--c78cb6e5-0c4b-4611-8297-d1b8b55e40b5. May differ from created_by_ref
if the object was originally created by a third party and subsequently adopted
or updated by MITRE.'
comments:
- 'validator_hint: must-match-mitre-identity-id'
in_subset:
- attack_sdos
- attack_sros
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: x_mitre_modified_by_ref
owner: Analytic
domain_of:
- Technique
- Tactic
- Group
- AttackCampaign
- Mitigation
- AttackMalware
- AttackTool
- Asset
- DataSource
- DataComponent
- Matrix
- Collection
- DetectionStrategy
- Analytic
- AttackRelationship
range: stix_identifier
pattern: ^identity--c78cb6e5-0c4b-4611-8297-d1b8b55e40b5$
x_mitre_log_source_references:
name: x_mitre_log_source_references
description: A list of log source references that link this analytic to specific
data components and their associated log sources. Each reference identifies
a data component by STIX ID and specifies the (name, channel) pair of the log
source within that component to target. Each (x_mitre_data_component_ref, name,
channel) tuple must be unique within the array.
comments:
- 'jsonschema_minItems: "1" validator_hint: no-duplicate-log-source-reference-tuples'
in_subset:
- attack_sdos
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: x_mitre_log_source_references
owner: Analytic
domain_of:
- Analytic
range: LogSourceReference
multivalued: true
inlined: true
x_mitre_mutable_elements:
name: x_mitre_mutable_elements
description: Environment-tunable parameters within this analytic that defenders
can adjust to adapt the detection logic to their specific environment without
altering its fundamental detection behavior. Examples include time windows,
user context filters, or port ranges. Each element names a tunable field and
explains the rationale for tunability.
comments:
- 'jsonschema_minItems: "1"'
in_subset:
- attack_sdos
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: x_mitre_mutable_elements
owner: Analytic
domain_of:
- Analytic
range: MutableElement
multivalued: true
inlined: true
x_mitre_attack_spec_version:
name: x_mitre_attack_spec_version
description: The version of the ATT&CK Data Model specification used to construct
this object, in MAJOR.MINOR.PATCH (semantic versioning) format. Helps consuming
software determine whether the data format is supported. Objects lacking this
property are assumed to conform to ATT&CK spec version 2.0.0. Refer to the ATT&CK
CHANGELOG for all supported versions.
comments:
- 'absent_on: marking-definition, identity (x_mitre_version absent), relationship
(x_mitre_version absent)'
in_subset:
- attack_sdos
- attack_sros
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: x_mitre_attack_spec_version
owner: Analytic
domain_of:
- AttackObject
range: semver_string
required: true
x_mitre_version:
name: x_mitre_version
description: 'The version of this ATT&CK object content in ''major.minor'' format,
where both components are integers between 0 and 99. Incremented by ATT&CK whenever
the substantive content of the object changes. Does not apply to relationship
objects. Example: "1.0", "12.5".'
comments:
- 'absent_on: relationship, marking-definition'
in_subset:
- attack_sdos
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: x_mitre_version
owner: Analytic
domain_of:
- AttackObject
range: attack_version_string
required: true
x_mitre_deprecated:
name: x_mitre_deprecated
description: Boolean flag indicating that this ATT&CK object has been deprecated
and should no longer be used in new analyses or tooling implementations. Deprecated
objects are retained in the knowledge base for historical reference and legacy
compatibility, but are not actively maintained with new information.
comments:
- 'absent_on: marking-definition'
in_subset:
- attack_sdos
- attack_sros
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: x_mitre_deprecated
owner: Analytic
domain_of:
- AttackObject
range: boolean
x_mitre_old_attack_id:
name: x_mitre_old_attack_id
description: A legacy ATT&CK ID previously assigned to this object before a knowledge
base restructuring or domain migration event. Format mirrors the current ATT&CK
ID format but from the prior numbering scheme (e.g., "MOB-T1001" for a mobile
technique previously in the pre-unification Mobile ATT&CK dataset).
in_subset:
- attack_sdos
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: x_mitre_old_attack_id
owner: Analytic
domain_of:
- AttackObject
range: string
type:
name: type
description: STIX object type.
from_schema: https://w3id.org/lmodel/attack
related_mappings:
- unified_cyber_ontology:state
rank: 1000
alias: type
owner: Analytic
domain_of:
- StixEntity
- Bundle
- Core
- CyberObservableCore
- ExtensionDefinition
- LanguageContent
- MarkingDefinition
- File
range: stix_type_name
required: true
pattern: ^x-mitre-analytic$
spec_version:
name: spec_version
description: STIX specification version.
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:specVersion
rank: 1000
alias: spec_version
owner: Analytic
domain_of:
- Core
- CyberObservableCore
- MarkingDefinition
range: SpecVersionEnum
required: true
id:
name: id
description: STIX object identifier.
from_schema: https://w3id.org/lmodel/attack
related_mappings:
- unified_cyber_ontology:externalReference
rank: 1000
alias: id
owner: Analytic
domain_of:
- StixEntity
- Bundle
- Core
- CyberObservableCore
- ExtensionDefinition
- LanguageContent
- MarkingDefinition
- File
range: stix_identifier
required: true
pattern: ^x-mitre-analytic--
created:
name: created
description: Creation timestamp.
notes:
- STIX core timestamps require millisecond precision.
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:objectCreatedTime
rank: 1000
alias: created
owner: Analytic
domain_of:
- Core
- MarkingDefinition
range: datetime
required: true
pattern: T\d{2}:\d{2}:\d{2}\.\d{3,}Z$
modified:
name: modified
description: Modification timestamp.
notes:
- STIX core timestamps require millisecond precision.
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:modifiedTime
rank: 1000
alias: modified
owner: Analytic
domain_of:
- Core
range: datetime
required: true
pattern: T\d{2}:\d{2}:\d{2}\.\d{3,}Z$
created_by_ref:
name: created_by_ref
description: The STIX ID of the identity object that first created this ATT&CK
object. Typically references MITRE's identity (identity--c78cb6e5-0c4b-4611-8297-d1b8b55e40b5).
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:createdBy
rank: 1000
alias: created_by_ref
owner: Analytic
domain_of:
- Core
- MarkingDefinition
range: stix_identifier
required: true
labels:
name: labels
description: Terms used to describe this object.
comments:
- 'jsonschema_minItems: "1"'
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:tag
rank: 1000
alias: labels
owner: Analytic
domain_of:
- Core
range: string
multivalued: true
revoked:
name: revoked
description: Indicates whether this object has been revoked.
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: revoked
owner: Analytic
domain_of:
- Core
range: boolean
confidence:
name: confidence
description: Confidence that the producer has in this data.
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: confidence
owner: Analytic
domain_of:
- Core
range: integer
minimum_value: 0
maximum_value: 100
lang:
name: lang
description: Language of textual properties.
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: lang
owner: Analytic
domain_of:
- Core
- GranularMarking
range: string
external_references:
name: external_references
description: External references. The first entry MUST contain the analytic's
ATT&CK ID as external_id (e.g., 'AN0001').
comments:
- 'jsonschema_minItems: "1"'
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:externalReference
rank: 1000
alias: external_references
owner: Analytic
domain_of:
- Core
- MarkingDefinition
range: ExternalReference
required: true
multivalued: true
object_marking_refs:
name: object_marking_refs
description: Marking definition references applied to this object.
comments:
- 'jsonschema_minItems: "1"'
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:objectMarking
rank: 1000
alias: object_marking_refs
owner: Analytic
domain_of:
- Core
- CyberObservableCore
- MarkingDefinition
range: stix_identifier
required: true
multivalued: true
granular_markings:
name: granular_markings
description: Granular markings that apply to selected content.
comments:
- 'jsonschema_minItems: "1"'
from_schema: https://w3id.org/lmodel/attack
narrow_mappings:
- unified_cyber_ontology:objectMarking
rank: 1000
alias: granular_markings
owner: Analytic
domain_of:
- Core
- CyberObservableCore
- MarkingDefinition
range: GranularMarking
multivalued: true
extensions:
name: extensions
description: Open-ended extension payloads.
notes:
- JSON Schema uses patternProperties for extension keys; exact key validation
is delegated to validator tooling.
comments:
- 'jsonschema_rule: patternProperties validator_hint: validate-extension-keys-and-values'
from_schema: https://w3id.org/lmodel/attack
related_mappings:
- unified_cyber_ontology:hasFacet
rank: 1000
alias: extensions
owner: Analytic
domain_of:
- Core
- CyberObservableCore
- MarkingDefinition
- File
range: string
multivalued: true
name:
name: name
description: The name of this analytic.
from_schema: https://w3id.org/lmodel/attack
exact_mappings:
- unified_cyber_ontology:name
rank: 1000
alias: name
owner: Analytic
domain_of:
- RelatedAsset
- StixEntity
- ExtensionDefinition
- MarkingDefinition
- AutonomousSystem
- File
range: string
required: true
description:
name: description
description: A description of this analytic, including what it detects, how it
works, and any important behavioral or environmental context.
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:description
rank: 1000
alias: description
owner: Analytic
domain_of:
- RelatedAsset
- MutableElement
- StixEntity
- ExtensionDefinition
- ExternalReference
range: string
required: true