Skip to content

Latest commit

 

History

History
971 lines (651 loc) · 32.8 KB

File metadata and controls

971 lines (651 loc) · 32.8 KB

COA Object

COA Course of Action. A corrective or preventative action to be taken in response to a threat.

Property Type Description Required?
id String Globally unique URI identifying this object.
schema_version String CTIM schema version for this entity.
type COATypeIdentifierString
valid_time ValidTime Object
coa_type COATypeString The type of this COA
cost HighMedLowString Characterizes the estimated cost for applying this course of action.
description MarkdownString A description of object, which may be detailed.
efficacy HighMedLowString Effectiveness of this course of action in achieving its targeted objective.
external_ids String List It is used to store a list of external identifiers that can be linked to the incident, providing a reliable and manageable way to correlate and group related events across multiple data sources. It is especially useful in larger organizations that rely on multiple security information and event management (SIEM) systems to detect security incidents. For instance, it can be used to track events across different network sensors, intrusion detection and prevention systems (IDPS), or log management platforms. The field can also be used to facilitate automation and orchestration workflows, where additional information can be shared among incident management systems. It can be used to cross-reference with other external tools such as threat intelligence feeds and vulnerability scanners.
external_references ExternalReference Object List Specifies a list of external references which refers to non-CTIM information. Similar to external_ids field with major differences: - external_ids field is used to store a list of external identifiers that can be used to link entities across different data sources. These identifiers are typically standardized and well-known, such as CVE IDs, US-CERT advisories, or other industry-standard threat intelligence feeds. The external_ids field can be used to facilitate automation and orchestration workflows, where additional information can be shared among incident management systems. - external_references field, on the other hand, is used to provide a more general mechanism for linking entities to external sources of information. The external_references field can include references to blog posts, articles, external documents, threat intelligence reports, and other sources of information that may not have a standardized format or identifier.
impact ShortStringString Characterizes the estimated impact of applying this course of action.
language ShortStringString The language field is used to specify the primary language of the affected system or the target of an attack. It can be used to provide additional context and information about the entity. The primary purpose of this field is to help analysts filter and prioritize entities based on their knowledge and expertise of different languages. For example, if an incident involves an attack on a system in a country where a specific language is predominant, the language field can be used to indicate that language, which can help analysts to quickly identify and respond to incidents that may be geographically or culturally relevant. This information can be used to prioritize incidents based on their potential impact. The language field can also be used to help with correlation of incidents across different systems and regions, as well as to help with data analysis and reporting.
objective ShortStringString List Characterizes the objective to provide guidance on how to mitigate a security incident that has been identified.
open_c2_coa OpenC2COA Object
related_COAs RelatedCOA Object List Identifies or characterizes relationships to one or more related courses of action.
revision Integer A monotonically increasing revision, incremented each time the object is changed.
short_description MedStringString A single line, short summary of the object.
source MedStringString Represents the source of the intelligence that led to the creation of the entity.
source_uri String URI of the source of the intelligence that led to the creation of the entity.
stage COAStageString Specifies what stage in the cyber threat management lifecycle this Course Of Action is relevant to.
structured_coa_type OpenC2StructuredCOATypeString
timestamp Inst (Date) The time this object was created at, or last modified.
title ShortStringString A short title for this object, used as primary display and reference value.
tlp TLPString TLP stands for Traffic Light Protocol, which indicates precisely how a resource is intended to be shared, replicated, copied, etc. It is used to indicate the sensitivity of the information contained within the message. This allows recipients to determine the appropriate handling and dissemination of the information based on their clearance level and need-to-know. For example, an entity containing information about a critical vulnerability in a widely-used software might be marked as red, indicating that it should only be shared with a small group of highly trusted individuals who need to know in order to take appropriate action. On the other hand, a message containing more general information about security threats might be marked as amber or green, indicating that it can be shared more broadly within an organization.

Property coa_type ∷ COATypeString

The type of this COA

  • This entry is optional

    • Allowed Values:
      • Diplomatic Actions
      • Eradication
      • Hardening
      • Internal Blocking
      • Logical Access Restrictions
      • Monitoring
      • Other
      • Patching
      • Perimeter Blocking
      • Phase
      • Physical Access Restrictions
      • Playbook
      • Policy Actions
      • Public Disclosure
      • Rebuilding
      • Redirection
      • Redirection (Honey Pot)
      • Task
      • Training
    • Reference: CourseOfActionTypeVocab

Property cost ∷ HighMedLowString

Characterizes the estimated cost for applying this course of action.

  • This entry is optional

    • Allowed Values:
      • High
      • Info
      • Low
      • Medium
      • None
      • Unknown
    • Reference: HighMedLowVocab

Property description ∷ MarkdownString

A description of object, which may be detailed.

  • This entry is optional

    • Markdown Markdown string with at most 5000 characters.

Property efficacy ∷ HighMedLowString

Effectiveness of this course of action in achieving its targeted objective.

  • This entry is optional

    • Allowed Values:
      • High
      • Info
      • Low
      • Medium
      • None
      • Unknown
    • Reference: HighMedLowVocab

Property external_ids ∷ String List

It is used to store a list of external identifiers that can be linked to the incident, providing a reliable and manageable way to correlate and group related events across multiple data sources. It is especially useful in larger organizations that rely on multiple security information and event management (SIEM) systems to detect security incidents. For instance, it can be used to track events across different network sensors, intrusion detection and prevention systems (IDPS), or log management platforms. The field can also be used to facilitate automation and orchestration workflows, where additional information can be shared among incident management systems. It can be used to cross-reference with other external tools such as threat intelligence feeds and vulnerability scanners.

  • This entry is optional
  • This entry's type is sequential (allows zero or more values)

Property external_references ∷ ExternalReference Object List

Specifies a list of external references which refers to non-CTIM information.

Similar to external_ids field with major differences:

  • external_ids field is used to store a list of external identifiers that can be used to link entities across different data sources. These identifiers are typically standardized and well-known, such as CVE IDs, US-CERT advisories, or other industry-standard threat intelligence feeds. The external_ids field can be used to facilitate automation and orchestration workflows, where additional information can be shared among incident management systems.

  • external_references field, on the other hand, is used to provide a more general mechanism for linking entities to external sources of information. The external_references field can include references to blog posts, articles, external documents, threat intelligence reports, and other sources of information that may not have a standardized format or identifier.

  • This entry is optional
  • This entry's type is sequential (allows zero or more values)

Property id ∷ String

Globally unique URI identifying this object.

  • This entry is required

    • IDs are URIs, for example https://www.domain.com/ctia/judgement/judgement-de305d54-75b4-431b-adb2-eb6b9e546014 for a Judgement. This ID type compares to the STIX id field. The optional STIX idref field is not used.

Property impact ∷ ShortStringString

Characterizes the estimated impact of applying this course of action.

  • This entry is optional

    • ShortString String with at most 1024 characters.

Property language ∷ ShortStringString

The language field is used to specify the primary language of the affected system or the target of an attack. It can be used to provide additional context and information about the entity. The primary purpose of this field is to help analysts filter and prioritize entities based on their knowledge and expertise of different languages.

For example, if an incident involves an attack on a system in a country where a specific language is predominant, the language field can be used to indicate that language, which can help analysts to quickly identify and respond to incidents that may be geographically or culturally relevant. This information can be used to prioritize incidents based on their potential impact. The language field can also be used to help with correlation of incidents across different systems and regions, as well as to help with data analysis and reporting.

  • This entry is optional

    • ShortString String with at most 1024 characters.

Property objective ∷ ShortStringString List

Characterizes the objective to provide guidance on how to mitigate a security incident that has been identified.

  • This entry is optional

  • This entry's type is sequential (allows zero or more values)

  • Dev Notes: Squashed / simplified

    • ShortString String with at most 1024 characters.

Property open_c2_coa ∷ OpenC2COA Object

  • This entry is optional

Property related_COAs ∷ RelatedCOA Object List

Identifies or characterizes relationships to one or more related courses of action.

  • This entry is optional
  • This entry's type is sequential (allows zero or more values)

Property revision ∷ Integer

A monotonically increasing revision, incremented each time the object is changed.

  • This entry is optional

    • Zero, or a positive integer.

Property schema_version ∷ String

CTIM schema version for this entity.

  • This entry is required

    • A semantic version matching the CTIM version against which this object should be valid.

Property short_description ∷ MedStringString

A single line, short summary of the object.

  • This entry is optional

    • MedString String with at most 2048 characters.

Property source ∷ MedStringString

Represents the source of the intelligence that led to the creation of the entity.

  • This entry is optional

    • MedString String with at most 2048 characters.

Property source_uri ∷ String

URI of the source of the intelligence that led to the creation of the entity.

  • This entry is optional

    • A URI

Property stage ∷ COAStageString

Specifies what stage in the cyber threat management lifecycle this Course Of Action is relevant to.

  • This entry is optional

    • Allowed Values:
      • Containment
      • Eradication
      • Identification
      • Lessons Learned
      • Preparation
      • Recovery
      • Remedy
      • Response
    • Reference: COAStageVocab

Property structured_coa_type ∷ OpenC2StructuredCOATypeString

  • This entry is optional

    • Must equal: "openc2"

Property timestamp ∷ Inst (Date)

The time this object was created at, or last modified.

  • This entry is optional

    • ISO8601 Timestamp Schema definition for all date or timestamp values. Serialized as a string, the field should follow the rules of the ISO8601 standard.

Property title ∷ ShortStringString

A short title for this object, used as primary display and reference value.

  • This entry is optional

    • ShortString String with at most 1024 characters.

Property tlp ∷ TLPString

TLP stands for Traffic Light Protocol, which indicates precisely how a resource is intended to be shared, replicated, copied, etc.

It is used to indicate the sensitivity of the information contained within the message. This allows recipients to determine the appropriate handling and dissemination of the information based on their clearance level and need-to-know.

For example, an entity containing information about a critical vulnerability in a widely-used software might be marked as red, indicating that it should only be shared with a small group of highly trusted individuals who need to know in order to take appropriate action. On the other hand, a message containing more general information about security threats might be marked as amber or green, indicating that it can be shared more broadly within an organization.

  • This entry is optional

    • Allowed Values:
      • amber
      • green
      • red
      • white

Property type ∷ COATypeIdentifierString

  • This entry is required

    • Must equal: "coa"

Property valid_time ∷ ValidTime Object

  • This entry is required

ExternalReference Object

ExternalReference External references are used to describe pointers to information represented outside of CTIM. For example, a Malware object could use an external reference to indicate an ID for that malware in an external database or a report could use references to represent source material.

Property Type Description Required?
source_name MedStringString The source within which the external-reference is defined (system, registry, organization, etc.)
description MarkdownString
external_id String An identifier for the external reference content.
hashes String List Specifies a dictionary of hashes for the contents of the url.
url String A URL reference to an external resource.

Property description ∷ MarkdownString

  • This entry is optional

    • Markdown Markdown string with at most 5000 characters.

Property external_id ∷ String

An identifier for the external reference content.

  • This entry is optional

Property hashes ∷ String List

Specifies a dictionary of hashes for the contents of the url.

  • This entry is optional
  • This entry's type is sequential (allows zero or more values)

Property source_name ∷ MedStringString

The source within which the external-reference is defined (system, registry, organization, etc.)

  • This entry is required

    • MedString String with at most 2048 characters.

Property url ∷ String

A URL reference to an external resource.

  • This entry is optional

    • A URI

ValidTime Object

ValidTime Period of time when a cyber observation is valid.

Property Type Description Required?
end_time Inst (Date) If end_time is not present, then the valid time position of the object does not have an upper bound.
start_time Inst (Date) If not present, the valid time position of the indicator does not have an upper bound.

Property end_time ∷ Inst (Date)

If end_time is not present, then the valid time position of the object does not have an upper bound.

  • This entry is optional

    • ISO8601 Timestamp Schema definition for all date or timestamp values. Serialized as a string, the field should follow the rules of the ISO8601 standard.

Property start_time ∷ Inst (Date)

If not present, the valid time position of the indicator does not have an upper bound.

  • This entry is optional

    • ISO8601 Timestamp Schema definition for all date or timestamp values. Serialized as a string, the field should follow the rules of the ISO8601 standard.

RelatedCOA Object

Property Type Description Required?
COA_id String
confidence HighMedLowString
relationship String
source String

Property COA_id ∷ String

  • This entry is required

    • A URI leading to a COA.

Property confidence ∷ HighMedLowString

  • This entry is optional

    • Allowed Values:
      • High
      • Info
      • Low
      • Medium
      • None
      • Unknown
    • Reference: HighMedLowVocab

Property relationship ∷ String

  • This entry is optional

Property source ∷ String

  • This entry is optional

OpenC2COA Object

Property Type Description Required?
action ActionType Object
type StructuredCOATypeString
actuator ActuatorType Object
id ShortStringString
modifiers ModifierType Object
target TargetType Object

Property action ∷ ActionType Object

  • This entry is required

Property actuator ∷ ActuatorType Object

  • This entry is optional

Property id ∷ ShortStringString

  • This entry is optional

    • ShortString String with at most 1024 characters.

Property modifiers ∷ ModifierType Object

  • This entry is optional

Property target ∷ TargetType Object

  • This entry is optional

Property type ∷ StructuredCOATypeString

  • This entry is required

    • Must equal: "structured_coa"

ModifierType Object

Property Type Description Required?
additional_properties AdditionalProperties Object
delay Inst (Date)
destination String
duration Inst (Date)
frequency ShortStringString
id ShortStringString
location String
method String List
option ShortStringString
response String
search String
source ShortStringString
time ValidTime Object

Property additional_properties ∷ AdditionalProperties Object

  • This entry is optional

Property delay ∷ Inst (Date)

  • This entry is optional

    • ISO8601 Timestamp Schema definition for all date or timestamp values. Serialized as a string, the field should follow the rules of the ISO8601 standard.

Property destination ∷ String

  • This entry is optional

    • Allowed Values:
      • copy-to
      • modify-to
      • move-to
      • report-to
      • restore-point
      • save-to
      • set-to

Property duration ∷ Inst (Date)

  • This entry is optional

    • ISO8601 Timestamp Schema definition for all date or timestamp values. Serialized as a string, the field should follow the rules of the ISO8601 standard.

Property frequency ∷ ShortStringString

  • This entry is optional

    • ShortString String with at most 1024 characters.

Property id ∷ ShortStringString

  • This entry is optional

    • ShortString String with at most 1024 characters.

Property location ∷ String

  • This entry is optional

    • Allowed Values:
      • internal
      • perimeter

Property method ∷ String List

  • This entry is optional

  • This entry's type is sequential (allows zero or more values)

    • Allowed Values:
      • acl
      • authenticated
      • blackhole
      • blacklist
      • graceful
      • hibernate
      • honeypot
      • immediate
      • segmentation
      • spawn
      • suspend
      • unauthenticated
      • whitelist

Property option ∷ ShortStringString

  • This entry is optional

    • ShortString String with at most 1024 characters.

Property response ∷ String

  • This entry is optional

    • Allowed Values:
      • acknowledge
      • command-ref
      • query
      • status

Property search ∷ String

  • This entry is optional

    • Allowed Values:
      • cve
      • patch
      • signature
      • vendor_bulletin

Property source ∷ ShortStringString

  • This entry is optional

    • ShortString String with at most 1024 characters.

Property time ∷ ValidTime Object

  • This entry is optional

AdditionalProperties Object

Property Type Description Required?
context ShortStringString

Property context ∷ ShortStringString

  • This entry is required

    • ShortString String with at most 1024 characters.

ValidTime Object

ValidTime Period of time when a cyber observation is valid.

Property Type Description Required?
end_time Inst (Date) If end_time is not present, then the valid time position of the object does not have an upper bound.
start_time Inst (Date) If not present, the valid time position of the indicator does not have an upper bound.

Property end_time ∷ Inst (Date)

If end_time is not present, then the valid time position of the object does not have an upper bound.

  • This entry is optional

    • ISO8601 Timestamp Schema definition for all date or timestamp values. Serialized as a string, the field should follow the rules of the ISO8601 standard.

Property start_time ∷ Inst (Date)

If not present, the valid time position of the indicator does not have an upper bound.

  • This entry is optional

    • ISO8601 Timestamp Schema definition for all date or timestamp values. Serialized as a string, the field should follow the rules of the ISO8601 standard.

ActuatorType Object

Property Type Description Required?
type ActuatorTypeString
specifiers ShortStringString List List of additional properties describing the actuator.

Property specifiers ∷ ShortStringString List

List of additional properties describing the actuator.

  • This entry is optional

  • This entry's type is sequential (allows zero or more values)

    • ShortString String with at most 1024 characters.

Property type ∷ ActuatorTypeString

  • This entry is required

    • Allowed Values:
      • endpoint
      • endpoint.digital-telephone-handset
      • endpoint.laptop
      • endpoint.pos-terminal
      • endpoint.printer
      • endpoint.sensor
      • endpoint.server
      • endpoint.smart-meter
      • endpoint.smart-phone
      • endpoint.tablet
      • endpoint.workstation
      • network
      • network.bridge
      • network.firewall
      • network.gateway
      • network.guard
      • network.hips
      • network.hub
      • network.ids
      • network.ips
      • network.modem
      • network.nic
      • network.proxy
      • network.router
      • network.security_manager
      • network.sense_making
      • network.sensor
      • network.switch
      • network.vpn
      • network.wap
      • other
      • process
      • process.aaa-server
      • process.anti-virus-scanner
      • process.connection-scanner
      • process.directory-service
      • process.dns-server
      • process.email-service
      • process.file-scanner
      • process.location-service
      • process.network-scanner
      • process.remediation-service
      • process.reputation-service
      • process.sandbox
      • process.virtualization-service
      • process.vulnerability-scanner

TargetType Object

Property Type Description Required?
type TargetTypeVocabString
specifiers ShortStringString Observable types that can be acted upon.

Property specifiers ∷ ShortStringString

Observable types that can be acted upon.

  • This entry is optional

    • ShortString String with at most 1024 characters.

Property type ∷ TargetTypeVocabString

  • This entry is required

    • Allowed Values:
      • acudid
      • amp_computer_guid
      • certificate_common_name
      • certificate_issuer
      • certificate_serial
      • cisco_cm_id
      • cisco_mid
      • cisco_uc_id
      • cortex_agent_id
      • crowdstrike_id
      • cvm_id
      • cybereason_id
      • darktrace_id
      • device
      • domain
      • email
      • email_messageid
      • email_subject
      • file_name
      • file_path
      • google_chromebook_id
      • google_cloud_id
      • hostname
      • imei
      • imsi
      • intune_id
      • ip
      • ipv6
      • jamf_management_id
      • mac_address
      • md5
      • meraki_network_id
      • meraki_node_sn
      • meraki_org_id
      • ms_machine_id
      • mutex
      • ngfw_id
      • ngfw_name
      • odns_identity
      • odns_identity_label
      • orbital_node_id
      • pki_serial
      • process_args
      • process_hash
      • process_name
      • process_path
      • process_uid
      • process_username
      • processor_id
      • registry_key
      • registry_name
      • registry_path
      • s1_agent_id
      • secure_access_id
      • serial_number
      • service_now_id
      • sha1
      • sha256
      • swc_device_id
      • trend_micro_id
      • url
      • user
      • user_agent

ActionType Object

Property Type Description Required?
type COATypeString

Property type ∷ COATypeString

  • This entry is required

    • Allowed Values:
      • alert
      • allow
      • augment
      • contain
      • delete
      • deny
      • detonate
      • distill
      • get
      • investigate
      • locate
      • mitigate
      • modify
      • move
      • notify
      • other
      • pause
      • query
      • redirect
      • remediate
      • report
      • response
      • restart
      • restore
      • resume
      • save
      • scan
      • set
      • snapshot
      • start
      • stop
      • substitute
      • sync
      • throttle
      • update
    • Reference: OpenC2/STIX COA XML schema