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