Módulo SiemplifyAction

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

Añade las entidades de la alerta al registro de la lista personalizada con la categoría indicada.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
category_name {string} Categoría de lista personalizada "CustomList" N/A

Devoluciones

Lista {[CustomList]} de los objetos añadidos.

Ejemplo

Entrada: category_name. Implícitamente, las entidades que usan el ámbito.
Al ejecutar add_alert_entities_to_custom_list, se mostrará una lista de objetos "CustomList" y se cambiará la configuración.

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

Comportamiento resultante

Añade la categoría WhiteListed HOSTs.

Valor de resultado

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

Añade un archivo adjunto al panel de casos.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
file_path {string} Ruta del archivo "C:\Archivos de programa (x86)\Google\Chrome\Application\chrome_proxy.exe" N/A
case_id {string} Identificador de asistencia 234 N/A
alert_identifier {string} Identificador de alerta 12345 N/A
description {string} Descripción del archivo N/A N/A
is_favorite booleano N/A Verdadero/Falso N/A

Devoluciones

{long} attachment_id

Ejemplo

Entrada: de forma explícita, ruta de archivo, descripción y is_favorite. Implícitamente, case_id y 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)

Comportamiento resultante

El archivo mencionado en la ruta se adjuntará al ID de asistencia 234 y se devolverá el ID del archivo adjunto.

Valor de resultado

5 [ID del archivo adjunto]

add_comment

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

Añadir un comentario a un caso específico.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
comentario {string} Comentario que se añadirá al panel del caso N/A N/A
case_id {string} Identificador de asistencia 234 Si no se proporciona ningún case_id,
se usará el caso actual.
Ninguna de forma predeterminada (opcional)
alert_identifier {string} Identificador de alerta 12345 Si no se proporciona ningún alert_identifier,
se usará la alerta actual.
Ninguna de forma predeterminada (opcional)

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

El comentario especificado se añade al caso actual.

Valor de resultado

Ninguno

add_entity_insight

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

Añade una estadística de entidad al caso en el que se esté usando.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
domain_entity_info {DomainEntityInfo} Objeto de entidad que representa una entidad a la que se va a añadir una estadística N/A N/A
mensaje {string} Mensaje de estadísticas N/A N/A
triggered_by {string} Nombre de la integración N/A Si no se indica ningún nombre de integración, se usará la integración seleccionada para la acción.
Ninguna de forma predeterminada (opcional)
original_requesting_user {string} Usuario solicitante N/A Ninguna de forma predeterminada (opcional)

Devoluciones

{boolean} True si se ha completado correctamente. De lo contrario, False.

Ejemplo

Comportamiento resultante

Valor de resultado

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)

Añade una entidad al caso actual.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
entity_identifier {string} Identificador de entidad 192.0.2.1, example.com N/A
entity_type {string} Tipo de entidad "ADDRESS" N/A
is_internal {boolean} N/A Interno/Externo N/A
is_suspicious {boolean} N/A Sospechoso/No sospechoso N/A
is_enriched {boolean} N/A Verdadero/Falso Falso de forma predeterminada
is_vulnerable {boolean} N/A Verdadero/Falso Falso de forma predeterminada
properties {dict} {"Property1":"PropertyValue", "Property2":"PropertyValue2"} N/A N/A

Devoluciones

NoneType

Si ya existe una entidad, aparece el siguiente error: /

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

Ejemplo

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)

Comportamiento resultante

Esta función añadirá una nueva entidad al caso si no está presente en él.

Valor de resultado

Ninguno

add_tag

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

Añadir una etiqueta nueva a un caso específico.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
etiqueta {string} Etiqueta que se va a añadir Cualquier cadena que se vaya a usar como etiqueta. N/A
case_id {string} Identificador de asistencia 12345 Si no se proporciona ningún case_id,
se usará el ID de asistencia actual.
Ninguna de forma predeterminada (opcional)
alert_identifier {string} Identificador de alerta 123 Si no se proporciona ningún alert_identifier,
se usará el ID de alerta actual.
Ninguna de forma predeterminada(opcional)

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

La etiqueta "MaliciousMail" se añade al caso actual.

Valor de resultado

Ninguno

any_alert_entities_in_custom_list

any_alert_entities_in_custom_list(category_name)

Comprueba si alguna de las entidades de la alerta tiene un registro de lista personalizada con la categoría dada.
Esta función obtiene un nombre de categoría de CustomLists y devuelve True (booleano) si alguna de las entidades del ámbito está en esa categoría. Una entidad se considera de la categoría si su identificador aparece en la tabla CustomLists con esta categoría en los ajustes.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
category_name {string} Nombre de la categoría de la lista personalizada BlackListed IPs N/A

Devoluciones

{boolean} True si hay una entidad en la categoría; False en caso contrario.

Ejemplo 1

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

Ejemplo 2

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

Comportamiento resultante

El resultado del código de ejemplo 1 es True. El resultado del código de ejemplo 2 es False.

Valor de resultado

Verdadero o falso

assign_case

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

Asigna el caso al usuario.

Esta función se puede usar con el ID de usuario o el rol de usuario.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
usuario {string} ID de usuario o rol de usuario USER_ID, Admin, @Tier1 N/A
case_id {string} Identificador de asistencia 12345 Si no se proporciona ningún case_id,
se usará el ID de asistencia actual.
Ninguna de forma predeterminada (opcional)
alert_identifier {string} Identificador de alerta 123 Si no se proporciona ningún alert_identifier,
se usará el ID de alerta actual.
Ninguna de forma predeterminada (opcional)

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

El caso se asigna al usuario administrador.

Valor de resultado

Ninguno

attach_workflow_to_case

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

Adjunta una guía a la alerta actual.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
workflow_name {string} Nombre del flujo de trabajo (guía) N/A N/A
cyber_case_id {string} Identificador de asistencia 234 Si no se proporciona ningún caso, se usa el actual.
Ninguna de forma predeterminada (opcional)
indicator_identifier {string} Identificador de alerta 12345 Si no se proporciona ningún identificador de alerta,
se usa la alerta actual.
Ninguna de forma predeterminada (opcional)

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

Asigna el flujo de trabajo especificado al caso del identificador de indicador proporcionado.

Valor de resultado

Ninguno

Propiedad

change_case_priority

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

Cambiar la prioridad del caso.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
prioridad {int} La prioridad representada por cada número es la siguiente:
Baja, Media, Alta y Crítica
{"Low": 40, "Medium": 60, "High": 80, "Critical": 100} N/A
case_id {string} Identificador de asistencia 12345 Si no se proporciona ningún caso, se usa el actual.
alert_identifier {string} Identificador de alerta 123 Si no se proporciona ningún identificador de alerta, se usa la alerta actual.

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

La prioridad del caso cambia a "Media".

Valor de resultado

Ninguno

change_case_stage

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

Cambiar la fase del caso

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
fase {string} La fase debe coincidir exactamente con la cadena definida en la tabla de fases de casos. Incidente
Investigación
N/A
case_id {string} Identificador de asistencia 12345 Si no se proporciona ningún caso, se usa el actual.
alert_identifier {string} Identificador de alerta 123 Si no se proporciona ningún identificador de alerta, se usa la alerta actual.

Devoluciones

Ejemplo

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

Comportamiento resultante

El estado del caso cambia a "Investigación".

Valor de resultado

Ninguno

close_alert

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

Cierra la alerta actual.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
root_cause {string} Motivo principal del cierre del caso Cadena extraída de la tabla "Motivo principal del cierre del caso"
de los ajustes.
N/A
comentario {string} Comentario Aquí se puede usar cualquier cadena. El comentario debe describir el caso,
pero no está restringido
reason {ApiSyncAlertCloseReasonEnum} Una de las tres cadenas predefinidas disponibles en el cuadro de diálogo
cuando se hace manualmente: "NotMalicious", "Malicious"
y "Maintenance".
Consulta SiemplifyDataModel.ApiSyncAlertCloseReasonEnum.

Devoluciones

{dict} resultado de la operación del servidor

Ejemplo

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)

Comportamiento resultante

La alerta actual se mueve a un nuevo caso y, posteriormente, se cierra con la alerta.

Valor de resultado

Ninguno

close_case

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

Cierra el caso.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
root_cause {string} Motivo principal del cierre del caso N/A N/A
comentario {string} Comentario Aquí se puede usar cualquier cadena. El comentario debe describir el caso, pero no está restringido.
reason {ApiSyncAlertCloseReasonEnum} Motivo del cierre del caso Una de las tres cadenas predefinidas disponibles en el cuadro de diálogo cuando se hace manualmente: "NotMalicious", "Malicious" y "Maintenance".
case_id {string} Identificador de asistencia 12345 Si no se proporciona ningún caso, se usa el actual.
alert_identifier {string} Identificador de alerta 123 Si no se proporciona ningún identificador de alerta, se usa la alerta actual.

Devoluciones

NoneType

Ejemplo

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)

Comportamiento resultante

El caso se cierra con el motivo, la causa principal y el comentario especificados.

Valor de resultado

Ninguno

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)

Añade información valiosa al caso.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
triggered_by {string} Nombre de la integración VirusTotal y X-Force N/A
title {string} Título de la estadística Enriquecido por VirusTotal N/A
contenido {string} Mensaje de estadísticas Mensaje de estadísticas N/A
entity_identifier {string} Identificador de entidad example.com N/A
gravedad {int} Nivel de gravedad 0 = información,
1 = advertencia,
2 = error
insight_type {int} Tipo de información valiosa 0 = general,
1 = entidad
N/A
additional_data {string} Datos adicionales de la estadística {"checked against": "VT", "malicious": "No"} N/A
additional_data_type {int} Tipo de datos adicionales 'General'=0,
'Entity'=1
N/A
additional_data_title {string} Título de los datos adicionales de la estadística Comprobación de VT N/A

Devoluciones

{boolean} True si se ha completado correctamente. De lo contrario, False.

Ejemplo

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)

Comportamiento resultante

Crea la estadística de un caso con los datos definidos.
True si se crea una estadística de caso. De lo contrario, False.

Valor de resultado

Verdadero o falso

property current_alert

dismiss_alert

dismiss_alert(alert_group_identifier, should_close_case_if_all_alerts_were_dismissed, case_id=None)

Entorno de propiedad

escalate_case

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

Derivar el caso.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
comentario {string} Derivar comentario N/A N/A
case_id {string} Identificador de asistencia 12345 N/A
alert_identifier {string} Identificador de alerta 123 N/A

extract_action_param

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

Obtiene un parámetro de secuencia de comandos de acción.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
param_name {string} Nombre del parámetro Cualquiera de los nombres de parámetros disponibles para la acción N/A
default_value {any} El valor predeterminado del parámetro Se devolverá el valor proporcionado si el parámetro no se ha definido.
(si is_mandatory se ha definido como False)
Si no se envía el parámetro, se usa este valor de forma predeterminada.
Ninguna de forma predeterminada (opcional)
input_type {obj} Convertir el parámetro a otro tipo int str de forma predeterminada (opcional)
is_mandatory {boolean} Genera una excepción si el parámetro está vacío. Verdadero/Falso Falso de forma predeterminada
print_value {boolean} Imprime el valor en el registro. Verdadero/Falso Falso de forma predeterminada

Devoluciones

El valor del parámetro, que es {string} de forma predeterminada, a menos que se especifique input_type.

Ejemplo

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)

Comportamiento resultante

Se devolverá el valor del parámetro seleccionado, convertido al tipo seleccionado.

Valor de resultado

20

fetch_and_save_timestamp

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

Obtiene la marca de tiempo y la guarda en el contexto del caso.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
datetime_format {boolean} Formato de fecha y hora True para obtener el formato de fecha y hora, False para Unix False de forma predeterminada (opcional)
timezone El parámetro ya no se admite
new_timestamp {int} La marca de tiempo que se va a guardar N/A Tiempo de época de Unix de forma predeterminada (opcional)

Devoluciones

{int} datetime.

Ejemplo

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

Comportamiento resultante

Se obtiene la marca de tiempo más reciente y se guarda como archivo TIMESTAMP en el directorio actual.

Valor de resultado

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

fetch_timestamp

fetch_timestamp(datetime_format=False, timezone=False)

Obtiene la marca de tiempo guardada con save_timestamp.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
datetime_format {boolean} Si es True, devuelve la marca de tiempo como fecha y hora. De lo contrario, devuelve el valor en formato Unix. Verdadero/Falso False de forma predeterminada (opcional)
timezone El parámetro ya no se admite

Devoluciones

Marca de tiempo de época de Unix y fecha y hora guardadas.

Ejemplo

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

Comportamiento resultante

Se obtiene la marca de tiempo más reciente y se guarda como archivo TIMESTAMP en el directorio actual.

Valor de resultado

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

get_alert_context_property

get_alert_context_property(property_key)

Obtiene la propiedad de contexto de la alerta actual.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
property_key {string} La clave de la propiedad solicitada N/A N/A

Devoluciones

{string} El valor de la propiedad

get_alerts_ticket_ids_from_cases_closed_since_timestamp

get_alerts_ticket_ids_from_cases_closed_since_timestamp(timestamp_unix_ms, rule_generator)

Obtiene alertas de las incidencias que se han cerrado desde la marca de tiempo.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
timestamp_unix_ms {long} Marca de tiempo 1550409785000L N/A
rule_generator {string} N/A Detector de correos de phishing N/A

Devoluciones

{[string]} lista de IDs de alertas

get_attachments

get_attachments(case_id=None)

Obtener archivos adjuntos de un caso.
Esta función obtiene una lista de elementos de lista personalizada de la lista de categorías y entidades, y devuelve una lista de objetos de elementos de lista personalizada.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
case_id {string} Identificador de asistencia 234 Si no se proporciona ningún caso, se usará el actual (opcional).

Devoluciones

{dict} archivos adjuntos

Ejemplo

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

Comportamiento resultante

Se devolverá una lista de diccionarios de archivos adjuntos para el ID de asistencia 234.

Valor de resultado

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

Obtener comentarios de casos.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
case_id {string} Identificador de asistencia 234 Si no se proporciona ningún caso, se usará el actual.

Devoluciones

{[dict]} de comentarios del caso

Ejemplo

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

Comportamiento resultante

Se obtendrán todos los comentarios del caso.

Valor de resultado

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

Obtiene una propiedad de contexto de un caso.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
property_key {string} La propiedad de clave solicitada N/A N/A

Devoluciones

{string} el valor de la propiedad

get_configuration

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

Obtener la configuración de la integración.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
proveedor {string} Nombre de la integración VirusTotal
entorno {string} Configuración de un entorno específico o de todos Opcional.
Si se proporciona, las credenciales se obtendrán de la configuración del entorno
correspondiente. Si no se especifica ningún entorno,
se usa el entorno del caso de forma predeterminada.
Si no hay ninguna configuración para el entorno específico,
se devolverá la configuración predeterminada.
integration_instance {string} Identificador de la instancia de integración. N/A N/A

Devoluciones

Detalles de configuración de {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)

Obtener casos similares.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
consider_ports {boolean} El parámetro configura si se debe usar un filtro de puertos o no. Verdadero o falso N/A
consider_category_outcome {boolean} El parámetro configura si se debe tener en cuenta el resultado de la categoría de los eventos. Verdadero o falso N/A
consider_rule_generator {boolean} El parámetro configura si se debe tener en cuenta el generador de reglas para las alertas. Verdadero o falso N/A
consider_entity_identifiers {boolean} Parámetro que configura si se deben tener en cuenta los identificadores de entidad para las alertas. Verdadero o falso N/A
days_to_look_back {int} El parámetro configura el número de días anteriores en los que se buscarán casos similares. 365 N/A

Devoluciones

Lista {[int]} de IDs de asistencia

Ejemplo

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)

Comportamiento resultante

Se devolverá una lista de IDs de casos similares al caso 234.

Valor de resultado

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

Esta función carga los datos del caso.

Parámetros

No se necesitan parámetros.

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

Se cargan los datos del caso.

Valor de resultado

Ninguno

property log_location

mark_case_as_important

mark_case_as_important(case_id=None, alert_identifier=None)

Marca el caso como importante.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
case_id {string} Identificador de asistencia 234 N/A
alert_identifier {string} Identificador de alerta 12345 N/A

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

El caso actual está marcado como importante.

Valor de resultado

Ninguno

raise_incident

raise_incident(case_id=None, alert_identifier=None)

Registrar un incidente.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
case_id {string} Identificador de asistencia 234 N/A
alert_identifier {string} Identificador de alerta 12345 N/A

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

El caso se ha convertido en un incidente.

Valor de resultado

Ninguno

remove_alert_entities_from_custom_list

remove_alert_entities_from_custom_list(category_name)

Elimina las entidades de la alerta del registro de la lista personalizada con la categoría dada.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
category_name {string} La categoría de lista personalizada `WhiteListed HOSTs` N/A

Devoluciones

Lista {[CustomList]} de los objetos CustomList eliminados.

Ejemplo

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

Comportamiento resultante

Se elimina el WhiteListed HOSTS.

Valor de resultado

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

save_timestamp

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

Guarda la marca de tiempo en el contexto de la secuencia de comandos actual.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
datetime_format {boolean} N/A True para el formato de fecha y hora, False para Unix El valor predeterminado es False (opcional).
timezone El parámetro ya no se admite
new_timestamp {long} Marca de tiempo que se guardará en el contexto N/A La marca de tiempo será, de forma predeterminada, la marca de tiempo de Unix de la llamada al método.

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

La nueva marca de tiempo se guardará como archivo TIMESTAMP en el directorio actual.

Valor de resultado

Ninguno

set_alert_context_property

set_alert_context_property(property_key, property_value)

Define una propiedad de contexto de alerta mediante pares clave-valor.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
property_key {string} Clave de la propiedad que se va a almacenar en el contexto N/A N/A
property_value {string} Valor de la propiedad que se va a almacenar en el contexto 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)

Define el SLA del alert_identifier de case_id especificado. El SLA definido mediante esta API debe superar a todos los demás tipos de SLA de alertas.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
period_time {int/str} El periodo total del SLA N/A period_time > 0
period_type {string} Unidades de tiempo de period_time, representadas por ApiPeriodTypeEnum N/A N/A
critical_period_time {int/str} El periodo crítico del SLA N/A critical_period_time >= 0
El periodo crítico (después de escalarlo con sus unidades de tiempo)
debe ser inferior al periodo total.
critical_period_type {string} las unidades de tiempo de critical_period_time,
representadas por ApiPeriodTypeEnum
case_id {long} Identificador de asistencia 234 N/A
alert_id {string} Identificador de alerta 12345 N/A

set_case_context_property

set_case_context_property(property_key, property_value)

Define una propiedad de contexto de caso mediante el par clave-valor.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
property_key {string} Clave de la propiedad N/A N/A
property_value {string} Valor de la propiedad N/A N/A

set_case_sla

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

Define el SLA del case_id proporcionado (si se ha proporcionado). De lo contrario, define el SLA del caso actual. El SLA que se defina mediante esta API debe superar a todos los demás tipos de SLA de casos.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
period_time {int/str} El periodo total del SLA N/A period_time > 0
period_type {string} Unidades de tiempo de period_time, representadas por ApiPeriodTypeEnum N/A N/A
critical_period_time {int/str} El periodo crítico del SLA N/A critical_period_time > 0
El periodo crítico (después de escalarlo con sus unidades de tiempo)
debe ser inferior al periodo total.
critical_period_type {string} las unidades de tiempo de critical_period_time,
representadas por ApiPeriodTypeEnum
N/A N/A
case_id {long} Identificador de asistencia N/A N/A

signal_handler

signal_handler(sig, frame)

property target_entities

El objeto target_entities es una lista de objetos de entidad con los que puede ejecutarse la acción configurada. Cada objeto de entidad expone las siguientes propiedades y métodos:

Propiedades de la entidad

Estos son los atributos de retención de datos directos de un objeto de entidad:

Propiedad Tipo de datos Descripción
identifier string Identificador único (UUID) de la entidad.
creation_time int Marca de tiempo Unix de cuándo se creó la entidad.
modification_time int Marca de tiempo Unix de la última modificación de la entidad.
additional_properties dict Un diccionario que contiene detalles adicionales sobre la entidad.
case_identifier string ID del caso principal al que pertenece la entidad.
alert_identifier string ID de la alerta asociada a la entidad.
entity_type string El tipo de entidad (por ejemplo, "HOSTNAME" o "USERUNQNAME").
is_internal bool Indica si la entidad es un recurso interno.
is_suspicious bool Indica si la entidad se ha marcado como sospechosa.
is_artifact bool Indica si la entidad es un artefacto.
is_enriched bool Indica si la entidad se ha enriquecido.
is_vulnerable bool Indica si la entidad se ha marcado como vulnerable.
is_pivot bool Indica si la entidad es una entidad de referencia.

Métodos de entidad

Estas son las funciones ejecutables disponibles en un objeto de entidad:

Método Descripción
to_dict() Convierte el objeto de entidad en un diccionario estándar de Python.

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)

Actualiza los datos adicionales de las alertas.

Parámetros

Nombre del parámetro Tipo de parámetro Definición Posibles valores Comentarios
case_id {string} Identificador de asistencia 234 N/A
alerts_additional_data {string:string} N/A N/A N/A

Devoluciones

NoneType

Ejemplo

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

Comportamiento resultante

Actualiza la alerta con datos adicionales, como testKey:testValue.

Valor de resultado

Ninguno