Class: Indicator
_Indicators contain a pattern that can be used to detect suspicious or malicious cyber activity. _
URI: attack:Indicator
classDiagram
class Indicator
click Indicator href "../Indicator/"
StixDomainObject <|-- Indicator
click StixDomainObject href "../StixDomainObject/"
Indicator : confidence
Indicator : created
Indicator : created_by_ref
Indicator : description
Indicator : extensions
Indicator : external_references
Indicator --> "*" ExternalReference : external_references
click ExternalReference href "../ExternalReference/"
Indicator : granular_markings
Indicator --> "*" GranularMarking : granular_markings
click GranularMarking href "../GranularMarking/"
Indicator : id
Indicator : indicator_types
Indicator : kill_chain_phases
Indicator --> "*" KillChainPhase : kill_chain_phases
click KillChainPhase href "../KillChainPhase/"
Indicator : labels
Indicator : lang
Indicator : modified
Indicator : name
Indicator : object_marking_refs
Indicator : pattern
Indicator : pattern_type
Indicator : pattern_version
Indicator : revoked
Indicator : spec_version
Indicator --> "1" SpecVersionEnum : spec_version
click SpecVersionEnum href "../SpecVersionEnum/"
Indicator : type
Indicator : valid_from
Indicator : valid_until
Inheritance
- StixEntity
- CommonSchemaComponent
- Core
- StixDomainObject
- Indicator
- StixDomainObject
- Core
- CommonSchemaComponent
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| indicator_types | * IndicatorTypeOv or String |
This field is an Open Vocabulary that specifies the type of indicator | direct |
| pattern | 1 String |
The detection pattern for this indicator | direct |
| pattern_type | 1 PatternTypeOv or String |
The type of pattern used in this indicator | direct |
| pattern_version | 0..1 String |
The version of the pattern that is used | direct |
| valid_from | 1 Datetime |
The time from which this indicator should be considered valuable intelligence | direct |
| valid_until | 0..1 Datetime |
The time at which this indicator should no longer be considered valuable inte... | direct |
| kill_chain_phases | * KillChainPhase |
Kill chain phases associated with this object | direct |
| 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 | 0..1 StixIdentifier |
ID of the object that created this 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 | * ExternalReference |
External references to non-STIX information | Core |
| object_marking_refs | * 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 | 0..1 String |
Human-readable name | StixEntity |
| description | 0..1 String |
Human-readable description | StixEntity |
In Subsets
Comments
- jsonschema_source: https://github.com/oasis-open/cti-stix2-json-schemas/tree/master/schemas/sdos/indicator.json source: https://github.com/oasis-open/cti-stix2-json-schemas/blob/master/pattern_grammar/STIXPattern.g4 validator_hint: validate-indicator-pattern-with-antlr
Notes
- pattern syntax and parse validity are enforced by the STIX pattern ANTLR grammar.
Identifier and Mapping Information
Schema Source
- from schema: https://w3id.org/lmodel/attack
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | attack:Indicator |
| native | attack:Indicator |
LinkML Source
Direct
name: Indicator
description: 'Indicators contain a pattern that can be used to detect suspicious or
malicious cyber activity. '
notes:
- pattern syntax and parse validity are enforced by the STIX pattern ANTLR grammar.
comments:
- 'jsonschema_source: https://github.com/oasis-open/cti-stix2-json-schemas/tree/master/schemas/sdos/indicator.json
source: https://github.com/oasis-open/cti-stix2-json-schemas/blob/master/pattern_grammar/STIXPattern.g4
validator_hint: validate-indicator-pattern-with-antlr'
in_subset:
- sdos
from_schema: https://w3id.org/lmodel/attack
is_a: StixDomainObject
slots:
- indicator_types
- pattern
- pattern_type
- pattern_version
- valid_from
- valid_until
- kill_chain_phases
slot_usage:
id:
name: id
pattern: ^indicator--[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$
type:
name: type
pattern: ^indicator$
pattern:
name: pattern
required: true
pattern_type:
name: pattern_type
required: true
valid_from:
name: valid_from
required: true
indicator_types:
name: indicator_types
comments:
- 'jsonschema_minItems: "1"'
kill_chain_phases:
name: kill_chain_phases
comments:
- 'jsonschema_minItems: "1"'
Induced
name: Indicator
description: 'Indicators contain a pattern that can be used to detect suspicious or
malicious cyber activity. '
notes:
- pattern syntax and parse validity are enforced by the STIX pattern ANTLR grammar.
comments:
- 'jsonschema_source: https://github.com/oasis-open/cti-stix2-json-schemas/tree/master/schemas/sdos/indicator.json
source: https://github.com/oasis-open/cti-stix2-json-schemas/blob/master/pattern_grammar/STIXPattern.g4
validator_hint: validate-indicator-pattern-with-antlr'
in_subset:
- sdos
from_schema: https://w3id.org/lmodel/attack
is_a: StixDomainObject
slot_usage:
id:
name: id
pattern: ^indicator--[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$
type:
name: type
pattern: ^indicator$
pattern:
name: pattern
required: true
pattern_type:
name: pattern_type
required: true
valid_from:
name: valid_from
required: true
indicator_types:
name: indicator_types
comments:
- 'jsonschema_minItems: "1"'
kill_chain_phases:
name: kill_chain_phases
comments:
- 'jsonschema_minItems: "1"'
attributes:
indicator_types:
name: indicator_types
description: This field is an Open Vocabulary that specifies the type of indicator.
Open vocab - indicator-type-ov
comments:
- 'jsonschema_minItems: "1"'
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: indicator_types
owner: Indicator
domain_of:
- Indicator
range: string
multivalued: true
any_of:
- range: IndicatorTypeOv
- range: string
pattern:
name: pattern
description: The detection pattern for this indicator.
comments:
- 'validator_hint: parse-with-stix-pattern-antlr-grammar'
from_schema: https://w3id.org/lmodel/attack
related_mappings:
- unified_cyber_ontology:hasFacet
rank: 1000
alias: pattern
owner: Indicator
domain_of:
- Indicator
range: string
required: true
pattern_type:
name: pattern_type
description: The type of pattern used in this indicator.
comments:
- 'open_vocabulary: PatternTypeOv'
from_schema: https://w3id.org/lmodel/attack
related_mappings:
- unified_cyber_ontology:hasFacet
rank: 1000
alias: pattern_type
owner: Indicator
domain_of:
- Indicator
range: string
required: true
pattern: ^[a-z0-9\-]+$
any_of:
- range: PatternTypeOv
- range: string
pattern_version:
name: pattern_version
description: The version of the pattern that is used.
from_schema: https://w3id.org/lmodel/attack
related_mappings:
- unified_cyber_ontology:specVersion
rank: 1000
alias: pattern_version
owner: Indicator
domain_of:
- Indicator
range: string
valid_from:
name: valid_from
description: The time from which this indicator should be considered valuable
intelligence.
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: valid_from
owner: Indicator
domain_of:
- Indicator
range: datetime
required: true
valid_until:
name: valid_until
description: The time at which this indicator should no longer be considered valuable
intelligence.
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: valid_until
owner: Indicator
domain_of:
- Indicator
range: datetime
kill_chain_phases:
name: kill_chain_phases
description: Kill chain phases associated with this object.
comments:
- 'jsonschema_minItems: "1"'
from_schema: https://w3id.org/lmodel/attack
rank: 1000
alias: kill_chain_phases
owner: Indicator
domain_of:
- AttackPattern
- Indicator
- Infrastructure
- Malware
- Tool
range: KillChainPhase
multivalued: true
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: Indicator
domain_of:
- StixEntity
- Bundle
- Core
- CyberObservableCore
- ExtensionDefinition
- LanguageContent
- MarkingDefinition
- File
range: stix_type_name
required: true
pattern: ^indicator$
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: Indicator
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: Indicator
domain_of:
- StixEntity
- Bundle
- Core
- CyberObservableCore
- ExtensionDefinition
- LanguageContent
- MarkingDefinition
- File
range: stix_identifier
required: true
pattern: ^indicator--[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$
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: Indicator
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: Indicator
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: ID of the object that created this object.
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:createdBy
rank: 1000
alias: created_by_ref
owner: Indicator
domain_of:
- Core
- MarkingDefinition
range: stix_identifier
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: Indicator
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: Indicator
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: Indicator
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: Indicator
domain_of:
- Core
- GranularMarking
range: string
external_references:
name: external_references
description: External references to non-STIX information.
comments:
- 'jsonschema_minItems: "1"'
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:externalReference
rank: 1000
alias: external_references
owner: Indicator
domain_of:
- Core
- MarkingDefinition
range: ExternalReference
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: Indicator
domain_of:
- Core
- CyberObservableCore
- MarkingDefinition
range: stix_identifier
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: Indicator
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: Indicator
domain_of:
- Core
- CyberObservableCore
- MarkingDefinition
- File
range: string
multivalued: true
name:
name: name
description: Human-readable name.
from_schema: https://w3id.org/lmodel/attack
exact_mappings:
- unified_cyber_ontology:name
rank: 1000
alias: name
owner: Indicator
domain_of:
- RelatedAsset
- StixEntity
- ExtensionDefinition
- MarkingDefinition
- AutonomousSystem
- File
range: string
description:
name: description
description: Human-readable description.
from_schema: https://w3id.org/lmodel/attack
close_mappings:
- unified_cyber_ontology:description
rank: 1000
alias: description
owner: Indicator
domain_of:
- RelatedAsset
- MutableElement
- StixEntity
- ExtensionDefinition
- ExternalReference
range: string