pycti 6.7.0__tar.gz → 6.7.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pycti might be problematic. Click here for more details.

Files changed (91) hide show
  1. {pycti-6.7.0 → pycti-6.7.2}/PKG-INFO +1 -1
  2. {pycti-6.7.0 → pycti-6.7.2}/pycti/__init__.py +1 -1
  3. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_client.py +2 -0
  4. pycti-6.7.2/pycti/api/opencti_api_internal_file.py +26 -0
  5. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_playbook.py +1 -1
  6. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_stix_core_object.py +6 -6
  7. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_stix_domain_object.py +6 -6
  8. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_stix_object_or_stix_relationship.py +3 -3
  9. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_stix_sighting_relationship.py +2 -0
  10. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_vulnerability.py +28 -24
  11. {pycti-6.7.0 → pycti-6.7.2}/pycti/utils/opencti_stix2.py +2 -1
  12. {pycti-6.7.0 → pycti-6.7.2}/pycti.egg-info/PKG-INFO +1 -1
  13. {pycti-6.7.0 → pycti-6.7.2}/pycti.egg-info/SOURCES.txt +1 -0
  14. {pycti-6.7.0 → pycti-6.7.2}/LICENSE +0 -0
  15. {pycti-6.7.0 → pycti-6.7.2}/README.md +0 -0
  16. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/__init__.py +0 -0
  17. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_connector.py +0 -0
  18. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_draft.py +0 -0
  19. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_notification.py +0 -0
  20. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_pir.py +0 -0
  21. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_public_dashboard.py +0 -0
  22. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_trash.py +0 -0
  23. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_work.py +0 -0
  24. {pycti-6.7.0 → pycti-6.7.2}/pycti/api/opencti_api_workspace.py +0 -0
  25. {pycti-6.7.0 → pycti-6.7.2}/pycti/connector/__init__.py +0 -0
  26. {pycti-6.7.0 → pycti-6.7.2}/pycti/connector/opencti_connector.py +0 -0
  27. {pycti-6.7.0 → pycti-6.7.2}/pycti/connector/opencti_connector_helper.py +0 -0
  28. {pycti-6.7.0 → pycti-6.7.2}/pycti/connector/opencti_metric_handler.py +0 -0
  29. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/__init__.py +0 -0
  30. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/indicator/__init__.py +0 -0
  31. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/indicator/opencti_indicator_properties.py +0 -0
  32. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_attack_pattern.py +0 -0
  33. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_campaign.py +0 -0
  34. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_capability.py +0 -0
  35. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_case_incident.py +0 -0
  36. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_case_rfi.py +0 -0
  37. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_case_rft.py +0 -0
  38. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_channel.py +0 -0
  39. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_course_of_action.py +0 -0
  40. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_data_component.py +0 -0
  41. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_data_source.py +0 -0
  42. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_event.py +0 -0
  43. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_external_reference.py +0 -0
  44. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_feedback.py +0 -0
  45. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_group.py +0 -0
  46. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_grouping.py +0 -0
  47. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_identity.py +0 -0
  48. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_incident.py +0 -0
  49. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_indicator.py +0 -0
  50. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_infrastructure.py +0 -0
  51. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_intrusion_set.py +0 -0
  52. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_kill_chain_phase.py +0 -0
  53. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_label.py +0 -0
  54. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_language.py +0 -0
  55. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_location.py +0 -0
  56. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_malware.py +0 -0
  57. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_malware_analysis.py +0 -0
  58. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_marking_definition.py +0 -0
  59. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_narrative.py +0 -0
  60. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_note.py +0 -0
  61. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_observed_data.py +0 -0
  62. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_opinion.py +0 -0
  63. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_report.py +0 -0
  64. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_role.py +0 -0
  65. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_settings.py +0 -0
  66. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_stix.py +0 -0
  67. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_stix_core_relationship.py +0 -0
  68. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_stix_cyber_observable.py +0 -0
  69. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_stix_nested_ref_relationship.py +0 -0
  70. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_task.py +0 -0
  71. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_threat_actor.py +0 -0
  72. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_threat_actor_group.py +0 -0
  73. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_threat_actor_individual.py +0 -0
  74. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_tool.py +0 -0
  75. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_user.py +0 -0
  76. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/opencti_vocabulary.py +0 -0
  77. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/stix_cyber_observable/__init__.py +0 -0
  78. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/stix_cyber_observable/opencti_stix_cyber_observable_deprecated.py +0 -0
  79. {pycti-6.7.0 → pycti-6.7.2}/pycti/entities/stix_cyber_observable/opencti_stix_cyber_observable_properties.py +0 -0
  80. {pycti-6.7.0 → pycti-6.7.2}/pycti/utils/__init__.py +0 -0
  81. {pycti-6.7.0 → pycti-6.7.2}/pycti/utils/constants.py +0 -0
  82. {pycti-6.7.0 → pycti-6.7.2}/pycti/utils/opencti_logger.py +0 -0
  83. {pycti-6.7.0 → pycti-6.7.2}/pycti/utils/opencti_stix2_identifier.py +0 -0
  84. {pycti-6.7.0 → pycti-6.7.2}/pycti/utils/opencti_stix2_splitter.py +0 -0
  85. {pycti-6.7.0 → pycti-6.7.2}/pycti/utils/opencti_stix2_update.py +0 -0
  86. {pycti-6.7.0 → pycti-6.7.2}/pycti/utils/opencti_stix2_utils.py +0 -0
  87. {pycti-6.7.0 → pycti-6.7.2}/pycti.egg-info/dependency_links.txt +0 -0
  88. {pycti-6.7.0 → pycti-6.7.2}/pycti.egg-info/requires.txt +0 -0
  89. {pycti-6.7.0 → pycti-6.7.2}/pycti.egg-info/top_level.txt +0 -0
  90. {pycti-6.7.0 → pycti-6.7.2}/pyproject.toml +0 -0
  91. {pycti-6.7.0 → pycti-6.7.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pycti
3
- Version: 6.7.0
3
+ Version: 6.7.2
4
4
  Summary: Python API client for OpenCTI.
5
5
  Home-page: https://github.com/OpenCTI-Platform/client-python
6
6
  Author: Filigran
@@ -1,5 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
- __version__ = "6.7.0"
2
+ __version__ = "6.7.2"
3
3
 
4
4
  from .api.opencti_api_client import OpenCTIApiClient
5
5
  from .api.opencti_api_connector import OpenCTIApiConnector
@@ -11,6 +11,7 @@ import requests
11
11
  from pycti import __version__
12
12
  from pycti.api.opencti_api_connector import OpenCTIApiConnector
13
13
  from pycti.api.opencti_api_draft import OpenCTIApiDraft
14
+ from pycti.api.opencti_api_internal_file import OpenCTIApiInternalFile
14
15
  from pycti.api.opencti_api_notification import OpenCTIApiNotification
15
16
  from pycti.api.opencti_api_pir import OpenCTIApiPir
16
17
  from pycti.api.opencti_api_playbook import OpenCTIApiPlaybook
@@ -182,6 +183,7 @@ class OpenCTIApiClient:
182
183
  self.connector = OpenCTIApiConnector(self)
183
184
  self.stix2 = OpenCTIStix2(self)
184
185
  self.pir = OpenCTIApiPir(self)
186
+ self.internal_file = OpenCTIApiInternalFile(self)
185
187
 
186
188
  # Define the entities
187
189
  self.vocabulary = Vocabulary(self)
@@ -0,0 +1,26 @@
1
+ class OpenCTIApiInternalFile:
2
+ """OpenCTIApiInternalFile"""
3
+
4
+ def __init__(self, api):
5
+ self.api = api
6
+
7
+ def delete(self, **kwargs):
8
+ item = kwargs.get("item", None)
9
+ file_name = self.api.get_attribute_in_extension("id", item)
10
+ if file_name is not None:
11
+ query = """
12
+ mutation InternalFileDelete($fileName: String) {
13
+ deleteImport(fileName: $fileName)
14
+ }
15
+ """
16
+ self.api.query(
17
+ query,
18
+ {
19
+ "fileName": file_name,
20
+ },
21
+ )
22
+ else:
23
+ self.api.app_logger.error(
24
+ "[stix_internal_file] Cant delete internal file, missing parameters: fileName"
25
+ )
26
+ return None
@@ -48,7 +48,7 @@ class OpenCTIApiPlaybook:
48
48
  },
49
49
  )
50
50
  else:
51
- self.opencti.app_logger.error(
51
+ self.api.app_logger.error(
52
52
  "[stix_playbook] Cant delete playbook, missing parameters: id"
53
53
  )
54
54
  return None
@@ -355,7 +355,7 @@ class StixCoreObject:
355
355
  name
356
356
  description
357
357
  x_opencti_aliases
358
- x_opencti_cvss_vector
358
+ x_opencti_cvss_vector_string
359
359
  x_opencti_cvss_base_score
360
360
  x_opencti_cvss_base_severity
361
361
  x_opencti_cvss_attack_vector
@@ -370,7 +370,7 @@ class StixCoreObject:
370
370
  x_opencti_cvss_remediation_level
371
371
  x_opencti_cvss_report_confidence
372
372
  x_opencti_cvss_temporal_score
373
- x_opencti_cvss_v2_vector
373
+ x_opencti_cvss_v2_vector_string
374
374
  x_opencti_cvss_v2_base_score
375
375
  x_opencti_cvss_v2_access_vector
376
376
  x_opencti_cvss_v2_access_complexity
@@ -382,7 +382,7 @@ class StixCoreObject:
382
382
  x_opencti_cvss_v2_remediation_level
383
383
  x_opencti_cvss_v2_report_confidence
384
384
  x_opencti_cvss_v2_temporal_score
385
- x_opencti_cvss_v4_vector
385
+ x_opencti_cvss_v4_vector_string
386
386
  x_opencti_cvss_v4_base_score
387
387
  x_opencti_cvss_v4_base_severity
388
388
  x_opencti_cvss_v4_attack_vector
@@ -1066,7 +1066,7 @@ class StixCoreObject:
1066
1066
  name
1067
1067
  description
1068
1068
  x_opencti_aliases
1069
- x_opencti_cvss_vector
1069
+ x_opencti_cvss_vector_string
1070
1070
  x_opencti_cvss_base_score
1071
1071
  x_opencti_cvss_base_severity
1072
1072
  x_opencti_cvss_attack_vector
@@ -1081,7 +1081,7 @@ class StixCoreObject:
1081
1081
  x_opencti_cvss_remediation_level
1082
1082
  x_opencti_cvss_report_confidence
1083
1083
  x_opencti_cvss_temporal_score
1084
- x_opencti_cvss_v2_vector
1084
+ x_opencti_cvss_v2_vector_string
1085
1085
  x_opencti_cvss_v2_base_score
1086
1086
  x_opencti_cvss_v2_access_vector
1087
1087
  x_opencti_cvss_v2_access_complexity
@@ -1093,7 +1093,7 @@ class StixCoreObject:
1093
1093
  x_opencti_cvss_v2_remediation_level
1094
1094
  x_opencti_cvss_v2_report_confidence
1095
1095
  x_opencti_cvss_v2_temporal_score
1096
- x_opencti_cvss_v4_vector
1096
+ x_opencti_cvss_v4_vector_string
1097
1097
  x_opencti_cvss_v4_base_score
1098
1098
  x_opencti_cvss_v4_base_severity
1099
1099
  x_opencti_cvss_v4_attack_vector
@@ -478,7 +478,7 @@ class StixDomainObject:
478
478
  name
479
479
  description
480
480
  x_opencti_aliases
481
- x_opencti_cvss_vector
481
+ x_opencti_cvss_vector_string
482
482
  x_opencti_cvss_base_score
483
483
  x_opencti_cvss_base_severity
484
484
  x_opencti_cvss_attack_vector
@@ -493,7 +493,7 @@ class StixDomainObject:
493
493
  x_opencti_cvss_remediation_level
494
494
  x_opencti_cvss_report_confidence
495
495
  x_opencti_cvss_temporal_score
496
- x_opencti_cvss_v2_vector
496
+ x_opencti_cvss_v2_vector_string
497
497
  x_opencti_cvss_v2_base_score
498
498
  x_opencti_cvss_v2_access_vector
499
499
  x_opencti_cvss_v2_access_complexity
@@ -505,7 +505,7 @@ class StixDomainObject:
505
505
  x_opencti_cvss_v2_remediation_level
506
506
  x_opencti_cvss_v2_report_confidence
507
507
  x_opencti_cvss_v2_temporal_score
508
- x_opencti_cvss_v4_vector
508
+ x_opencti_cvss_v4_vector_string
509
509
  x_opencti_cvss_v4_base_score
510
510
  x_opencti_cvss_v4_base_severity
511
511
  x_opencti_cvss_v4_attack_vector
@@ -1016,7 +1016,7 @@ class StixDomainObject:
1016
1016
  name
1017
1017
  description
1018
1018
  x_opencti_aliases
1019
- x_opencti_cvss_vector
1019
+ x_opencti_cvss_vector_string
1020
1020
  x_opencti_cvss_base_score
1021
1021
  x_opencti_cvss_base_severity
1022
1022
  x_opencti_cvss_attack_vector
@@ -1031,7 +1031,7 @@ class StixDomainObject:
1031
1031
  x_opencti_cvss_remediation_level
1032
1032
  x_opencti_cvss_report_confidence
1033
1033
  x_opencti_cvss_temporal_score
1034
- x_opencti_cvss_v2_vector
1034
+ x_opencti_cvss_v2_vector_string
1035
1035
  x_opencti_cvss_v2_base_score
1036
1036
  x_opencti_cvss_v2_access_vector
1037
1037
  x_opencti_cvss_v2_access_complexity
@@ -1043,7 +1043,7 @@ class StixDomainObject:
1043
1043
  x_opencti_cvss_v2_remediation_level
1044
1044
  x_opencti_cvss_v2_report_confidence
1045
1045
  x_opencti_cvss_v2_temporal_score
1046
- x_opencti_cvss_v4_vector
1046
+ x_opencti_cvss_v4_vector_string
1047
1047
  x_opencti_cvss_v4_base_score
1048
1048
  x_opencti_cvss_v4_base_severity
1049
1049
  x_opencti_cvss_v4_attack_vector
@@ -294,7 +294,7 @@ class StixObjectOrStixRelationship:
294
294
  name
295
295
  description
296
296
  x_opencti_aliases
297
- x_opencti_cvss_vector
297
+ x_opencti_cvss_vector_string
298
298
  x_opencti_cvss_base_score
299
299
  x_opencti_cvss_base_severity
300
300
  x_opencti_cvss_attack_vector
@@ -309,7 +309,7 @@ class StixObjectOrStixRelationship:
309
309
  x_opencti_cvss_remediation_level
310
310
  x_opencti_cvss_report_confidence
311
311
  x_opencti_cvss_temporal_score
312
- x_opencti_cvss_v2_vector
312
+ x_opencti_cvss_v2_vector_string
313
313
  x_opencti_cvss_v2_base_score
314
314
  x_opencti_cvss_v2_access_vector
315
315
  x_opencti_cvss_v2_access_complexity
@@ -321,7 +321,7 @@ class StixObjectOrStixRelationship:
321
321
  x_opencti_cvss_v2_remediation_level
322
322
  x_opencti_cvss_v2_report_confidence
323
323
  x_opencti_cvss_v2_temporal_score
324
- x_opencti_cvss_v4_vector
324
+ x_opencti_cvss_v4_vector_string
325
325
  x_opencti_cvss_v4_base_score
326
326
  x_opencti_cvss_v4_base_severity
327
327
  x_opencti_cvss_v4_attack_vector
@@ -533,6 +533,7 @@ class StixSightingRelationship:
533
533
  external_references = kwargs.get("externalReferences", None)
534
534
  x_opencti_stix_ids = kwargs.get("x_opencti_stix_ids", None)
535
535
  x_opencti_workflow_id = kwargs.get("x_opencti_workflow_id", None)
536
+ granted_refs = kwargs.get("objectOrganization", None)
536
537
  update = kwargs.get("update", False)
537
538
 
538
539
  self.opencti.app_logger.info(
@@ -569,6 +570,7 @@ class StixSightingRelationship:
569
570
  "externalReferences": external_references,
570
571
  "x_opencti_stix_ids": x_opencti_stix_ids,
571
572
  "x_opencti_workflow_id": x_opencti_workflow_id,
573
+ "objectOrganization": granted_refs,
572
574
  "update": update,
573
575
  }
574
576
  },
@@ -107,7 +107,7 @@ class Vulnerability:
107
107
  name
108
108
  description
109
109
  x_opencti_aliases
110
- x_opencti_cvss_vector
110
+ x_opencti_cvss_vector_string
111
111
  x_opencti_cvss_base_score
112
112
  x_opencti_cvss_base_severity
113
113
  x_opencti_cvss_attack_vector
@@ -122,7 +122,7 @@ class Vulnerability:
122
122
  x_opencti_cvss_remediation_level
123
123
  x_opencti_cvss_report_confidence
124
124
  x_opencti_cvss_temporal_score
125
- x_opencti_cvss_v2_vector
125
+ x_opencti_cvss_v2_vector_string
126
126
  x_opencti_cvss_v2_base_score
127
127
  x_opencti_cvss_v2_access_vector
128
128
  x_opencti_cvss_v2_access_complexity
@@ -134,7 +134,7 @@ class Vulnerability:
134
134
  x_opencti_cvss_v2_remediation_level
135
135
  x_opencti_cvss_v2_report_confidence
136
136
  x_opencti_cvss_v2_temporal_score
137
- x_opencti_cvss_v4_vector
137
+ x_opencti_cvss_v4_vector_string
138
138
  x_opencti_cvss_v4_base_score
139
139
  x_opencti_cvss_v4_base_severity
140
140
  x_opencti_cvss_v4_attack_vector
@@ -332,7 +332,7 @@ class Vulnerability:
332
332
  description = kwargs.get("description", None)
333
333
  x_opencti_aliases = kwargs.get("x_opencti_aliases", None)
334
334
  # CVSS3
335
- x_opencti_cvss_vector = kwargs.get("x_opencti_cvss_vector", None)
335
+ x_opencti_cvss_vector_string = kwargs.get("x_opencti_cvss_vector_string", None)
336
336
  x_opencti_cvss_base_score = kwargs.get("x_opencti_cvss_base_score", None)
337
337
  x_opencti_cvss_base_severity = kwargs.get("x_opencti_cvss_base_severity", None)
338
338
  x_opencti_cvss_attack_vector = kwargs.get("x_opencti_cvss_attack_vector", None)
@@ -368,7 +368,9 @@ class Vulnerability:
368
368
  "x_opencti_cvss_temporal_score", None
369
369
  )
370
370
  # CVSS2
371
- x_opencti_cvss_v2_vector = kwargs.get("x_opencti_cvss_v2_vector", None)
371
+ x_opencti_cvss_v2_vector_string = kwargs.get(
372
+ "x_opencti_cvss_v2_vector_string", None
373
+ )
372
374
  x_opencti_cvss_v2_base_score = kwargs.get("x_opencti_cvss_v2_base_score", None)
373
375
  x_opencti_cvss_v2_access_vector = kwargs.get(
374
376
  "x_opencti_cvss_v2_access_vector", None
@@ -401,7 +403,9 @@ class Vulnerability:
401
403
  "x_opencti_cvss_v2_temporal_score", None
402
404
  )
403
405
  # CVSS4
404
- x_opencti_cvss_v4_vector = kwargs.get("x_opencti_cvss_v4_vector", None)
406
+ x_opencti_cvss_v4_vector_string = kwargs.get(
407
+ "x_opencti_cvss_v4_vector_string", None
408
+ )
405
409
  x_opencti_cvss_v4_base_score = kwargs.get("x_opencti_cvss_v4_base_score", None)
406
410
  x_opencti_cvss_v4_base_severity = kwargs.get(
407
411
  "x_opencti_cvss_v4_base_severity", None
@@ -484,7 +488,7 @@ class Vulnerability:
484
488
  "description": description,
485
489
  "x_opencti_aliases": x_opencti_aliases,
486
490
  # CVSS3
487
- "x_opencti_cvss_vector": x_opencti_cvss_vector,
491
+ "x_opencti_cvss_vector_string": x_opencti_cvss_vector_string,
488
492
  "x_opencti_cvss_base_score": x_opencti_cvss_base_score,
489
493
  "x_opencti_cvss_base_severity": x_opencti_cvss_base_severity,
490
494
  "x_opencti_cvss_attack_vector": x_opencti_cvss_attack_vector,
@@ -500,7 +504,7 @@ class Vulnerability:
500
504
  "x_opencti_cvss_report_confidence": x_opencti_cvss_report_confidence,
501
505
  "x_opencti_cvss_temporal_score": x_opencti_cvss_temporal_score,
502
506
  # CVSS2
503
- "x_opencti_cvss_v2_vector": x_opencti_cvss_v2_vector,
507
+ "x_opencti_cvss_v2_vector_string": x_opencti_cvss_v2_vector_string,
504
508
  "x_opencti_cvss_v2_base_score": x_opencti_cvss_v2_base_score,
505
509
  "x_opencti_cvss_v2_access_vector": x_opencti_cvss_v2_access_vector,
506
510
  "x_opencti_cvss_v2_access_complexity": x_opencti_cvss_v2_access_complexity,
@@ -513,7 +517,7 @@ class Vulnerability:
513
517
  "x_opencti_cvss_v2_report_confidence": x_opencti_cvss_v2_report_confidence,
514
518
  "x_opencti_cvss_v2_temporal_score": x_opencti_cvss_v2_temporal_score,
515
519
  # CVSS 4
516
- "x_opencti_cvss_v4_vector": x_opencti_cvss_v4_vector,
520
+ "x_opencti_cvss_v4_vector_string": x_opencti_cvss_v4_vector_string,
517
521
  "x_opencti_cvss_v4_base_score": x_opencti_cvss_v4_base_score,
518
522
  "x_opencti_cvss_v4_base_severity": x_opencti_cvss_v4_base_severity,
519
523
  "x_opencti_cvss_v4_attack_vector": x_opencti_cvss_v4_attack_vector,
@@ -593,8 +597,8 @@ class Vulnerability:
593
597
  self.opencti.get_attribute_in_extension("aliases", stix_object)
594
598
  )
595
599
  # CVSS3
596
- if "x_opencti_cvss_vector" not in stix_object:
597
- stix_object["x_opencti_cvss_vector"] = (
600
+ if "x_opencti_cvss_vector_string" not in stix_object:
601
+ stix_object["x_opencti_cvss_vector_string"] = (
598
602
  self.opencti.get_attribute_in_extension("cvss_vector", stix_object)
599
603
  )
600
604
  if "x_opencti_cvss_base_score" not in stix_object:
@@ -681,8 +685,8 @@ class Vulnerability:
681
685
  )
682
686
 
683
687
  # CVSS2
684
- if "x_opencti_cvss_v2_vector" not in stix_object:
685
- stix_object["x_opencti_cvss_v2_vector"] = (
688
+ if "x_opencti_cvss_v2_vector_string" not in stix_object:
689
+ stix_object["x_opencti_cvss_v2_vector_string"] = (
686
690
  self.opencti.get_attribute_in_extension(
687
691
  "cvss_v2_vector", stix_object
688
692
  )
@@ -755,8 +759,8 @@ class Vulnerability:
755
759
  )
756
760
 
757
761
  # CVSS4
758
- if "x_opencti_cvss_v4_vector" not in stix_object:
759
- stix_object["x_opencti_cvss_v4_vector"] = (
762
+ if "x_opencti_cvss_v4_vector_string" not in stix_object:
763
+ stix_object["x_opencti_cvss_v4_vector_string"] = (
760
764
  self.opencti.get_attribute_in_extension(
761
765
  "cvss_v4_vector", stix_object
762
766
  )
@@ -916,9 +920,9 @@ class Vulnerability:
916
920
  else None
917
921
  ),
918
922
  # CVSS3
919
- x_opencti_cvss_vector=(
920
- stix_object["x_opencti_cvss_vector"]
921
- if "x_opencti_cvss_vector" in stix_object
923
+ x_opencti_cvss_vector_string=(
924
+ stix_object["x_opencti_cvss_vector_string"]
925
+ if "x_opencti_cvss_vector_string" in stix_object
922
926
  else None
923
927
  ),
924
928
  x_opencti_cvss_base_score=(
@@ -992,9 +996,9 @@ class Vulnerability:
992
996
  else None
993
997
  ),
994
998
  # CVSS2
995
- x_opencti_cvss_v2_vector=(
996
- stix_object["x_opencti_cvss_v2_vector"]
997
- if "x_opencti_cvss_v2_vector" in stix_object
999
+ x_opencti_cvss_v2_vector_string=(
1000
+ stix_object["x_opencti_cvss_v2_vector_string"]
1001
+ if "x_opencti_cvss_v2_vector_string" in stix_object
998
1002
  else None
999
1003
  ),
1000
1004
  x_opencti_cvss_v2_base_score=(
@@ -1053,9 +1057,9 @@ class Vulnerability:
1053
1057
  else None
1054
1058
  ),
1055
1059
  # CVSS4
1056
- x_opencti_cvss_v4_vector=(
1057
- stix_object["x_opencti_cvss_v4_vector"]
1058
- if "x_opencti_cvss_v4_vector" in stix_object
1060
+ x_opencti_cvss_v4_vector_string=(
1061
+ stix_object["x_opencti_cvss_v4_vector_string"]
1062
+ if "x_opencti_cvss_v4_vector_string" in stix_object
1059
1063
  else None
1060
1064
  ),
1061
1065
  x_opencti_cvss_v4_base_score=(
@@ -941,6 +941,7 @@ class OpenCTIStix2:
941
941
  "workspace": self.opencti.workspace,
942
942
  "publicdashboard": self.opencti.public_dashboard,
943
943
  "notification": self.opencti.notification,
944
+ "internalfile": self.opencti.internal_file,
944
945
  }
945
946
 
946
947
  def generate_standard_id_from_stix(self, data):
@@ -2599,7 +2600,7 @@ class OpenCTIStix2:
2599
2600
  # Element is not knowledge we need to use the right api
2600
2601
  stix_helper = self.get_internal_helper().get(item["type"])
2601
2602
  if stix_helper and hasattr(stix_helper, "delete"):
2602
- stix_helper.delete(id=item["id"])
2603
+ stix_helper.delete(id=item["id"], item=item)
2603
2604
  else:
2604
2605
  raise ValueError(
2605
2606
  "Delete operation or not found stix helper", {"type": item["type"]}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pycti
3
- Version: 6.7.0
3
+ Version: 6.7.2
4
4
  Summary: Python API client for OpenCTI.
5
5
  Home-page: https://github.com/OpenCTI-Platform/client-python
6
6
  Author: Filigran
@@ -12,6 +12,7 @@ pycti/api/__init__.py
12
12
  pycti/api/opencti_api_client.py
13
13
  pycti/api/opencti_api_connector.py
14
14
  pycti/api/opencti_api_draft.py
15
+ pycti/api/opencti_api_internal_file.py
15
16
  pycti/api/opencti_api_notification.py
16
17
  pycti/api/opencti_api_pir.py
17
18
  pycti/api/opencti_api_playbook.py
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes