-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Handling SCOs with IP addresses raises an issue regarding the use of embedded references, specifically resolves_to_refs
, and its implications for data integrity and reliability. The core issue arises when an SCO associated with an IP address, such as 8.8.8.8
, maintains the same identifier regardless of whether it includes a resolves_to_refs
attribute. This scenario suggests a fundamental discrepancy: an SCO featuring solely an IP address significantly differs from one that further delineates a relationship with, for example, a MAC address. The absence of detailed metadata, like the timestamp or the identity of the creator of this IP-to-MAC association, compounds the problem, leaving a gap in the traceability and accountability of such relationships.
Embedded references appear to fit seamlessly within SDOs and SROs, but it seems that the previous concern extends to all other SCOs with embedded references.
This distinction is crucial given the nature of SCOs as unversioned entities, a characteristic underscored in section 3.6 on Versioning of the STIX documentation. According to the guidelines, versioned STIX Objects must employ specific properties (created_by_ref
, created
, modified
, and revoked
) to facilitate proper version control. However, SCOs, by definition, do not engage with these versioning properties, highlighting a misalignment between the use of embedded references within SCOs, knowing that SCOs have deterministic IDs.
The following paragraph from the STIX 2.1 specification is correct and it reflects the fact that SCOs by default (without versioning) must not have embedded references because the producer other than the object creator will create a new observable that will conflict with the original one.
STIX Objects have a single object creator, the entity that generates the id for the object and creates the first version. The object creator MAY (but not necessarily will) be identified in the created_by_ref property of the object. Only the object creator is permitted to create new versions of a STIX Object. Producers other than the object creator MUST NOT create new versions of that object. If a producer other than the object creator wishes to create a new version, they MUST instead create a new object with a new id. They SHOULD additionally create a derived-from Relationship object to relate their new object to the original object that it was derived from.
Is my understanding accurate, or have I overlooked something?