pycti 6.2.4__tar.gz → 6.2.6__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 (78) hide show
  1. {pycti-6.2.4 → pycti-6.2.6}/PKG-INFO +2 -2
  2. {pycti-6.2.4 → pycti-6.2.6}/pycti/__init__.py +3 -1
  3. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_grouping.py +5 -2
  4. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_threat_actor_group.py +1 -1
  5. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_threat_actor_individual.py +1 -1
  6. {pycti-6.2.4 → pycti-6.2.6}/pycti.egg-info/PKG-INFO +2 -2
  7. {pycti-6.2.4 → pycti-6.2.6}/pycti.egg-info/requires.txt +1 -1
  8. {pycti-6.2.4 → pycti-6.2.6}/setup.cfg +1 -1
  9. {pycti-6.2.4 → pycti-6.2.6}/LICENSE +0 -0
  10. {pycti-6.2.4 → pycti-6.2.6}/README.md +0 -0
  11. {pycti-6.2.4 → pycti-6.2.6}/pycti/api/__init__.py +0 -0
  12. {pycti-6.2.4 → pycti-6.2.6}/pycti/api/opencti_api_client.py +0 -0
  13. {pycti-6.2.4 → pycti-6.2.6}/pycti/api/opencti_api_connector.py +0 -0
  14. {pycti-6.2.4 → pycti-6.2.6}/pycti/api/opencti_api_playbook.py +0 -0
  15. {pycti-6.2.4 → pycti-6.2.6}/pycti/api/opencti_api_work.py +0 -0
  16. {pycti-6.2.4 → pycti-6.2.6}/pycti/connector/__init__.py +0 -0
  17. {pycti-6.2.4 → pycti-6.2.6}/pycti/connector/opencti_connector.py +0 -0
  18. {pycti-6.2.4 → pycti-6.2.6}/pycti/connector/opencti_connector_helper.py +0 -0
  19. {pycti-6.2.4 → pycti-6.2.6}/pycti/connector/opencti_metric_handler.py +0 -0
  20. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/__init__.py +0 -0
  21. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/indicator/__init__.py +0 -0
  22. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/indicator/opencti_indicator_properties.py +0 -0
  23. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_attack_pattern.py +0 -0
  24. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_campaign.py +0 -0
  25. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_case_incident.py +0 -0
  26. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_case_rfi.py +0 -0
  27. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_case_rft.py +0 -0
  28. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_channel.py +0 -0
  29. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_course_of_action.py +0 -0
  30. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_data_component.py +0 -0
  31. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_data_source.py +0 -0
  32. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_event.py +0 -0
  33. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_external_reference.py +0 -0
  34. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_feedback.py +0 -0
  35. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_identity.py +0 -0
  36. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_incident.py +0 -0
  37. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_indicator.py +0 -0
  38. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_infrastructure.py +0 -0
  39. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_intrusion_set.py +0 -0
  40. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_kill_chain_phase.py +0 -0
  41. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_label.py +0 -0
  42. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_language.py +0 -0
  43. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_location.py +0 -0
  44. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_malware.py +0 -0
  45. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_malware_analysis.py +0 -0
  46. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_marking_definition.py +0 -0
  47. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_narrative.py +0 -0
  48. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_note.py +0 -0
  49. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_observed_data.py +0 -0
  50. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_opinion.py +0 -0
  51. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_report.py +0 -0
  52. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_stix.py +0 -0
  53. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_stix_core_object.py +0 -0
  54. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_stix_core_relationship.py +0 -0
  55. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_stix_cyber_observable.py +0 -0
  56. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_stix_domain_object.py +0 -0
  57. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_stix_nested_ref_relationship.py +0 -0
  58. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_stix_object_or_stix_relationship.py +0 -0
  59. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_stix_sighting_relationship.py +0 -0
  60. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_task.py +0 -0
  61. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_threat_actor.py +0 -0
  62. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_tool.py +0 -0
  63. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_vocabulary.py +0 -0
  64. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/opencti_vulnerability.py +0 -0
  65. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/stix_cyber_observable/__init__.py +0 -0
  66. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/stix_cyber_observable/opencti_stix_cyber_observable_deprecated.py +0 -0
  67. {pycti-6.2.4 → pycti-6.2.6}/pycti/entities/stix_cyber_observable/opencti_stix_cyber_observable_properties.py +0 -0
  68. {pycti-6.2.4 → pycti-6.2.6}/pycti/utils/__init__.py +0 -0
  69. {pycti-6.2.4 → pycti-6.2.6}/pycti/utils/constants.py +0 -0
  70. {pycti-6.2.4 → pycti-6.2.6}/pycti/utils/opencti_logger.py +0 -0
  71. {pycti-6.2.4 → pycti-6.2.6}/pycti/utils/opencti_stix2.py +0 -0
  72. {pycti-6.2.4 → pycti-6.2.6}/pycti/utils/opencti_stix2_splitter.py +0 -0
  73. {pycti-6.2.4 → pycti-6.2.6}/pycti/utils/opencti_stix2_update.py +0 -0
  74. {pycti-6.2.4 → pycti-6.2.6}/pycti/utils/opencti_stix2_utils.py +0 -0
  75. {pycti-6.2.4 → pycti-6.2.6}/pycti.egg-info/SOURCES.txt +0 -0
  76. {pycti-6.2.4 → pycti-6.2.6}/pycti.egg-info/dependency_links.txt +0 -0
  77. {pycti-6.2.4 → pycti-6.2.6}/pycti.egg-info/top_level.txt +0 -0
  78. {pycti-6.2.4 → pycti-6.2.6}/pyproject.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pycti
3
- Version: 6.2.4
3
+ Version: 6.2.6
4
4
  Summary: Python API client for OpenCTI.
5
5
  Home-page: https://github.com/OpenCTI-Platform/client-python
6
6
  Author: Filigran
@@ -28,7 +28,7 @@ Requires-Dist: python-magic-bin~=0.4.14; sys_platform == "win32"
28
28
  Requires-Dist: python_json_logger~=2.0.4
29
29
  Requires-Dist: PyYAML~=6.0
30
30
  Requires-Dist: requests~=2.32.2
31
- Requires-Dist: setuptools~=70.1.0
31
+ Requires-Dist: setuptools~=70.3.0
32
32
  Requires-Dist: cachetools~=5.3.0
33
33
  Requires-Dist: prometheus-client~=0.20.0
34
34
  Requires-Dist: opentelemetry-api~=1.22.0
@@ -1,5 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
- __version__ = "6.2.4"
2
+ __version__ = "6.2.6"
3
3
 
4
4
  from .api.opencti_api_client import OpenCTIApiClient
5
5
  from .api.opencti_api_connector import OpenCTIApiConnector
@@ -15,6 +15,7 @@ from .entities.opencti_campaign import Campaign
15
15
  from .entities.opencti_case_incident import CaseIncident
16
16
  from .entities.opencti_case_rfi import CaseRfi
17
17
  from .entities.opencti_case_rft import CaseRft
18
+ from .entities.opencti_channel import Channel
18
19
  from .entities.opencti_course_of_action import CourseOfAction
19
20
  from .entities.opencti_data_component import DataComponent
20
21
  from .entities.opencti_data_source import DataSource
@@ -84,6 +85,7 @@ __all__ = [
84
85
  "CaseIncident",
85
86
  "CaseRfi",
86
87
  "CaseRft",
88
+ "Channel",
87
89
  "Task",
88
90
  "ConnectorType",
89
91
  "CourseOfAction",
@@ -1,5 +1,6 @@
1
1
  # coding: utf-8
2
2
 
3
+ import datetime
3
4
  import json
4
5
  import uuid
5
6
 
@@ -395,10 +396,12 @@ class Grouping:
395
396
  """
396
397
 
397
398
  @staticmethod
398
- def generate_id(name, context):
399
+ def generate_id(name, context, created):
399
400
  name = name.lower().strip()
400
401
  context = context.lower().strip()
401
- data = {"name": name, "context": context}
402
+ if isinstance(created, datetime.datetime):
403
+ created = created.isoformat()
404
+ data = {"name": name, "context": context, "created": created}
402
405
  data = canonicalize(data, utf8=False)
403
406
  id = str(uuid.uuid5(uuid.UUID("00abedb4-aa42-466c-9c01-fed23315a9b7"), data))
404
407
  return "grouping--" + id
@@ -140,7 +140,7 @@ class ThreatActorGroup:
140
140
  @staticmethod
141
141
  def generate_id(name):
142
142
  name = name.lower().strip()
143
- data = {"name": name}
143
+ data = {"name": name, "opencti_type": "Threat-Actor-Group"}
144
144
  data = canonicalize(data, utf8=False)
145
145
  id = str(uuid.uuid5(uuid.UUID("00abedb4-aa42-466c-9c01-fed23315a9b7"), data))
146
146
  return "threat-actor--" + id
@@ -140,7 +140,7 @@ class ThreatActorIndividual:
140
140
  @staticmethod
141
141
  def generate_id(name):
142
142
  name = name.lower().strip()
143
- data = {"name": name}
143
+ data = {"name": name, "opencti_type": "Threat-Actor-Individual"}
144
144
  data = canonicalize(data, utf8=False)
145
145
  id = str(uuid.uuid5(uuid.UUID("00abedb4-aa42-466c-9c01-fed23315a9b7"), data))
146
146
  return "threat-actor--" + id
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pycti
3
- Version: 6.2.4
3
+ Version: 6.2.6
4
4
  Summary: Python API client for OpenCTI.
5
5
  Home-page: https://github.com/OpenCTI-Platform/client-python
6
6
  Author: Filigran
@@ -28,7 +28,7 @@ Requires-Dist: python-magic-bin~=0.4.14; sys_platform == "win32"
28
28
  Requires-Dist: python_json_logger~=2.0.4
29
29
  Requires-Dist: PyYAML~=6.0
30
30
  Requires-Dist: requests~=2.32.2
31
- Requires-Dist: setuptools~=70.1.0
31
+ Requires-Dist: setuptools~=70.3.0
32
32
  Requires-Dist: cachetools~=5.3.0
33
33
  Requires-Dist: prometheus-client~=0.20.0
34
34
  Requires-Dist: opentelemetry-api~=1.22.0
@@ -3,7 +3,7 @@ pika~=1.3.0
3
3
  python_json_logger~=2.0.4
4
4
  PyYAML~=6.0
5
5
  requests~=2.32.2
6
- setuptools~=70.1.0
6
+ setuptools~=70.3.0
7
7
  cachetools~=5.3.0
8
8
  prometheus-client~=0.20.0
9
9
  opentelemetry-api~=1.22.0
@@ -41,7 +41,7 @@ install_requires =
41
41
  python_json_logger~=2.0.4
42
42
  PyYAML~=6.0
43
43
  requests~=2.32.2
44
- setuptools~=70.1.0
44
+ setuptools~=70.3.0
45
45
  cachetools~=5.3.0
46
46
  prometheus-client~=0.20.0
47
47
  opentelemetry-api~=1.22.0
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