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