Module SiemplifyAction

class SiemplifyAction.SiemplifyAction

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

Bases : Siemplify

add_alert_entities_to_custom_list

add_alert_entities_to_custom_list(category_name)

Ajoutez les entités de l'alerte à l'enregistrement de la liste personnalisée avec la catégorie donnée.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
category_name {string} Catégorie de liste personnalisée "CustomList" N/A

Renvoie

{[CustomList]} liste des objets ajoutés.

Exemple

Entrée : category_name. Entités utilisant une portée de manière implicite.
L'exécution de add_alert_entities_to_custom_list génère une liste d'objets "CustomList" et une modification de la configuration dans les paramètres.

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

Comportement des résultats

Ajoute la catégorie WhiteListed HOSTs.

Result value

[<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)

Ajoutez une pièce jointe au mur de la demande.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
file_path {string} Chemin d'accès au fichier "C:\Program Files (x86)\Google\Chrome\Application\chrome_proxy.exe" N/A
case_id {string} Identifiant de la demande 234 N/A
alert_identifier {string} Identifiant de l'alerte 12345 N/A
description {string} Description du fichier N/A N/A
is_favorite booléen N/A Vrai/Faux N/A

Renvoie

{long} attachment_id

Exemple

Entrée : chemin d'accès au fichier, description et is_favorite. De manière implicite, case_id et 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)

Comportement des résultats

Le fichier mentionné dans le chemin d'accès sera joint à la demande n° 234 et l'ID de la pièce jointe sera renvoyé.

Result value

5 [ID de la pièce jointe]

add_comment

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

Ajoutez un commentaire à une demande spécifique.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
commentaire {string} Commentaire à ajouter au mur des cas N/A N/A
case_id {string} Identifiant de la demande 234 Si aucun case_id n'est fourni,la demande actuelle sera utilisée.

Aucune par défaut (facultatif)
alert_identifier {string} Identifiant de l'alerte 12345 Si aucun alert_identifier n'est fourni,l'alerte actuelle est utilisée.

Aucune par défaut (facultatif)

Renvoie

NoneType

Exemple

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

Comportement des résultats

Le commentaire spécifié est ajouté à la demande en cours.

Result value

Aucun

add_entity_insight

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

Ajoutez un insight sur l'entité à la demande dans laquelle il est utilisé.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
domain_entity_info {DomainEntityInfo} Objet d'entité représentant une entité à laquelle ajouter un insight N/A N/A
message {string} Message d'insight N/A N/A
triggered_by {string} Nom de l'intégration N/A Si aucun nom d'intégration n'est fourni, l'intégration sélectionnée pour l'action sera utilisée.
Aucun par défaut (facultatif)
original_requesting_user {string} Utilisateur à l'origine de la demande N/A Aucun par défaut (facultatif)

Renvoie

{boolean} True en cas de réussite. Dans le cas contraire, cette valeur est définie sur False.

Exemple

Comportement des résultats

Result value

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)

Ajoutez une entité à la demande en cours.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
entity_identifier {string} Identifiant d'entité 192.0.2.1, example.com N/A
entity_type {string} Type d'entité "ADDRESS" N/A
is_internal {boolean} N/A Interne/Externe N/A
is_suspicious {boolean} N/A Suspect/Non suspect N/A
is_enriched {boolean} N/A Vrai/Faux Faux par défaut
is_vulnerable {boolean} N/A Vrai/Faux Faux par défaut
du bucket {dict} {"Property1":"PropertyValue", "Property2":"PropertyValue2"} N/A N/A

Renvoie

NoneType

Si une entité existe déjà, l'erreur suivante s'affiche : /

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.\"

Exemple

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)

Comportement des résultats

Cette fonction ajoute une entité à la demande si elle n'y figure pas.

Result value

Aucun

add_tag

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

Ajoutez un tag à une demande spécifique.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
tag {string} Tag à ajouter Toute chaîne à utiliser comme balise N/A
case_id {string} Identifiant de la demande 12345 Si aucun case_id n'est fourni,
l'ID de la demande en cours est utilisé.
Aucune par défaut (facultatif)
alert_identifier {string} Identifiant de l'alerte 123 Si aucun alert_identifier n'est fourni,
l'ID d'alerte actuel est utilisé.
Aucun par défaut(facultatif)

Renvoie

NoneType

Exemple

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

Comportement des résultats

La balise "MaliciousMail" est ajoutée à la demande en cours.

Result value

Aucun

any_alert_entities_in_custom_list

any_alert_entities_in_custom_list(category_name)

Vérifiez si l'une des entités de l'alerte possède un enregistrement de liste personnalisée avec la catégorie donnée.
Cette fonction obtient un nom de catégorie à partir de CustomLists et renvoie True (booléen) si l'une des entités du champ d'application appartient à cette catégorie. Une entité est considérée comme appartenant à la catégorie si son identifiant est listé avec cette catégorie dans les paramètres du tableau CustomLists.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
category_name {string} Nom de la catégorie de liste personnalisée BlackListed IPs N/A

Renvoie

{boolean} True s'il existe une entité dans la catégorie, False sinon.

Exemple 1

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

Exemple 2

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

Comportement des résultats

Le résultat de l'exemple de code 1 est True. Le résultat de l'exemple de code 2 est False.

Result value

Vrai ou faux

assign_case

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

Attribuez la demande à un utilisateur.

Cette fonction fonctionne avec l'ID utilisateur ou le rôle de l'utilisateur.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
utilisateur {string} ID utilisateur ou rôle utilisateur USER_ID, Administrateur, @Tier1 N/A
case_id {string} Identifiant de la demande 12345 Si aucun case_id n'est fourni,
l'ID de la demande en cours est utilisé.
Aucune par défaut (facultatif)
alert_identifier {string} Identifiant de l'alerte 123 Si aucun alert_identifier n'est fourni,
l'ID d'alerte actuel est utilisé.
Aucune par défaut (facultatif)

Renvoie

NoneType

Exemple

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

Comportement des résultats

La demande est attribuée à l'utilisateur administrateur.

Result value

Aucun

attach_workflow_to_case

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

Associez un playbook à l'alerte actuelle.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
workflow_name {string} Nom du workflow (playbook) N/A N/A
cyber_case_id {string} Identifiant de la demande 234 Si aucune demande n'est fournie, la demande actuelle est utilisée.
Aucune par défaut (facultatif)
indicator_identifier {string} Identifiant de l'alerte 12345 Si aucun identifiant d'alerte n'est fourni,
l'alerte actuelle est utilisée.
Aucune par défaut (facultatif)

Renvoie

NoneType

Exemple

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

Comportement des résultats

Associe le workflow donné à la demande pour l'identifiant d'indicateur donné.

Result value

Aucun

Demande concernant une propriété

change_case_priority

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

Modifier la priorité d'une demande.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
priorité {int} La priorité représentée par chaque nombre est respectivement la suivante :
Faible, Moyenne, Élevée et Critique.
{"Low": 40, "Medium": 60, "High": 80, "Critical": 100} N/A
case_id {string} Identifiant de la demande 12345 Si aucune demande n'est fournie, la demande actuelle est utilisée.
alert_identifier {string} Identifiant de l'alerte 123 Si aucun identifiant d'alerte n'est fourni, l'alerte actuelle est utilisée.

Renvoie

NoneType

Exemple

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

Comportement des résultats

La priorité de la demande passe à "Moyenne".

Result value

Aucun

change_case_stage

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

Modifier l'étape de traitement d'une demande

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
étape {string} La phase doit correspondre exactement à la chaîne définie dans le tableau Étapes de la demande. Incident,
Investigation
N/A
case_id {string} Identifiant de la demande 12345 Si aucune demande n'est fournie, la demande actuelle est utilisée.
alert_identifier {string} Identifiant de l'alerte 123 Si aucun identifiant d'alerte n'est fourni, l'alerte actuelle est utilisée.

Renvoie

Exemple

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

Comportement des résultats

L'état de la demande passe à "En cours d'examen".

Result value

Aucun

close_alert

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

Fermer l'alerte actuelle

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
root_cause {string} Cause de la clôture du cas Chaîne extraite de la table "Cause de la clôture de la demande"
dans les paramètres
N/A
commentaire {string} Commentaire N'importe quelle chaîne peut être utilisée ici. Le commentaire doit décrire la demande,
mais n'est pas limité
reason {ApiSyncAlertCloseReasonEnum} L'une des trois chaînes prédéfinies disponibles dans la boîte de dialogue
lorsque l'opération est effectuée manuellement : "NotMalicious", "Malicious"
et "Maintenance"
Consultez SiemplifyDataModel.ApiSyncAlertCloseReasonEnum.

Renvoie

{dict} résultat de l'opération du serveur

Exemple

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)

Comportement des résultats

L'alerte actuelle est déplacée vers une nouvelle demande, puis clôturée avec l'alerte.

Result value

Aucun

close_case

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

Clôturez la demande.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
root_cause {string} Cause de la clôture du cas N/A N/A
commentaire {string} Commentaire N'importe quelle chaîne peut être utilisée ici. Le commentaire doit décrire la demande, mais n'est pas soumis à des restrictions.
reason {ApiSyncAlertCloseReasonEnum} Motif de clôture de la demande L'une des trois chaînes prédéfinies disponibles dans la boîte de dialogue en cas de saisie manuelle : "NotMalicious", "Malicious" et "Maintenance"
case_id {string} Identifiant de la demande 12345 Si aucune demande n'est fournie, la demande actuelle est utilisée.
alert_identifier {string} Identifiant de l'alerte 123 Si aucun identifiant d'alerte n'est fourni, l'alerte actuelle est utilisée.

Renvoie

NoneType

Exemple

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)

Comportement des résultats

La demande est clôturée avec la raison, la cause première et le commentaire spécifiés.

Result value

Aucun

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)

Ajoutez un insight à la demande.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
triggered_by {string} Nom de l'intégration VirusTotal, XForce N/A
titre {string} Titre de l'insight Enrichi par VirusTotal N/A
contenu {string} Message d'insight Message d'insight N/A
entity_identifier {string} Identifiant d'entité example.com N/A
de gravité, {int} Niveau de gravité 0 = info,
1 = avertissement,
2 = erreur
insight_type {int} Type de statistiques 0 = général,
1 = entité
N/A
additional_data {string} Données supplémentaires pour l'insight {"checked against": "VT", "malicious": "No"} N/A
additional_data_type {int} Type de données supplémentaires 'General'=0,
'Entity'=1
N/A
additional_data_title {string} Titre des données supplémentaires pour l'insight Vérification VT N/A

Renvoie

{boolean} True en cas de réussite. Dans le cas contraire, cette valeur est définie sur False.

Exemple

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)

Comportement des résultats

Crée l'insight pour une demande avec des données définies.
True si l'insight sur la demande a été créé. Dans le cas contraire, False.

Result value

Vrai ou faux

property current_alert

dismiss_alert

dismiss_alert(alert_group_identifier, should_close_case_if_all_alerts_were_dismissed, case_id=None)

Environnement property

escalate_case

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

Escaladez la demande.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
commentaire {string} Transmettre un commentaire N/A N/A
case_id {string} Identifiant de la demande 12345 N/A
alert_identifier {string} Identifiant de l'alerte 123 N/A

extract_action_param

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

Obtenez un paramètre de script d'action.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
param_name {string} Nom du paramètre N'importe quel nom de paramètre disponible pour l'action N/A
default_value {any} Valeur par défaut du paramètre La valeur indiquée sera renvoyée si le paramètre n'a pas été défini
(si is_mandatory est défini sur "False").
Si le paramètre n'est pas transmis, utilisez cette valeur par défaut.
Aucune par défaut (facultatif)
input_type {obj} Convertissez le paramètre en un autre type entier str par défaut (facultatif)
is_mandatory {boolean} Générer une exception si le paramètre est vide Vrai/Faux Faux par défaut
print_value {boolean} Imprimer la valeur dans le journal Vrai/Faux Faux par défaut

Renvoie

Valeur du paramètre, {string} par défaut, sauf si input_type est spécifié.

Exemple

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)

Comportement des résultats

La valeur du paramètre sélectionné sera renvoyée et convertie au type sélectionné.

Result value

20

fetch_and_save_timestamp

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

Récupérez le code temporel et enregistrez-le dans le contexte de la demande.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
datetime_format {boolean} Format de date/heure True pour obtenir le format de date et d'heure, False pour le format Unix False par défaut (facultatif)
timezone Paramètre plus accepté
new_timestamp {int} Code temporel à enregistrer N/A Heure de l'epoch Unix par défaut (facultatif)

Renvoie

{int} dateheure.

Exemple

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

Comportement des résultats

Le dernier code temporel est récupéré et enregistré en tant que fichier TIMESTAMP dans le répertoire actuel.

Result value

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

fetch_timestamp

fetch_timestamp(datetime_format=False, timezone=False)

Obtenez le code temporel enregistré avec save_timestamp.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
datetime_format {boolean} Si la valeur est "True", renvoie le code temporel sous forme de date et heure. Sinon, renvoie la valeur au format Unix. Vrai/Faux False par défaut (facultatif)
timezone Paramètre plus accepté

Renvoie

Date et heure epoch Unix enregistrées.

Exemple

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

Comportement des résultats

Le dernier code temporel est récupéré et enregistré en tant que fichier TIMESTAMP dans le répertoire actuel.

Result value

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

get_alert_context_property

get_alert_context_property(property_key)

Obtenez la propriété de contexte à partir de l'alerte actuelle.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
property_key {string} Clé de la propriété demandée N/A N/A

Renvoie

{string} : valeur de la propriété

get_alerts_ticket_ids_from_cases_closed_since_timestamp

get_alerts_ticket_ids_from_cases_closed_since_timestamp(timestamp_unix_ms, rule_generator)

Obtenez des alertes concernant les demandes clôturées depuis l'horodatage.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
timestamp_unix_ms {long} Horodatage 1550409785000L N/A
rule_generator {string} N/A Détecteur d'e-mails d'hameçonnage N/A

Renvoie

{[string]} Liste des ID d'alerte

get_attachments

get_attachments(case_id=None)

Récupérez les pièces jointes d'une demande.
Cette fonction récupère une liste d'éléments de liste personnalisés à partir de la liste des catégories et des entités, et renvoie une liste d'objets d'éléments de liste personnalisés.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
case_id {string} Identifiant de la demande 234 Si aucune demande n'est fournie, la demande actuelle sera utilisée (facultatif).

Renvoie

{dict} pièces jointes

Exemple

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

Comportement des résultats

Une liste de dictionnaires de pièces jointes sera renvoyée pour le numéro de demande 234.

Result value

[{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)

Obtenir les commentaires d'une demande

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
case_id {string} Identifiant de la demande 234 Si aucune demande n'est fournie, la demande actuelle sera utilisée.

Renvoie

{[dict]} de commentaires sur la demande

Exemple

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

Comportement des résultats

Tous les commentaires associés à la demande seront récupérés.

Result value

[{'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)

Obtenez une propriété de contexte de demande.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
property_key {string} Propriété de clé demandée N/A N/A

Renvoie

{string} : valeur de la propriété

get_configuration

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

Obtenir la configuration de l'intégration.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
fournisseur {string} Nom de l'intégration VirusTotal
de test {string} Configuration pour un environnement spécifique ou pour "tous" Facultatif.
Si des identifiants sont fournis, ils seront récupérés à partir de la configuration d'environnement
correspondante. Si aucun environnement n'est spécifié,l'environnement de cas est utilisé par défaut.

S'il n'existe aucune configuration pour l'environnement spécifique,
la configuration par défaut sera renvoyée.
integration_instance {string} Identifiant de l'instance d'intégration N/A N/A

Renvoie

Détails de la configuration {dict}

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)

Obtenez des cas similaires.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
consider_ports {boolean} Ce paramètre permet de configurer l'utilisation ou non d'un filtre de port. Vrai/Faux N/A
consider_category_outcome {boolean} Le paramètre permet de configurer si le résultat de la catégorie des événements doit être pris en compte. Vrai/Faux N/A
consider_rule_generator {boolean} Ce paramètre permet de configurer si le générateur de règles doit être pris en compte pour les alertes. Vrai/Faux N/A
consider_entity_identifiers {boolean} Ce paramètre permet de configurer si les identifiants d'entité doivent être pris en compte pour les alertes. Vrai/Faux N/A
days_to_look_back {int} Le paramètre configure le nombre de jours précédents pour rechercher des cas similaires. 365 N/A

Renvoie

Liste {[int]} des numéros de demande

Exemple

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)

Comportement des résultats

Une liste d'ID de demandes semblables à la demande 234 s'affiche.

Result value

[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()

Cette fonction charge les données du cas.

Paramètres

Aucun paramètre n'est requis.

Renvoie

NoneType

Exemple

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

Comportement des résultats

Les données de la demande sont chargées.

Result value

Aucun

property log_location

mark_case_as_important

mark_case_as_important(case_id=None, alert_identifier=None)

Marquez la demande comme importante.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
case_id {string} Identifiant de la demande 234 N/A
alert_identifier {string} Identifiant de l'alerte 12345 N/A

Renvoie

NoneType

Exemple

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

Comportement des résultats

La demande actuelle est marquée comme importante.

Result value

Aucun

raise_incident

raise_incident(case_id=None, alert_identifier=None)

Signaler un incident.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
case_id {string} Identifiant de la demande 234 N/A
alert_identifier {string} Identifiant de l'alerte 12345 N/A

Renvoie

NoneType

Exemple

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

Comportement des résultats

La demande est passée à l'état "Incident".

Result value

Aucun

remove_alert_entities_from_custom_list

remove_alert_entities_from_custom_list(category_name)

Supprime les entités de l'alerte de l'enregistrement de la liste personnalisée avec la catégorie donnée.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
category_name {string} Catégorie de liste personnalisée `WhiteListed HOSTs` N/A

Renvoie

Liste {[CustomList]} des objets CustomList supprimés.

Exemple

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

Comportement des résultats

WhiteListed HOSTS a été supprimé.

Result value

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

save_timestamp

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

Enregistrez le code temporel dans le contexte de script actuel.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
datetime_format {boolean} N/A True pour le format datetime, False pour le format Unix La valeur par défaut est "False" (facultatif).
timezone Paramètre plus accepté
new_timestamp {long} Code temporel à enregistrer dans le contexte N/A L'horodatage sera défini par défaut sur le code temporel Unix de l'appel de la méthode.

Renvoie

NoneType

Exemple

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

Comportement des résultats

Le nouveau code temporel sera enregistré en tant que fichier TIMESTAMP dans le répertoire actuel.

Result value

Aucun

set_alert_context_property

set_alert_context_property(property_key, property_value)

Définissez une propriété de contexte d'alerte par paires clé/valeur.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
property_key {string} Clé de la propriété à stocker dans le contexte N/A N/A
property_value {string} Valeur de la propriété à stocker dans le contexte N/A N/A

set_alert_sla

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

Définit le SLA du alert_identifier donné de case_id. Le SLA défini à l'aide de cette API doit dépasser tous les autres types de SLA d'alerte.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
period_time {int/str} Période totale couverte par le SLA N/A period_time > 0
period_type {string} Unités de temps de period_time, représentées par ApiPeriodTypeEnum N/A N/A
critical_period_time {int/str} Période critique du SLA N/A critical_period_time >= 0
La période critique (après mise à l'échelle avec ses unités de temps)
doit être inférieure à la période totale.
critical_period_type {string} Unités de temps de critical_period_time,
représentées par ApiPeriodTypeEnum
case_id {long} Identifiant de la demande 234 N/A
alert_id {string} Identifiant de l'alerte 12345 N/A

set_case_context_property

set_case_context_property(property_key, property_value)

Définissez une propriété de contexte de requête à l'aide de la paire clé/valeur.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
property_key {string} Clé de la propriété N/A N/A
property_value {string} Valeur de la propriété N/A N/A

set_case_sla

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

Définit le SLA de l'case_id donné, le cas échéant. Sinon, définit le SLA de la demande en cours. Le SLA défini à l'aide de cette API doit dépasser tous les autres types de SLA pour les demandes.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
period_time {int/str} Période totale couverte par le SLA N/A period_time > 0
period_type {string} Unités de temps de period_time, représentées par ApiPeriodTypeEnum N/A N/A
critical_period_time {int/str} Période critique du SLA N/A critical_period_time > 0
La période critique (après mise à l'échelle avec ses unités de temps)
doit être inférieure à la période totale.
critical_period_type {string} Unités de temps de critical_period_time,
représentées par ApiPeriodTypeEnum
N/A N/A
case_id {long} Identifiant de la demande N/A N/A

signal_handler

signal_handler(sig, frame)

property target_entities

L'objet target_entities est une liste d'objets d'entité sur lesquels l'action configurée peut s'exécuter. Chaque objet d'entité expose les propriétés et méthodes suivantes :

Propriétés des entités

Voici les attributs de détention de données directes d'un objet d'entité :

Propriété Type de données Description
identifier string Identifiant unique (UUID) de l'entité.
creation_time int Code temporel Unix de la création de l'entité.
modification_time int Horodatage UNIX indiquant la dernière modification de l'entité.
additional_properties dict Dictionnaire contenant des informations supplémentaires sur l'entité.
case_identifier string ID de la demande parente à laquelle appartient l'entité.
alert_identifier string ID de l'alerte associée à l'entité.
entity_type string Type d'entité (par exemple, "HOSTNAME", "USERUNQNAME").
is_internal bool Indique si l'entité est un élément interne.
is_suspicious bool Indique si l'entité est signalée comme suspecte.
is_artifact bool Indique si l'entité est un artefact.
is_enriched bool Indique si l'entité a été enrichie.
is_vulnerable bool Indique si l'entité est signalée comme vulnérable.
is_pivot bool Indique si l'entité est une entité pivot.

Méthodes d'entité

Voici les fonctions exécutables disponibles sur un objet d'entité :

Méthode Description
to_dict() Convertit l'objet d'entité en dictionnaire Python standard.

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)

Mettre à jour les données supplémentaires des alertes.

Paramètres

Nom du paramètre Type de paramètre Définition Valeurs possibles Commentaires
case_id {string} Identifiant de la demande 234 N/A
alerts_additional_data {string:string} N/A N/A N/A

Renvoie

NoneType

Exemple

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

Comportement des résultats

Met à jour l'alerte avec des données supplémentaires, telles que testKey:testValue.

Result value

Aucun