SiemplifyAction-Modul

class SiemplifyAction.SiemplifyAction

SiemplifyAction.SiemplifyAction(mock_stdin=None, get_source_file=False)

Basen: Siemplify

add_alert_entities_to_custom_list

add_alert_entities_to_custom_list(category_name)

Fügen Sie die Einheiten der Benachrichtigung dem benutzerdefinierten Listeneintrag mit der angegebenen Kategorie hinzu.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
category_name {string} Kategorie für benutzerdefinierte Liste „CustomList“

Gibt Folgendes zurück:

{[CustomList]}: Liste der hinzugefügten Objekte.

Beispiel

Eingabe: category_name. Implizit, Entitäten mit Bereich.
Wenn Sie add_alert_entities_to_custom_list ausführen, erhalten Sie eine Liste von „CustomList“-Objekten und eine Konfigurationsänderung in den Einstellungen.

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
result = siemplify.add_alert_entities_to_custom_list("WhiteListed HOSTs")

Verhalten bei Ergebnissen

Fügt die Kategorie WhiteListed HOSTs hinzu.

Ergebniswert

[<SiemplifyDataModel.CustomList object at 0x0000000003476E10>, <SiemplifyDataModel.CustomList object at 0x0000000003476B00>]

add_attachment

add_attachment(file_path, case_id=None, alert_identifier=None, description=None, is_favorite=False)

Fügen Sie dem Fall‑Repository einen Anhang hinzu.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
file_path {string} Dateipfad „C:\Programme (x86)\Google\Chrome\Application\chrome_proxy.exe“
case_id {string} Fall-ID 234
alert_identifier {string} Benachrichtigungs-ID 12345
Beschreibung {string} Die Beschreibung der Datei
is_favorite boolean Wahr/falsch

Gibt Folgendes zurück:

{long} attachment_id

Beispiel

Eingabe: Explizit Dateipfad, Beschreibung und is_favorite. Implizit: case_id und alert_identifier.

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
result = siemplify.add_attachment("C:\Program Files (x86)\Google\Chrome\Application\chrome_proxy.exe", case_id="234", alert_identifier=None, description=None, is_favorite=True)

Verhalten bei Ergebnissen

Die im Pfad angegebene Datei wird an die Fall-ID 234 angehängt und die Anhäng-ID wird zurückgegeben.

Ergebniswert

5 [Die Anhangs-ID]

add_comment

add_comment(comment, case_id=None, alert_identifier=None)

Fügen Sie einem bestimmten Fall einen neuen Kommentar hinzu.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
Kommentar {string} Kommentar, der dem Fall‑Repository hinzugefügt werden soll
case_id {string} Fall-ID 234 Wenn kein case_id angegeben ist,
wird der aktuelle Fall verwendet.
Standardmäßig keine (optional)
alert_identifier {string} Benachrichtigungs-ID 12345 Wenn kein alert_identifier angegeben ist,wird die aktuelle Benachrichtigung verwendet.

Standardmäßig keine (optional)

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
comment = "Ran some tests on the hash and it seems fine"
siemplify.add_comment(comment=comment)

Verhalten bei Ergebnissen

Der angegebene Kommentar wird dem aktuellen Fall hinzugefügt.

Ergebniswert

Keine

add_entity_insight

add_entity_insight(domain_entity_info, message, triggered_by=None, original_requesting_user=None)

Fügen Sie dem Fall, in dem sie verwendet wird, eine Entitäts-Insight hinzu.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
domain_entity_info {DomainEntityInfo} Das Entitätsobjekt, das eine Entität darstellt, der eine Erkenntnis hinzugefügt werden soll
Nachricht {string} Insight-Mitteilung
triggered_by {string} Name der Integration Wenn kein Integrationsname angegeben ist, wird die ausgewählte Integration für die Aktion verwendet.
Standardmäßig „None“ (optional)
original_requesting_user {string} Anfragender Nutzer Standardmäßig keines (optional)

Gibt Folgendes zurück:

{boolean} True bei Erfolg. Andernfalls False.

Beispiel

Verhalten bei Ergebnissen

Ergebniswert

add_entity_to_case

add_entity_to_case(entity_identifier, entity_type, is_internal, is_suspicious, is_enriched, is_vulnerable, properties, case_id=None, alert_identifier=None, environment=None)

Dem aktuellen Fall eine Entität hinzufügen

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
entity_identifier {string} Entitäts-ID 192.0.2.1, beispiel.de
entity_type {string} Entitätstyp „ADDRESS“
is_internal {boolean} Intern/Extern
is_suspicious {boolean} Verdächtig/Nicht verdächtig
is_enriched {boolean} Wahr/falsch Standardmäßig „false“
is_vulnerable {boolean} Wahr/falsch Standardmäßig „false“
properties {dict} {"Property1":"PropertyValue", "Property2":"PropertyValue2"}

Gibt Folgendes zurück:

NoneType

Wenn bereits eine Entität vorhanden ist, wird der folgende Fehler angezeigt: /

500 Server Error: Internal Server Error for url: https://localhost:8443/api/external/v1/sdk/CreateEntity?format=snake: \"ErrorMessage\":\"Cannot add entity [Identifier:Entities Identifies - Type:siemplify.parameters[] to alert [MONITORED MAILBOX <EXAMPLE@EXAMPLE.COM>_633997CB-D23B-4A2B-92F2-AD1D350284FF] in case [12345] because the entity already exists >there.\"

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
siemplify.add_entity_to_case(entity_identifier, entity_type, is_internal, is_suspicious, is_enriched, is_vulnerable, properties, case_id, alert_identifier, environment)

Verhalten bei Ergebnissen

Mit dieser Funktion wird dem Fall eine neue Entität hinzugefügt, sofern sie nicht bereits vorhanden ist.

Ergebniswert

Keine

add_tag

add_tag(tag, case_id=None, alert_identifier=None)

Fügen Sie einem bestimmten Fall ein neues Tag hinzu.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
Tag {string} Hinzuzufügendes Tag Ein beliebiger String, der als Tag verwendet werden soll
case_id {string} Fall-ID 12345 Wenn keine case_id angegeben ist,
wird die aktuelle Fall-ID verwendet.
Standardmäßig keine (optional)
alert_identifier {string} Benachrichtigungs-ID 123 Wenn kein alert_identifier angegeben ist,
wird die aktuelle Benachrichtigungs-ID verwendet.
Standardmäßig keine(optional)

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
tag_to_be_added = "MaliciousMail"
siemplify.add_tag(tag=tag_to_be_added)

Verhalten bei Ergebnissen

Dem aktuellen Fall wird das Tag „MaliciousMail“ hinzugefügt.

Ergebniswert

Keine

any_alert_entities_in_custom_list

any_alert_entities_in_custom_list(category_name)

Prüfen Sie, ob für eines der Objekte der Benachrichtigung ein benutzerdefinierter Listeneintrag mit der angegebenen Kategorie vorhanden ist.
Diese Funktion ruft einen Kategorienamen aus CustomLists ab und gibt True (boolescher Wert) zurück, wenn eine der Entitäten im Bereich in dieser Kategorie enthalten ist. Eine Einheit wird der Kategorie zugeordnet, wenn ihre Kennung in der Tabelle „CustomLists“ in den Einstellungen mit dieser Kategorie aufgeführt ist.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
category_name {string} Name der Kategorie der benutzerdefinierten Liste BlackListed IPs

Gibt Folgendes zurück:

{boolean} True, wenn es eine Entität in der Kategorie gibt, andernfalls False.

Beispiel 1

from SiemplifyAction import SiemplifyAction \
siemplify = SiemplifyAction() \
result = siemplify.any_entity_in_custom_list("BlackListed IPs")

Beispiel 2

from SiemplifyAction import SiemplifyAction \
siemplify = SiemplifyAction() \
result = siemplify.any_entity_in_custom_list("Executive IPs")

Verhalten bei Ergebnissen

Das Ergebnis von Beispielcode 1 ist True. Das Ergebnis von Beispielcode 2 ist False.

Ergebniswert

True oder False

assign_case

assign_case(user, case_id=None, alert_identifier=None)

Weisen Sie dem Nutzer den Fall zu.

Diese Funktion funktioniert mit der Nutzer-ID oder der Nutzerrolle.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
Nutzer {string} Nutzer-ID oder Nutzerrolle USER_ID, Administrator, @Tier1
case_id {string} Fall-ID 12345 Wenn keine case_id angegeben ist,
wird die aktuelle Fall-ID verwendet.
Standardmäßig keine (optional)
alert_identifier {string} Benachrichtigungs-ID 123 Wenn kein alert_identifier angegeben ist,
wird die aktuelle Benachrichtigungs-ID verwendet.
Standardmäßig keine (optional)

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
assigned_user= "Admin"
siemplify.assign_case(assigned_user)

Verhalten bei Ergebnissen

Der Fall wird dem Administratornutzer zugewiesen.

Ergebniswert

Keine

attach_workflow_to_case

attach_workflow_to_case(workflow_name, cyber_case_id=None, indicator_identifier=None)

Hängen Sie dem aktuellen Hinweis ein Playbook an.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
workflow_name {string} Workflow-Name (Playbook)
cyber_case_id {string} Fall-ID 234 Wenn kein Fall angegeben ist, wird der aktuelle Fall verwendet.
Standardmäßig keine (optional)
indicator_identifier {string} Benachrichtigungs-ID 12345 Wenn keine Warnungs-ID angegeben ist,
wird die aktuelle Warnung verwendet.
Standardmäßig keine (optional)

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
siemplify.attach_workflow_to_case(workflow_name, cyber_case_id, indicator_identifier)

Verhalten bei Ergebnissen

Hängt den angegebenen Workflow an den Fall für die angegebene Indikatorkennung an.

Ergebniswert

Keine

Property-Fall

change_case_priority

change_case_priority(priority, case_id=None, alert_identifier=None)

Fallpriorität ändern

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
Priorität {int} Die Priorität, die durch die einzelnen Zahlen dargestellt wird, ist:
Niedrig, Mittel, Hoch und Kritisch
{"Low": 40, "Medium": 60, "High": 80, "Critical": 100}
case_id {string} Fall-ID 12345 Wenn kein Fall angegeben ist, wird der aktuelle Fall verwendet.
alert_identifier {string} Benachrichtigungs-ID 123 Wenn keine Warnungs-ID angegeben ist, wird die aktuelle Warnung verwendet.

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
priority_to_change_to = 60
siemplify.change_case_priority(priority=priority_to_change_to )

Verhalten bei Ergebnissen

Die Fallpriorität wird in „Mittel“ geändert.

Ergebniswert

Keine

change_case_stage

change_case_stage(stage, case_id=None, alert_identifier=None)

Fallphase ändern

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
Phase {string} Die Phase muss genau mit dem String übereinstimmen, der in der Tabelle case stages definiert ist. Vorfall,
Untersuchung
case_id {string} Fall-ID 12345 Wenn kein Fall angegeben ist, wird der aktuelle Fall verwendet.
alert_identifier {string} Benachrichtigungs-ID 123 Wenn keine Warnungs-ID angegeben ist, wird die aktuelle Warnung verwendet.

Gibt Folgendes zurück:

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
stage_to_change_to = "Investigation"
siemplify.change_case_stage(stage=stage_to_change_to)

Verhalten bei Ergebnissen

Der Status des Falls wird in „Wird untersucht“ geändert.

Ergebniswert

Keine

close_alert

close_alert(root_cause, comment, reason, case_id=None, alert_id=None)

Schließt die aktuelle Benachrichtigung.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
root_cause {string} Ursache für Schließen des Falls Ein String aus der Tabelle „Ursache für Schließen des Falls“
in den Einstellungen
Kommentar {string} Kommentar Hier kann ein beliebiger String verwendet werden. Der Kommentar sollte den Fall beschreiben,
ist aber nicht eingeschränkt.
reason {ApiSyncAlertCloseReasonEnum} Einer von drei vordefinierten Strings, die im Dialogfeld
bei manueller Eingabe verfügbar sind: „NotMalicious“, „Malicious“
und „Maintenance“
Weitere Informationen finden Sie unter SiemplifyDataModel.ApiSyncAlertCloseReasonEnum.

Gibt Folgendes zurück:

{dict} Ergebnis des Servervorgangs

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
reason = "Maintenance"
root_cause = "Employee Error"
comment = "User accidentally activated a correlation before it was ready to be used and triggered this alert"
siemplify.close_alert(reason=reason, root_cause=root_cause, comment=comment)

Verhalten bei Ergebnissen

Die aktuelle Benachrichtigung wird in einen neuen Fall verschoben und anschließend mit der Benachrichtigung geschlossen.

Ergebniswert

Keine

close_case

close_case(root_cause, comment, reason, case_id=None, alert_identifier=None)

Schließe den Fall.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
root_cause {string} Ursache für Schließen des Falls
Kommentar {string} Kommentar Hier kann ein beliebiger String verwendet werden. Der Kommentar sollte den Fall beschreiben, ist aber nicht eingeschränkt.
reason {ApiSyncAlertCloseReasonEnum} Grund für Schließen des Falls Einer von drei vordefinierten Strings, die im Dialogfeld verfügbar sind, wenn die Aktion manuell ausgeführt wird: „NotMalicious“, „Malicious“ und „Maintenance“
case_id {string} Fall-ID 12345 Wenn kein Fall angegeben ist, wird der aktuelle Fall verwendet.
alert_identifier {string} Benachrichtigungs-ID 123 Wenn keine Warnungs-ID angegeben ist, wird die aktuelle Warnung verwendet.

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
reason = "Maintenance"
root_cause = "Employee Error"
comment = "User accidentally activated a correlation before it was ready to be used and triggered this alert"
siemplify.close_case(reason=reason, root_cause=root_cause, comment=comment)

Verhalten bei Ergebnissen

Der Fall wird mit dem angegebenen Grund, der Ursache und dem Kommentar geschlossen.

Ergebniswert

Keine

create_case_insight

create_case_insight(triggered_by, title, content, entity_identifier, severity, insight_type, additional_data=None, additional_data_type=None, additional_data_title=None)

Fügen Sie dem Fall einen Insight hinzu.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
triggered_by {string} Name der Integration VirusTotal, XForce
Titel {string} Titel der Statistik Angereichert durch VirusTotal
content {string} Insight-Mitteilung Insight-Nachricht
entity_identifier {string} Entitäts-ID example.com
die Ausprägung {int} Wichtigkeitsstufe 0 = Info,
1 = Warnung,
2 = Fehler
insight_type {int} Statistiktyp 0 = allgemein,
1 = Entität
additional_data {string} Zusätzliche Daten für Statistiken {"checked against": "VT", "malicious": "No"}
additional_data_type {int} Art der zusätzlichen Daten „General“=0,
„Entity“=1
additional_data_title {string} Zusätzlicher Datentitel für Statistiken VT-Prüfung

Gibt Folgendes zurück:

{boolean} True bei Erfolg. Andernfalls False.

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
siemplify.create_case_insight(triggered_by, title, content, entity_identifier, severity, insight_type, additional_data, additional_data_type, additional_data_title)

Verhalten bei Ergebnissen

Erstellt den Insight für einen Fall mit definierten Daten.
True, wenn eine Fall-Statistik erstellt wird. Andernfalls False.

Ergebniswert

True oder False

property current_alert

dismiss_alert

dismiss_alert(alert_group_identifier, should_close_case_if_all_alerts_were_dismissed, case_id=None)

Property-Umgebung

escalate_case

escalate_case(comment, case_id=None, alert_identifier=None)

Eskaliere den Fall.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
Kommentar {string} Kommentar eskalieren
case_id {string} Fall-ID 12345
alert_identifier {string} Benachrichtigungs-ID 123

extract_action_param

extract_action_param(param_name, default_value=None, input_type=<class 'str'>, is_mandatory=False, print_value=False)

Einen Aktionsskriptparameter abrufen.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
param_name {string} Name des Parameters Einer der für die Aktion verfügbaren Parameternamen
default_value {any} Der Standardwert des Parameters Der angegebene Wert wird zurückgegeben, wenn der Parameter nicht festgelegt wurde
(wenn is_mandatory auf „False“ gesetzt ist).
Wenn der Parameter nicht übergeben wird, verwenden Sie diesen Wert standardmäßig.
Standardmäßig keine (optional)
input_type {obj} Parameter in einen anderen Typ umwandeln int Standardmäßig „str“ (optional)
is_mandatory {boolean} Ausnahme auslösen, wenn der Parameter leer ist Wahr/falsch Standardmäßig „false“
print_value {boolean} Wert im Log ausgeben Wahr/falsch Standardmäßig „false“

Gibt Folgendes zurück:

Der Parameterwert, standardmäßig {string}, sofern input_type nicht angegeben ist.

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
param_value= siemplify.extract_action_param(
 "Threshold",
 default_value=-1,
 input_type=int,
 is_mandatory=False,
 print_value=False)

Verhalten bei Ergebnissen

Der Wert des ausgewählten Parameters wird zurückgegeben und in den ausgewählten Typ umgewandelt.

Ergebniswert

20

fetch_and_save_timestamp

fetch_and_save_timestamp(datetime_format=False, timezone=False, new_timestamp=1683033493671)

Zeitstempel abrufen und im Fallkontext speichern.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
datetime_format {boolean} Format für Datum/Uhrzeit „True“ für das Datums-/Uhrzeitformat, „False“ für Unix Standardmäßig „false“ (optional)
Zeitzone Parameter wird nicht mehr unterstützt
new_timestamp {int} Der zu speichernde Zeitstempel Standardmäßig Unix-Epochenzeit (optional)

Gibt Folgendes zurück:

{int} datetime.

Beispiel

from SiemplifyAction import SiemplifyAction
sa = SiemplifyAction()
sa.fetch_and_save_timestamp(self, datetime_format=False, new_timestamp=SiemplifyUtils.Unix_now())

Verhalten bei Ergebnissen

Der letzte Zeitstempel wird abgerufen und als TIMESTAMP-Datei im aktuellen Verzeichnis gespeichert.

Ergebniswert

datetime.datetime(2019, 7, 16, 14, 26, 2, 26000)/1563276380

fetch_timestamp

fetch_timestamp(datetime_format=False, timezone=False)

Ruft den mit „save_timestamp“ gespeicherten Zeitstempel ab.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
datetime_format {boolean} Wenn „True“, wird der Zeitstempel als „datetime“ zurückgegeben. Andernfalls wird die Unixzeit zurückgegeben. Wahr/falsch Standardmäßig „false“ (optional)
Zeitzone Parameter wird nicht mehr unterstützt

Gibt Folgendes zurück:

Gespeicherte Unix-Epoch-Zeit und Datum/Uhrzeit.

Beispiel

from SiemplifyAction import SiemplifyAction
sa = SiemplifyAction()
result = sa.fetch_timestamp(datetime_format=True)

Verhalten bei Ergebnissen

Der letzte Zeitstempel wird abgerufen und als TIMESTAMP-Datei im aktuellen Verzeichnis gespeichert.

Ergebniswert

datetime.datetime(2019, 7, 16, 14, 26, 2, 26000)/1563276380

get_alert_context_property

get_alert_context_property(property_key)

Kontext-Property aus der aktuellen Benachrichtigung abrufen.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
property_key {string} Der Schlüssel des angeforderten Attributs

Gibt Folgendes zurück:

{string} Der Attributwert

get_alerts_ticket_ids_from_cases_closed_since_timestamp

get_alerts_ticket_ids_from_cases_closed_since_timestamp(timestamp_unix_ms, rule_generator)

Benachrichtigungen zu Fällen erhalten, die seit dem Zeitstempel geschlossen wurden.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
timestamp_unix_ms {long} Zeitstempel 1550409785000L
rule_generator {string} Detektor für Phishing-E‑Mails

Gibt Folgendes zurück:

{[string]} Liste der Benachrichtigungs-IDs

get_attachments

get_attachments(case_id=None)

Anhänge aus einem Fall abrufen
Diese Funktion ruft eine Liste benutzerdefinierter Listenelemente aus der Kategorie- und Entitätenliste ab und gibt eine Liste benutzerdefinierter Listenelementobjekte zurück.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
case_id {string} Fall-ID 234 Wenn kein Fall angegeben ist, wird der aktuelle Fall verwendet (optional).

Gibt Folgendes zurück:

{dict} Anhänge

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
result = siemplify.get_attachments(case_id="234")

Verhalten bei Ergebnissen

Für die Fall-ID 234 wird eine Liste mit Anhängen zurückgegeben.

Ergebniswert

[{u'is_favorite': False, u'description': u'test', u'type': u'.exe', u'id': 4, u'name': u'chrome_proxy'}]

get_case_comments

get_case_comments(case_id=None)

Fallkommentare abrufen

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
case_id {string} Fall-ID 234 Wenn kein Fall angegeben ist, wird der aktuelle Fall verwendet.

Gibt Folgendes zurück:

{[dict]} mit Fallkommentaren

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
siemplify.get_case_comments(case_id)

Verhalten bei Ergebnissen

Alle Kommentare, die zum Fall gehören, werden abgerufen.

Ergebniswert

[{'comment': u'this is a comment',
u'is_deleted': False,
u'last_editor_full_name': u'example user',
u'modification_time_unix_time_in_ms_for_client': 0,
u'creation_time_unix_time_in_ms': 1681904404087, u'id': 12,
u'modification_time_unix_time_in_ms': 1681904404087,
u'case_id': 234,
u'is_favorite': False,
u'alert_identifier': None,
u'creator_user_id': u'cd1c112a-0277-44a9-b68d-98ceef9b0399',
u'last_editor': u'cd1c112a-0277-44a9-b68d-98ceef9b0399',
u'type': 5,
u'comment_for_client': None,
u'creator_full_name': u'example user'}]

get_case_context_property

get_case_context_property(property_key)

Eine Kontext-Property für einen Fall abrufen.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
property_key {string} Die angeforderte Haupteigenschaft

Gibt Folgendes zurück:

{string} – der Attributwert

get_configuration

get_configuration(provider, environment=None, integration_instance=None)

Integrationskonfiguration abrufen.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
Anbieter {string} Name der Integration VirusTotal
Umgebung {string} Konfiguration für eine bestimmte Umgebung oder „all“ Optional.
Wenn angegeben, werden die Anmeldedaten aus der entsprechenden
-Umgebungskonfiguration abgerufen. Wenn keine Umgebung angegeben ist,wird standardmäßig die Fallumgebung verwendet.

Wenn keine Konfiguration für die jeweilige Umgebung vorhanden ist,
wird die Standardkonfiguration zurückgegeben.
integration_instance {string} Die Kennung der Integrationsinstanz

Gibt Folgendes zurück:

{dict} Konfigurationsdetails

get_similar_cases

get_similar_cases(consider_ports, consider_category_outcome, consider_rule_generator, consider_entity_identifiers, days_to_look_back, case_id=None, end_time_unix_ms=None)

Ähnliche Anfragen ansehen

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
consider_ports {boolean} Parameter konfiguriert, ob ein Portfilter verwendet werden soll Wahr/Falsch
consider_category_outcome {boolean} Parameter, mit dem konfiguriert wird, ob das Kategorieergebnis der Ereignisse berücksichtigt werden soll. Wahr/Falsch
consider_rule_generator {boolean} Mit diesem Parameter wird konfiguriert, ob der Regelgenerator für die Benachrichtigungen berücksichtigt werden soll. Wahr/Falsch
consider_entity_identifiers {boolean} Mit diesem Parameter wird konfiguriert, ob Entitätskennungen für die Benachrichtigungen berücksichtigt werden sollen. Wahr/Falsch
days_to_look_back {int} Parameter konfiguriert die Anzahl der Tage, die vor dem aktuellen Fall nach ähnlichen Fällen gesucht werden soll. 365

Gibt Folgendes zurück:

{[int]} Liste der Fall-IDs

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
result = siemplify.get_similar_cases(consider_ports=True,
 consider_category_outcome=False,
 consider_rule_generator=False,
 consider_entity_identifiers=False,
 days_to_look_back=30, case_id="234", end_time_unix_ms=None)

Verhalten bei Ergebnissen

Es wird eine Liste von Fall-IDs zurückgegeben, die dem Fall 234 ähneln.

Ergebniswert

[4, 231]

get_ticket_ids_for_alerts_dismissed_since_timestamp

get_ticket_ids_for_alerts_dismissed_since_timestamp(timestamp_unix_ms)

Property is_timeout_reached

load_case_data

load_case_data()

Mit dieser Funktion werden die Falldaten geladen.

Parameter

Keine Parameter erforderlich.

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
result = siemplify.load_case_data()

Verhalten bei Ergebnissen

Die Anfragedaten werden geladen.

Ergebniswert

Keine

Property „log_location“

mark_case_as_important

mark_case_as_important(case_id=None, alert_identifier=None)

Markieren Sie den Fall als wichtig.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
case_id {string} Fall-ID 234
alert_identifier {string} Benachrichtigungs-ID 12345

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
siemplify.mark_case_as_important()

Verhalten bei Ergebnissen

Der aktuelle Fall ist als wichtig markiert.

Ergebniswert

Keine

raise_incident

raise_incident(case_id=None, alert_identifier=None)

Vorfall melden

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
case_id {string} Fall-ID 234
alert_identifier {string} Benachrichtigungs-ID 12345

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
siemplify.raise_incident(case_id, alert_identifier)

Verhalten bei Ergebnissen

Der Fall wurde auf den Status „Vorfall“ hochgestuft.

Ergebniswert

Keine

remove_alert_entities_from_custom_list

remove_alert_entities_from_custom_list(category_name)

Entfernen Sie die Entitäten der Benachrichtigung aus dem benutzerdefinierten Listeneintrag mit der angegebenen Kategorie.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
category_name {string} Die Kategorie der benutzerdefinierten Liste `WhiteListed HOSTs`

Gibt Folgendes zurück:

{[CustomList]} Liste der entfernten CustomList-Objekte.

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
result = siemplify.remove_alert_entities_from_custom_list("WhiteListed HOSTs")

Verhalten bei Ergebnissen

WhiteListed HOSTS wurde entfernt.

Ergebniswert

[<SiemplifyDataModel.CustomList object at 0x0000000003476E10>,
<SiemplifyDataModel.CustomList object at 0x0000000003476B00>]

save_timestamp

save_timestamp(datetime_format=False, timezone=False, new_timestamp=1683033493671)

Speichert den Zeitstempel im aktuellen Skriptkontext.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
datetime_format {boolean} „True“ für das Datums-/Uhrzeitformat, „False“ für Unix Standardwert ist „False“ (optional)
Zeitzone Parameter wird nicht mehr unterstützt
new_timestamp {long} Zeitstempel zum Speichern im Kontext Der Zeitstempel wird standardmäßig auf den Unix-Zeitstempel des Methodenaufrufs gesetzt.

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
sa = SiemplifyAction()
sa.save_timestamp(self, datetime_format=False, new_timestamp=SiemplifyUtils.unix_now())

Verhalten bei Ergebnissen

Der neue Zeitstempel wird als TIMESTAMP-Datei im aktuellen Verzeichnis gespeichert.

Ergebniswert

Keine

set_alert_context_property

set_alert_context_property(property_key, property_value)

Legen Sie eine Eigenschaft des Benachrichtigungskontexts anhand von Schlüssel/Wert-Paaren fest.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
property_key {string} Schlüssel der Property, die im Kontext gespeichert werden soll
property_value {string} Wert des Attributs, der im Kontext gespeichert werden soll

set_alert_sla

set_alert_sla(period_time, period_type, critical_period_time, critical_period_type, case_id=None, alert_id=None)

Legt das SLA für die angegebene alert_identifier von case_id fest. Die mit dieser API festgelegte SLA sollte alle anderen SLA-Typen für Benachrichtigungen übertreffen.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
period_time {int/str} Der gesamte SLA-Zeitraum period_time > 0
period_type {string} Zeiteinheiten von „period_time“, dargestellt durch ApiPeriodTypeEnum
critical_period_time {int/str} Der kritische SLA-Zeitraum critical_period_time >= 0
Der kritische Zeitraum (nach der Skalierung mit seinen Zeiteinheiten)
sollte kürzer als der Gesamtzeitraum sein.
critical_period_type {string} Die Zeiteinheiten von „critical_period_time“,
dargestellt durch ApiPeriodTypeEnum
case_id {long} Fall-ID 234
alert_id {string} Benachrichtigungs-ID 12345

set_case_context_property

set_case_context_property(property_key, property_value)

Legen Sie eine Eigenschaft für den Fallkontext mit dem Schlüssel/Wert-Paar fest.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
property_key {string} Schlüssel der Unterkunft
property_value {string} Wert der Property

set_case_sla

set_case_sla(period_time, period_type, critical_period_time, critical_period_type, case_id=None)

Legt das SLA des angegebenen case_id fest, falls angegeben. Andernfalls wird das SLA des aktuellen Falls festgelegt. Die mit dieser API festgelegte SLA sollte alle anderen SLA-Typen für Anfragen übertreffen.

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
period_time {int/str} Der gesamte SLA-Zeitraum period_time > 0
period_type {string} Zeiteinheiten von „period_time“, dargestellt durch ApiPeriodTypeEnum
critical_period_time {int/str} Der kritische SLA-Zeitraum critical_period_time > 0
Der kritische Zeitraum (nach der Skalierung mit den zugehörigen Zeiteinheiten)
sollte kürzer als der Gesamtzeitraum sein.
critical_period_type {string} Die Zeiteinheiten von „critical_period_time“,
dargestellt durch ApiPeriodTypeEnum
case_id {long} Fall-ID

signal_handler

signal_handler(sig, frame)

property target_entities

Das target_entities-Objekt ist eine Liste von Entitätsobjekten, für die die konfigurierte Aktion ausgeführt werden kann. Jedes Entitätsobjekt stellt die folgenden Attribute und Methoden bereit:

Entitätseigenschaften

Die folgenden Attribute eines Entitätsobjekts enthalten direkte Daten:

Attribut Datentyp Beschreibung
identifier string Die eindeutige ID (UUID) der Einheit.
creation_time int Der Unix-Zeitstempel für die Erstellung der Entität.
modification_time int Der Unix-Zeitstempel für den Zeitpunkt, an dem das Element zuletzt geändert wurde.
additional_properties dict Ein Dictionary mit zusätzlichen Details zur Entität.
case_identifier string Die ID des übergeordneten Falls, zu dem die Einheit gehört.
alert_identifier string Die ID der Benachrichtigung, die mit der Entität verknüpft ist.
entity_type string Der Entitätstyp, z. B. „HOSTNAME“ oder „USERUNQNAME“.
is_internal bool Gibt an, ob es sich bei der Einheit um ein internes Asset handelt.
is_suspicious bool Gibt an, ob die Entität als verdächtig gekennzeichnet ist.
is_artifact bool Gibt an, ob es sich bei der Entität um ein Artefakt handelt.
is_enriched bool Gibt an, ob die Entität angereichert wurde.
is_vulnerable bool Gibt an, ob die Entität als anfällig gekennzeichnet ist.
is_pivot bool Gibt an, ob es sich bei der Entität um eine Pivot-Entität handelt.

Entitätsmethoden

Die folgenden ausführbaren Funktionen sind für ein Entitätsobjekt verfügbar:

Methode Beschreibung
to_dict() Konvertiert das Entitätsobjekt in ein Standard-Python-Dictionary.

try_set_alert_context_property

try_set_alert_context_property(property_key, property_value)

try_set_case_context_property

try_set_case_context_property(property_key, property_value)

update_alerts_additional_data

update_alerts_additional_data(alerts_additional_data, case_id=None)

Zusätzliche Daten für Benachrichtigungen aktualisieren

Parameter

Parametername Parametertyp Definition Mögliche Werte Kommentare
case_id {string} Fall-ID 234
alerts_additional_data {string:string}

Gibt Folgendes zurück:

NoneType

Beispiel

from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
additional_data = {"testKey":"testValue"}
siemplify.update_alerts_additional_data(alerts_additional_data=additional_data, case_id=caseid)

Verhalten bei Ergebnissen

Aktualisiert die Benachrichtigung mit zusätzlichen Daten wie testKey:testValue.

Ergebniswert

Keine