Módulo SiemplifyAction

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

Adicione as entidades do alerta ao registo da lista personalizada com a categoria indicada.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
category_name {string} Categoria de lista de clientes "CustomList" N/A

Devoluções

Lista {[CustomList]} dos objetos adicionados.

Exemplo

Entrada: explicitamente, category_name. Implicitamente, as entidades que usam o âmbito.
A execução de add_alert_entities_to_custom_list resulta numa lista de objetos "CustomList" e numa alteração da configuração nas definições.

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

Comportamento dos resultados

Adiciona a categoria WhiteListed HOSTs.

Valor do 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)

Adicione um anexo à parede da caixa.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
file_path {string} Caminho do ficheiro "C:\Program Files (x86)\Google\Chrome\Application\chrome_proxy.exe" N/A
case_id {string} Identificador do registo 234 N/A
alert_identifier {string} Identificador do alerta 12345 N/A
descrição {string} A descrição do ficheiro N/A N/A
is_favorite booleano N/A Verdadeiro/Falso N/A

Devoluções

{long} attachment_id

Exemplo

Entrada: explicitamente, caminho do ficheiro, descrição e is_favorite. Implicitamente, case_id e 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)

Comportamento dos resultados

O ficheiro mencionado no caminho vai ser anexado ao ID do registo 234 e o ID do anexo vai ser devolvido.

Valor do resultado

5 [O ID do anexo]

add_comment

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

Adicionar um novo comentário a um registo específico.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
comentário {string} Comentário a adicionar à cronologia do registo N/A N/A
case_id {string} Identificador do registo 234 Se não for fornecido um case_id,
é usado o caso atual.
Nenhuma por predefinição (opcional)
alert_identifier {string} Identificador do alerta 12345 Se não for fornecido um alert_identifier,
é usado o alerta atual.
Nenhuma por predefinição (opcional)

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

O comentário especificado é adicionado ao registo atual.

Valor do resultado

Nenhum

add_entity_insight

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

Adicionar uma estatística de entidade ao registo em que está a ser usada.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
domain_entity_info {DomainEntityInfo} O objeto de entidade que representa uma entidade à qual adicionar estatísticas N/A N/A
mensagem {string} Mensagem de estatísticas N/A N/A
triggered_by {string} Nome da integração N/A Se não for fornecido nenhum nome de integração, é usada a integração selecionada para a ação.
Nenhuma por predefinição (opcional)
original_requesting_user {string} Utilizador que faz o pedido N/A Nenhuma por predefinição (opcional)

Devoluções

{boolean} True se for bem-sucedido. Caso contrário, False.

Exemplo

Comportamento dos resultados

Valor do 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)

Adicione uma entidade ao registo atual.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
entity_identifier {string} Identificador de entidade 192.0.2.1, example.com N/A
entity_type {string} Tipo de entidade "ADDRESS" N/A
is_internal {boolean} N/A Interno/externo N/A
is_suspicious {boolean} N/A Suspeito/Não suspeito N/A
is_enriched {boolean} N/A Verdadeiro/Falso Falso por predefinição
is_vulnerable {boolean} N/A Verdadeiro/Falso Falso por predefinição
propriedades {dict} {"Property1":"PropertyValue", "Property2":"PropertyValue2"} N/A N/A

Devoluções

NoneType

Se existir uma entidade, é apresentado o seguinte erro: /

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

Exemplo

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)

Comportamento dos resultados

Esta função adiciona uma nova entidade ao registo se não estiver presente no registo.

Valor do resultado

Nenhum

add_tag

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

Adicionar uma nova etiqueta a um registo específico.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
etiqueta {string} Etiqueta a adicionar Qualquer string a usar como etiqueta N/A
case_id {string} Identificador do registo 12345 Se não for fornecido um case_id,
é usado o ID do registo atual.
Nenhuma por predefinição (opcional)
alert_identifier {string} Identificador do alerta 123 Se não for fornecido um alert_identifier,
é usado o ID do alerta atual.
Nenhum por predefinição(opcional)

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

A etiqueta "MaliciousMail" é adicionada ao registo atual.

Valor do resultado

Nenhum

any_alert_entities_in_custom_list

any_alert_entities_in_custom_list(category_name)

Verifique se alguma das entidades do alerta tem um registo de lista personalizada com a categoria indicada.
Esta função obtém um nome de categoria de CustomLists e devolve True (booleano) se alguma das entidades no âmbito estiver nessa categoria. Uma entidade é considerada na categoria se o respetivo identificador estiver listado com esta categoria nas definições na tabela CustomLists.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
category_name {string} O nome da categoria da lista personalizada BlackListed IPs N/A

Devoluções

{boolean} True se existir uma entidade na categoria, False caso contrário.

Exemplo 1

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

Exemplo 2

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

Comportamento dos resultados

O resultado do exemplo de código 1 é True. O resultado do exemplo de código 2 é False.

Valor do resultado

Verdadeiro ou falso

assign_case

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

Atribua o registo ao utilizador.

Esta função funciona com o ID do utilizador ou a função do utilizador.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
utilizador {string} ID do utilizador ou função do utilizador USER_ID, Admin, @Tier1 N/A
case_id {string} Identificador do registo 12345 Se não for fornecido um case_id,
é usado o ID do registo atual.
Nenhuma por predefinição (opcional)
alert_identifier {string} Identificador do alerta 123 Se não for fornecido um alert_identifier,
é usado o ID do alerta atual.
Nenhuma por predefinição (opcional)

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

O registo é atribuído ao utilizador administrador.

Valor do resultado

Nenhum

attach_workflow_to_case

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

Anexe um plano de ação ao alerta atual.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
workflow_name {string} Nome do fluxo de trabalho (manual de soluções) N/A N/A
cyber_case_id {string} Identificador do registo 234 Se não for fornecido nenhum caso, é usado o caso atual.
Nenhuma por predefinição (opcional)
indicator_identifier {string} Identificador do alerta 12345 Se não for fornecido nenhum identificador de alerta,
é usado o alerta atual.
Nenhuma por predefinição (opcional)

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

Anexa o fluxo de trabalho especificado ao registo para o identificador do indicador especificado.

Valor do resultado

Nenhum

Diferenciação entre maiúsculas e minúsculas da propriedade

change_case_priority

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

Alterar a prioridade do registo.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
prioridade {int} A prioridade representada por cada número, respetivamente, é:
Baixa, média, alta e crítica
{"Low": 40, "Medium": 60, "High": 80, "Critical": 100} N/A
case_id {string} Identificador do registo 12345 Se não for fornecido nenhum caso, é usado o caso atual
alert_identifier {string} Identificador do alerta 123 Se não for fornecido nenhum identificador de alerta, é usado o alerta atual

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

A prioridade do registo é alterada para "Média".

Valor do resultado

Nenhum

change_case_stage

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

Altere a fase do registo

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
armazenar dados em área intermediária {string} A fase deve corresponder exatamente à string definida na tabela case stages Incidente,
Investigação
N/A
case_id {string} Identificador do registo 12345 Se não for fornecido nenhum caso, é usado o caso atual
alert_identifier {string} Identificador do alerta 123 Se não for fornecido nenhum identificador de alerta, é usado o alerta atual

Devoluções

Exemplo

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

Comportamento dos resultados

O estado do registo é alterado para "investigação".

Valor do resultado

Nenhum

close_alert

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

Fechar alerta atual.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
root_cause {string} Motivo principal do fecho do registo Uma string extraída da tabela "Causa principal do encerramento do registo"
nas definições
N/A
comentário {string} Comentário Pode usar qualquer string aqui O comentário deve descrever o caso,
mas não está restrito
motivo {ApiSyncAlertCloseReasonEnum} Uma de três strings predefinidas disponíveis na caixa de diálogo
quando feitas manualmente: "NotMalicious", "Malicious"
e "Maintenance"
Consulte SiemplifyDataModel.ApiSyncAlertCloseReasonEnum

Devoluções

{dict} resultado da operação do servidor

Exemplo

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)

Comportamento dos resultados

O alerta atual é movido para um novo registo e, posteriormente, fechado com o alerta.

Valor do resultado

Nenhum

close_case

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

Fechar registo.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
root_cause {string} Motivo principal do fecho do registo N/A N/A
comentário {string} Comentário Pode usar qualquer string aqui O comentário deve descrever o caso, mas não está restrito
motivo {ApiSyncAlertCloseReasonEnum} Motivo do fecho do registo Uma de três strings predefinidas disponíveis na caixa de diálogo quando feitas manualmente: "NotMalicious", "Malicious" e "Maintenance"
case_id {string} Identificador do registo 12345 Se não for fornecido nenhum caso, é usado o caso atual
alert_identifier {string} Identificador do alerta 123 Se não for fornecido nenhum identificador de alerta, é usado o alerta atual

Devoluções

NoneType

Exemplo

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)

Comportamento dos resultados

O registo é encerrado com o motivo, a causa principal e o comentário especificados.

Valor do resultado

Nenhum

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)

Adicione estatísticas ao registo.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
triggered_by {string} Nome da integração VirusTotal, XForce N/A
título {string} Título da estatística Enriquecido pelo VirusTotal N/A
conteúdo {string} Mensagem de estatísticas Mensagem de estatísticas N/A
entity_identifier {string} Identificador de entidade example.com N/A
gravidade {int} Nível de gravidade 0 = info,
1 = warning,
2 = error
insight_type {int} Tipo de estatísticas 0 = geral,
1 = entidade
N/A
additional_data {string} Dados adicionais para estatísticas {"checked against": "VT", "malicious": "No"} N/A
additional_data_type {int} Tipo de dados adicionais 'General'=0,
'Entity'=1
N/A
additional_data_title {string} Título dos dados adicionais para estatísticas Verificação de VT N/A

Devoluções

{boolean} True se for bem-sucedido. Caso contrário, False.

Exemplo

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)

Comportamento dos resultados

Cria a estatística para um registo com dados definidos.
True se for criada uma estatística do registo. Caso contrário, False.

Valor do resultado

Verdadeiro ou falso

property current_alert

dismiss_alert

dismiss_alert(alert_group_identifier, should_close_case_if_all_alerts_were_dismissed, case_id=None)

Ambiente da propriedade

escalate_case

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

Encaminhe o registo.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
comentário {string} Encaminhe o comentário N/A N/A
case_id {string} Identificador do registo 12345 N/A
alert_identifier {string} Identificador do 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)

Obtenha um parâmetro de script de ação.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
param_name {string} Nome do parâmetro Qualquer um dos nomes dos parâmetros disponíveis para a ação N/A
default_value {any} O valor predefinido do parâmetro O valor indicado é devolvido se o parâmetro não tiver sido definido
(se is_mandatory estiver definido como False)
Se o parâmetro não for transmitido, use este valor por predefinição.
Nenhuma por predefinição (opcional)
input_type {obj} Converta o parâmetro para um tipo diferente int str por predefinição (opcional)
is_mandatory {boolean} Gere uma exceção se o parâmetro estiver vazio Verdadeiro/Falso Falso por predefinição
print_value {boolean} Imprima o valor no registo Verdadeiro/Falso Falso por predefinição

Devoluções

O valor do parâmetro, {string} por predefinição, a menos que input_type seja especificado.

Exemplo

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)

Comportamento dos resultados

O valor do parâmetro selecionado é devolvido, convertido para o tipo selecionado.

Valor do resultado

20

fetch_and_save_timestamp

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

Obter a data/hora e guardá-la no contexto do registo.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
datetime_format {boolean} Formato de data/hora Verdadeiro para obter no formato de data/hora, falso para Unix Falso por predefinição (opcional)
fuso horário O parâmetro já não é suportado
new_timestamp {int} A data/hora a guardar N/A Hora de época Unix por predefinição (opcional)

Devoluções

{int} datetime.

Exemplo

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

Comportamento dos resultados

A data/hora mais recente é obtida e guardada como um ficheiro TIMESTAMP no diretório atual.

Valor do resultado

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

fetch_timestamp

fetch_timestamp(datetime_format=False, timezone=False)

Obtenha a indicação de tempo guardada com save_timestamp.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
datetime_format {boolean} Se for verdadeiro, devolve a data/hora como data/hora. Caso contrário, devolve no formato Unix Verdadeiro/Falso Falso por predefinição (opcional)
fuso horário O parâmetro já não é suportado

Devoluções

Indicação de tempo de época Unix e data/hora guardadas.

Exemplo

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

Comportamento dos resultados

A data/hora mais recente é obtida e guardada como um ficheiro TIMESTAMP no diretório atual.

Valor do resultado

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

get_alert_context_property

get_alert_context_property(property_key)

Obtenha a propriedade de contexto do alerta atual.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
property_key {string} A chave da propriedade pedida N/A N/A

Devoluções

{string} O valor da propriedade

get_alerts_ticket_ids_from_cases_closed_since_timestamp

get_alerts_ticket_ids_from_cases_closed_since_timestamp(timestamp_unix_ms, rule_generator)

Receba alertas de registos que foram fechados desde a data/hora.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
timestamp_unix_ms {long} Indicação de tempo 1550409785000L N/A
rule_generator {string} N/A Detetor de emails de phishing N/A

Devoluções

{[string]} lista de IDs de alertas

get_attachments

get_attachments(case_id=None)

Obtenha anexos de um registo.
Esta função obtém uma lista de itens da lista personalizada da categoria e da lista de entidades e devolve uma lista de objetos de itens da lista personalizada.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
case_id {string} Identificador do registo 234 Se não for indicado nenhum caso, é usado o caso atual (opcional)

Devoluções

{dict} anexos

Exemplo

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

Comportamento dos resultados

É devolvida uma lista de dicionários de anexos para o ID do registo 234.

Valor do 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)

Receber comentários de registos.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
case_id {string} Identificador do registo 234 Se não for indicado nenhum caso, é usado o caso atual

Devoluções

{[dict]} de comentários do registo

Exemplo

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

Comportamento dos resultados

São obtidos todos os comentários pertencentes ao registo.

Valor do 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)

Obter uma propriedade de contexto do registo.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
property_key {string} A propriedade da chave pedida N/A N/A

Devoluções

{string} o valor da propriedade

get_configuration

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

Obtenha a configuração da integração.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
provider {string} Nome da integração VirusTotal
ambiente {string} Configuração para um ambiente específico ou "todos" Opcional.
Se forem fornecidas, as credenciais são obtidas a partir da configuração do ambiente
correspondente. Se não for especificado nenhum ambiente,
o ambiente de caixa é usado por predefinição.
Se não existir uma configuração para o ambiente específico,
é devolvida a configuração predefinida.
integration_instance {string} O identificador da instância de integração N/A N/A

Devoluções

Detalhes da configuração {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)

Receber casos semelhantes.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
consider_ports {boolean} O parâmetro configura se deve ou não usar um filtro de porta Verdadeiro/falso N/A
consider_category_outcome {boolean} O parâmetro configura se deve considerar o resultado da categoria dos eventos Verdadeiro/falso N/A
consider_rule_generator {boolean} O parâmetro configura se o gerador de regras deve ser considerado para os alertas Verdadeiro/falso N/A
consider_entity_identifiers {boolean} O parâmetro configura se devem ser considerados os identificadores de entidades para os alertas Verdadeiro/falso N/A
days_to_look_back {int} O parâmetro configura o número de dias anteriores para procurar casos semelhantes 365 N/A

Devoluções

{[int]} lista de IDs dos registos

Exemplo

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)

Comportamento dos resultados

É devolvida uma lista de IDs de registos semelhantes ao registo 234.

Valor do 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 função carrega os dados do registo.

Parâmetros

Não são necessários parâmetros.

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

Os dados do registo são carregados.

Valor do resultado

Nenhum

property log_location

mark_case_as_important

mark_case_as_important(case_id=None, alert_identifier=None)

Marcar registo como importante.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
case_id {string} Identificador do registo 234 N/A
alert_identifier {string} Identificador do alerta 12345 N/A

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

O registo atual está marcado como importante.

Valor do resultado

Nenhum

raise_incident

raise_incident(case_id=None, alert_identifier=None)

Comunicar incidente.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
case_id {string} Identificador do registo 234 N/A
alert_identifier {string} Identificador do alerta 12345 N/A

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

O registo foi elevado ao estado de incidente.

Valor do resultado

Nenhum

remove_alert_entities_from_custom_list

remove_alert_entities_from_custom_list(category_name)

Remova as entidades do alerta do registo da lista personalizada com a categoria fornecida.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
category_name {string} A categoria da lista de clientes `WhiteListed HOSTs` N/A

Devoluções

Lista {[CustomList]} dos objetos CustomList removidos.

Exemplo

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

Comportamento dos resultados

O WhiteListed HOSTS é removido.

Valor do resultado

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

save_timestamp

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

Guarde a data/hora no contexto do script atual.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
datetime_format {boolean} N/A Verdadeiro para o formato de data/hora, falso para o formato Unix O valor predefinido é False (opcional)
fuso horário O parâmetro já não é suportado
new_timestamp {long} Data/hora para guardar no contexto N/A A data/hora é predefinida como a data/hora Unix da chamada do método

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

A nova data/hora é guardada como um ficheiro TIMESTAMP no diretório atual.

Valor do resultado

Nenhum

set_alert_context_property

set_alert_context_property(property_key, property_value)

Defina uma propriedade de contexto de alerta por pares de chave e valor.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
property_key {string} Chave da propriedade a armazenar no contexto N/A N/A
property_value {string} Valor da propriedade a armazenar no 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 o SLA do alert_identifier especificado de case_id. O ANS definido através desta API deve ultrapassar todos os outros tipos de ANS de alertas.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
period_time {int/str} O período total do SLA N/A period_time > 0
period_type {string} Unidades de tempo de period_time, representadas por ApiPeriodTypeEnum N/A N/A
critical_period_time {int/str} O período de SLA crítico N/A critical_period_time >= 0
O período crítico (após o ajuste de escala com as respetivas unidades de tempo)
deve ser inferior ao período total.
critical_period_type {string} As unidades de tempo de critical_period_time,
representadas por ApiPeriodTypeEnum
case_id {long} Identificador do registo 234 N/A
alert_id {string} Identificador do alerta 12345 N/A

set_case_context_property

set_case_context_property(property_key, property_value)

Defina uma propriedade de contexto de registo através do par de chave-valor.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
property_key {string} Chave da propriedade N/A N/A
property_value {string} Valor da propriedade N/A N/A

set_case_sla

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

Define o SLA do case_id fornecido, se existir. Caso contrário, define o SLA do registo atual. O ANS definido através desta API deve exceder todos os outros tipos de ANS de registos.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
period_time {int/str} O período total do SLA N/A period_time > 0
period_type {string} Unidades de tempo de period_time, representadas por ApiPeriodTypeEnum N/A N/A
critical_period_time {int/str} O período de SLA crítico N/A critical_period_time >0
O período crítico (após o ajuste de escala com as respetivas unidades de tempo)
deve ser inferior ao período total.
critical_period_type {string} As unidades de tempo de critical_period_time,
representadas por ApiPeriodTypeEnum
N/A N/A
case_id {long} Identificador do registo N/A N/A

signal_handler

signal_handler(sig, frame)

property target_entities

O objeto target_entities é uma lista de objetos de entidade com os quais a ação configurada pode ser executada. Cada objeto de entidade expõe as seguintes propriedades e métodos:

Propriedades da entidade

Seguem-se os atributos de retenção de dados diretos de um objeto de entidade:

Propriedade Tipo de dados Descrição
identifier string O identificador exclusivo (UUID) da entidade.
creation_time int A data/hora Unix em que a entidade foi criada.
modification_time int A data/hora Unix em que a entidade foi modificada pela última vez.
additional_properties dict Um dicionário que contém detalhes adicionais sobre a entidade.
case_identifier string O ID do registo principal ao qual a entidade pertence.
alert_identifier string O ID do alerta associado à entidade.
entity_type string O tipo de entidade (por exemplo, "HOSTNAME", "USERUNQNAME").
is_internal bool Indica se a entidade é um recurso interno.
is_suspicious bool Indica se a entidade está sinalizada como suspeita.
is_artifact bool Indica se a entidade é um artefacto.
is_enriched bool Indica se a entidade foi enriquecida.
is_vulnerable bool Indica se a entidade está marcada como vulnerável.
is_pivot bool Indica se a entidade é uma entidade de eixo.

Métodos de entidade

Seguem-se as funções executáveis disponíveis num objeto de entidade:

Método Descrição
to_dict() Converte o objeto de entidade num dicionário Python padrão.

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)

Atualize os dados adicionais dos alertas.

Parâmetros

Nome do parâmetro Tipo de parâmetro Definição Valores possíveis Comentários
case_id {string} Identificador do registo 234 N/A
alerts_additional_data {string:string} N/A N/A N/A

Devoluções

NoneType

Exemplo

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

Comportamento dos resultados

Atualiza o alerta com dados adicionais, como testKey:testValue.

Valor do resultado

Nenhum