A C# API for STIX 2
Install-Package stixnetStructured Threat Information Expression (STIX) is a language and serialization format used to exchange cyber threat intelligence (CTI). STIX enables organizations to share CTI with one another in a consistent and machine-readable manner, allowing security communities to better understand what computer-based attacks they are most likely to see and to anticipate and/or respond to those attacks faster and more effectively. STIX is designed to improve many different capabilities, such as collaborative threat analysis, automated threat exchange, automated detection and response, and more. The objects and features added for inclusion in STIX 2.1 represent an iterative approach to fulfilling basic consumer and producer requirements for CTI sharing. Objects and properties not included in this version of STIX, but deemed necessary by the community, will be included in future releases.
STIX is a schema that defines a taxonomy of cyber threat intelligence that is represented by the following objects:
- STIX Bundle Object : An object that provides a wrapper mechanism for packaging arbitrary STIX content together
- STIX Objects
- STIX Core Objects
- STIX Domain Objects (SDO) : Higher Level Intelligence Objects that represent behaviors and constructs that threat analysts would typically create or work with while understanding the threat landscape.
- STIX Cyber-observable Objects (SCO) : Objects that represent observed facts about a network or host that may be used and related to higher level intelligence to form a more complete understanding of the threat landscape.
- STIX Relationship Objects (SRO) : Objects that connect STIX Domain Objects together, STIX Cyber-observable Objects together, and connect STIX Domain Objects and STIX Cyber-observable Objects together to form a more complete understanding of the threat landscape.
- STIX Meta Objects (SMO) : A STIX Object that provides the necessary glue and associated metadata to enrich or extend STIX Core Objects to support user and system workflows.
- Extension Definition Objects
- Language Content Objects
- Marking Definition Objects
- STIX Core Objects
Common Data Types
| Type | Description |
|---|---|
| binary | A sequence of bytes. |
| boolean | A value of true or false. |
| dictionary | A set of key/value pairs. |
| enum | A value from a STIX Enumeration. |
| external-reference | A non-STIX identifier or reference to other related external content. |
| float | An IEEE 754 [IEEE 754-2008] double-precision number. |
| hashes | One or more cryptographic hashes. |
| hex | An array of octets as hexadecimal. |
| identifier | An identifier (ID) is for STIX Objects. |
| integer | A whole number. |
| kill-chain-phase | A name and a phase of a kill chain. |
| list | A sequence of values ordered based on how they appear in the list. The phrasing "list of type |
" is used to indicate that all values within the list MUST conform to the specified type. |
| observable-container | One or more STIX Cyber-observable Objects in the deprecated Cyber Observable Container. |
| open-vocab | A value from a STIX open (open-vocab) or suggested vocabulary. |
| string | A series of Unicode characters. |
| timestamp | A time value (date and time). |
Common Properties
| � | STIX Core Objects | STIX Meta Objects | � | ||||
|---|---|---|---|---|---|---|---|
| Property Name | SDOs | SROs | SCOs | Extension | Language | Markings | Bundle |
| type | Required | Required | Required | Required | Required | Required | Required |
| spec_version | Required | Required | Optional | Required | Required | Required | N/A |
| id | Required | Required | Required | Required | Required | Required | Required |
| created_by_ref | Optional | Optional | N/A | Required | Optional | Optional | N/A |
| created | Required | Required | N/A | Required | Required | Required | N/A |
| modified | Required | Required | N/A | Required | Required | N/A | N/A |
| revoked | Optional | Optional | N/A | Optional | Optional | N/A | N/A |
| labels | Optional | Optional | N/A | Optional | Optional | N/A | N/A |
| confidence | Optional | Optional | N/A | N/A | Optional | N/A | N/A |
| lang | Optional | Optional | N/A | N/A | N/A | N/A | N/A |
| external_references | Optional | Optional | N/A | Optional | Optional | Optional | N/A |
| object_marking_refs | Optional | Optional | Optional | Optional | Optional | Optional | N/A |
| granular_markings | Optional | Optional | Optional | Optional | Optional | Optional | N/A |
| defanged | N/A | N/A | Optional | N/A | N/A | N/A | N/A |
| extensions | Optional | Optional | Optional | N/A | Optional | Optional | N/A |
STIX Objects
- STIX Domain Objects
- Attack Pattern
- Campaign
- Course of Action
- Grouping
- Identity
- Incident
- Indicator
- Infrastructure
- Intrusion Set
- Location
- Malware
- Malware Analysis
- Note
- Observed Data
- Opinion
- Report
- Threat Actor
- Tool
- Vulnerability
- STIX Relationship Objects
- Relationship
- Sighting
- STIX Cyber-observable Objects
- Artifact Object
- Autonomous System (AS) Object
- Directory Object
- Domain Name Object
- Email Address Object
- Email Message Object
- Email MIME Component Type
- File Object
- Archive File Extension
- NTFS File Extension
- Alternate Data Stream Type
- PDF File Extension
- Raster Image File Extension
- Windows� PE Binary File Extension
- Windows� PE Optional Header Type
- Windows� PE Section Type
- IPv4 Address Object
- IPv6 Address Object
- MAC Address Object
- Mutex Object
- Network Traffic Object
- HTTP Request Extension
- ICMP Extension
- Network Socket Extension
- TCP Extension
- Process Object
- Windows� Process Extension
- Windows� Service Extension
- Software Object
- URL Object
- User Account Object
- UNIX� Account Extension
- Windows� Registry Key Object
- Windows� Registry Value Type
- X.509 Certificate Object
- X.509 v3 Extensions Type
- STIX Meta Objects
- Language Content
- Data Markings
- Marking Definition
- Statement Marking Object Type
- TLP Marking Object Type
- Object Markings
- Granular Markings
- Granular Marking Type
- Extension Definition
- Extension Definition Properties
- Requirements for STIX Extension Schemas
- Requirements for Extension Properties
- Requirements for Extension STIX Objects
- STIX Bundle Object
