Skip to content

Commit f3b57af

Browse files
committed
[client] Strip note content for generating IDs
1 parent 95f42ab commit f3b57af

File tree

5 files changed

+31
-6
lines changed

5 files changed

+31
-6
lines changed

pycti/entities/opencti_attack_pattern.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ def __init__(self, opencti):
239239
@staticmethod
240240
def generate_id(name, x_mitre_id=None):
241241
if x_mitre_id is not None:
242-
data = {"x_mitre_id": x_mitre_id}
242+
data = {"x_mitre_id": x_mitre_id.strip()}
243243
else:
244244
data = {"name": name.lower().strip()}
245245
data = canonicalize(data, utf8=False)

pycti/entities/opencti_indicator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ def __init__(self, opencti):
2424

2525
@staticmethod
2626
def generate_id(pattern):
27-
data = {"pattern": pattern}
27+
data = {"pattern": pattern.strip()}
2828
data = canonicalize(data, utf8=False)
2929
id = str(uuid.uuid5(uuid.UUID("00abedb4-aa42-466c-9c01-fed23315a9b7"), data))
3030
return "indicator--" + id

pycti/entities/opencti_note.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -457,9 +457,9 @@ def generate_id(created, content):
457457
if created is not None:
458458
if isinstance(created, datetime.datetime):
459459
created = created.isoformat()
460-
data = {"content": content, "created": created}
460+
data = {"content": content.strip(), "created": created}
461461
else:
462-
data = {"content": content}
462+
data = {"content": content.strip()}
463463
data = canonicalize(data, utf8=False)
464464
id = str(uuid.uuid5(uuid.UUID("00abedb4-aa42-466c-9c01-fed23315a9b7"), data))
465465
return "note--" + id

pycti/entities/opencti_opinion.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -227,9 +227,9 @@ def generate_id(created, opinion):
227227
if created is not None:
228228
if isinstance(created, datetime.datetime):
229229
created = created.isoformat()
230-
data = {"opinion": opinion, "created": created}
230+
data = {"opinion": opinion.strip(), "created": created}
231231
else:
232-
data = {"opinion": opinion}
232+
data = {"opinion": opinion.strip()}
233233
data = canonicalize(data, utf8=False)
234234
id = str(uuid.uuid5(uuid.UUID("00abedb4-aa42-466c-9c01-fed23315a9b7"), data))
235235
return "opinion--" + id

test.json

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
{"type": "bundle",
2+
"objects": [{
3+
"id": "software--290d2a0e-f613-5628-a540-e66962f749bd",
4+
"type": "software",
5+
"spec_version": "2.1",
6+
"cpe": "cpe:2.3:a:oracle:graalvm:17.0.14:*:*:*:*:*:*:*",
7+
"name": "graalvm 17.0.14",
8+
"version": "17.0.14",
9+
"vendor": "oracle",
10+
"x_version": "17.0.14",
11+
"x_vendor": "oracle",
12+
"x_product": "graalvm",
13+
"created_by_ref": "identity--be669b67-e9bb-5a5d-900b-c56f5b2a69f7",
14+
"object_marking_refs": [
15+
"marking-definition--34098fce-860f-48ae-8e50-ebd3cc5e41da"
16+
]
17+
},
18+
{
19+
"type": "threat-actor",
20+
"id": "threat-actor--4b57918e-f774-58bb-bcbe-31c3c483daed",
21+
"name": "Turla",
22+
"secondary_motivations": ["dominance"]
23+
}
24+
]
25+
}

0 commit comments

Comments
 (0)