Illusive Networks

Questo documento fornisce indicazioni su come integrare Illusive Networks con Google SecOps.

Casi d'uso del prodotto

  1. Eseguire azioni attive: eseguire scansioni forensi, arricchire entità, aggiungere/rimuovere utenti/server di inganno.
  2. Importa gli incidenti in Simplify.

Configura l'integrazione di Illusive Networks in Google Security Operations

Per istruzioni dettagliate su come configurare un'integrazione in Google SecOps, consulta Configura le integrazioni.

Parametri di integrazione

Utilizza i seguenti parametri per configurare l'integrazione:

Nome visualizzato del parametro Tipo Valore predefinito Is Mandatory Descrizione
Root API Stringa http://x.x.x.x Sì Radice dell'API dell'istanza Illusive Networks.
Chiave API Password N/D Sì

Chiave API di Illusive Networks.
Nota: la stringa "Basic" non deve far parte del valore.

File del certificato CA Stringa Falso File del certificato CA con codifica Base64.
Verifica SSL Casella di controllo Selezionata Sì Se l'opzione è abilitata, verifica che il certificato SSL per la connessione al server Illusive Networks sia valido.

Come generare una chiave API

  1. Vai alla sezione "Settings" (Impostazioni) nella console di Illusive Networks
  2. Nella sezione "Generali", scorri verso il basso fino alla parte "Chiavi API".
  3. Premi il pulsante "Aggiungi chiave".
  4. Ti consigliamo di aggiungere tutte le autorizzazioni alla chiave API.
  5. Dalla stringa fornita devi copiare tutto tranne la stringa "Basic".
  6. Inserisci questo valore nel parametro "Chiave API" dell'integrazione di Google SecOps.

Come aggiornare il limite di frequenza

Esiste un limite di frequenza per determinati endpoint in Illusive Networks. Per il connettore è fondamentale che il limite sia sufficientemente alto, in modo che vengano importati tutti gli incidenti. Per aggiornare il limite di frequenza, devi accedere al server di gestione e andare a: C:\Program Files\illusive-Management-Server-3.1.XXX.XXXX\conf\general.properties.txt

Nel file, cerca le seguenti proprietà:

  • api.incident.rate.limit.maximum.num.requests
  • api.rate.limit.windows.duration.minutes

Ti consigliamo di utilizzare la seguente configurazione:

  • api.incident.rate.limit.maximum.num.requests=100
  • api.rate.limit.windows.duration.minutes=1
  • api.monitoring.rate.limit.maximum.num.requests = 100
  • api.forensics.rate.limit.maximum.num.requests = 100

Azioni

Dindin

Descrizione

Testa la connettività a Illusive Networks con i parametri forniti nella pagina di configurazione dell'integrazione nella pagina Google SecOps Content Hub.

Parametri

N/D

Esegui il

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Bacheca casi
Tipo di risultato Valore / Descrizione Tipo
Messaggio di output*

Se l'operazione va a buon fine: "Connessione al server Illusive Networks eseguita con i parametri di connessione forniti".

Non riuscita: (fail) - Impossibile connettersi al server Illusive Networks. Error is {0}".format(exception.stacktrace)

Generale

Arricchisci le entità

Descrizione

Arricchisci le entità utilizzando le informazioni di Illusive Networks. Entità supportate: nome host.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito Is Mandatory Descrizione
N/D

Esegui il

Questa azione viene eseguita sull'entità Host.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
    "machineId": "00428a29-0343-4e13-aa97-3b624739c509",
    "machineName": "HELLO",
    "isHealthy": false,
    "lastDeploymentMethodType": "WMI",
    "distinguishedName": "CN=HELLO,CN=Computers,dc=iln,dc=local",
    "groupName": null,
    "sourceDiscoveryName": "iln.local",
    "collectData": true,
    "policyName": null,
    "assignmentStatus": "ANALYSIS",
    "operatingSystemType": "Windows",
    "operatingSystemName": "Windows Server 2016 Standard Evaluation",
    "operatingSystemVersion": "10.0 (14393)",
    "agentVersion": null,
    "bitness": null,
    "loggedInUserName": null,
    "lastLogonTime": 1613078764501,
    "succeededDeceptionFamilies": 0,
    "shouldBeUninstalledDeceptionFamilies": 0,
    "desiredDeceptionFamilies": 0,
    "deceptionFamiliesPercentages": null,
    "lastExecutionType": "AGENT",
    "machineLastExecutionPhaseType": "CONNECTION",
    "machineLastExecutionPhaseStatus": "FAILURE",
    "machineLastExecutionPhaseErrorMessage": "Unreachable - no ping",
    "mitigationStatusType": null,
    "machineExecutionUnifiedStatus": "FAILURE_CONNECTION",
    "machineLastExecutionPhaseFinishDate": "2021-02-12T10:17:30.623Z",
    "endpointTrapHealthCheckHostStatus": "NotTested",
    "endpointTrapHealthCheckHostStatusLastUpdated": null,
    "failedDeceptionFamilies": 0,
    "inProgressDeceptionFamilies": 0,
    "notDeployedDeceptionFamilies": 0,
    "policyId": null,
    "ghost": false
}
Arricchimento delle entità
Nome del campo di arricchimento Logica: quando applicare
ILLNET_machineName Se disponibile in JSON (informazioni sull'host)
ILLNET_isHealthy Se disponibile in JSON (informazioni sull'host)
ILLNET_host Se disponibile in JSON (informazioni sull'host)
ILLNET_distinguishedName Se disponibile in JSON (informazioni sull'host)
ILLNET_sourceDiscoveryName Se disponibile in JSON (informazioni sull'host)
ILLNET_policyName Se disponibile in JSON (informazioni sull'host)
ILLNET_operatingSystemName Se disponibile in JSON (informazioni sull'host)
ILLNET_agentVersion Se disponibile in JSON (informazioni sull'host)
ILLNET_loggedInUserName Se disponibile in JSON (informazioni sull'host)
ILLNET_machineExecutionUnifiedStatus Se disponibile in JSON (informazioni sull'host)
ILLNET_bitness Se disponibile in JSON (informazioni sull'host)
Bacheca casi
Tipo di risultato Valore / Descrizione Tipo
Messaggio di output*

L'azione non deve avere esito negativo né interrompere l'esecuzione di un playbook:
se i dati sono disponibili per almeno un'entità (is_success = true): "Le seguenti entità sono state arricchite correttamente utilizzando Illusive Networks: \n {entity.identifier}".

Se i dati non sono disponibili per almeno un'entità (is_success = true): "L'azione non è stata in grado di arricchire le seguenti entità utilizzando Illusive Networks: \n {entity.identifier}".

Se i dati non sono disponibili per tutti (is_success = false): "Nessuna entità è stata arricchita".

L'azione non deve riuscire e deve interrompere l'esecuzione di un playbook:
in caso di errore irreversibile, ad esempio credenziali errate, nessuna connessione al server, altro: "Errore durante l'esecuzione dell'azione "Arricchisci entità". Reason: {0}''.format(error.Stacktrace)

Se il codice di stato è 429: "Errore durante l'esecuzione dell'azione "Arricchisci entità". Motivo: errore di limitazione di frequenza. Consulta la documentazione su come aumentare il limite di frequenza".

Generale
Tabella della bacheca casi

Nome: {entity.identifier}

Saranno presenti solo due colonne: Chiave e Valore.

Entità

Esegui scansione forense

Descrizione

Esegui l'analisi forense sull'endpoint in Illusive Networks. Funziona con le entità IP e Hostname.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito Is Mandatory Descrizione
Includi informazioni di sistema Casella di controllo Selezionata Sì Se l'opzione è abilitata, l'azione restituirà le informazioni di sistema.
Includi informazioni sui file di precaricamento Casella di controllo Selezionata Sì Se abilitata, l'azione restituirà informazioni sui file di precaricamento.
Includi informazioni su Installazione applicazioni Casella di controllo Selezionata Sì Se abilitata, l'azione restituirà informazioni sui programmi di aggiunta/rimozione.
Includi informazioni sui processi di avvio Casella di controllo Selezionata Sì Se l'opzione è abilitata, l'azione restituirà informazioni sui processi di avvio.
Includi informazioni sui processi in esecuzione Casella di controllo Selezionata Sì Se l'opzione è attiva, l'azione restituirà informazioni sui processi in esecuzione.
Includi informazioni sui programmi di assistenza agli utenti Casella di controllo Selezionata Sì Se l'opzione è attiva, l'azione restituirà informazioni sui programmi di assistenza per gli utenti.
Includi informazioni sulla cronologia di PowerShell Casella di controllo Selezionata Sì Se abilitata, l'azione restituirà informazioni sulla cronologia di PowerShell.

Numero massimo di elementi da restituire

Numero intero 50 No Specifica il numero di articoli da restituire. Se non viene fornito alcun valore, l'azione restituirà tutto.

Esegui il

Questa azione viene eseguita sulle seguenti entità:

  • Indirizzo IP
  • Host

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
    "Entity.identifier": {
        "host_info": "{Host_info part}",
        "prefetch_info": "{prefetch_info}",
        "installed_programs_info": "{installed_programs_info}",
        "startup_processes": "{startup_processes}",
        "running_processes": "{running_processes}",
        "user_assist_info": "{user_assist_info}",
        "powershell_history": "{powershell history}"
    }
}
Arricchimento delle entità
Nome del campo di arricchimento Logica: quando applicare
ILLNET_osName Se disponibile in JSON (informazioni sull'host)
ILLNET_machineType Se disponibile in JSON (informazioni sull'host)
ILLNET_host Se disponibile in JSON (informazioni sull'host)
ILLNET_loggedInUser Se disponibile in JSON (informazioni sull'host)
ILLNET_userProfiles Se disponibile in JSON (informazioni sull'host)
ILLNET_operatingSystemType Se disponibile in JSON (informazioni sull'host)
Bacheca casi
Tipo di risultato Valore / Descrizione Tipo
Messaggio di output*

L'azione non deve fallire né interrompere l'esecuzione di un playbook:
se eseguita correttamente per almeno un endpoint (is_success = true): "Successfully ran forensic scan on the following endpoints in Illusive Networks: {entity.identifier}"

Se l'operazione non va a buon fine per almeno un endpoint: "L'azione non è riuscita a ottenere informazioni dall'analisi forense sui seguenti endpoint: {entity.identifier}"

Se non viene trovato alcun risultato per tutti: "Non sono state trovate informazioni forensi sugli endpoint forniti."

Messaggio asincrono: "È stata avviata l'analisi forense sui seguenti endpoint: {entity identifier}. \n

Analisi forense completata sui seguenti endpoint."

L'azione non deve riuscire e deve interrompere l'esecuzione di un playbook:
in caso di errore irreversibile, come credenziali errate, nessuna connessione al server, altro: "Errore durante l'esecuzione dell'azione "Esegui scansione forense". Reason: {0}''.format(error.Stacktrace)

Se nessuno dei parametri "Includi…" è attivato: "Errore durante l'esecuzione dell'azione "Esegui analisi forense". Motivo: devi attivare almeno uno dei parametri "Includi…"

Generale
Informazioni sull'host della tabella della bacheca casi

Nome: {entity.identifier}

Saranno presenti solo due colonne: Chiave e Valore.

Entità
Prefetch_Info della tabella della bacheca casi

Nome: "{entity.identifier}: Prefetch Files Information"

Colonne:

Nome file

Ora ultima esecuzione

Ora di modifica del file

Nome file di precaricamento

Generale

Tabella della bacheca casi

INSTALLED_PROGRAMS_INFO

Nome: "{entity.identifier}: Informazioni su aggiunta/rimozione di programmi"

Colonne:

Nome visualizzato

Nome file

Generale

Tabella della bacheca casi

STARTUP_PROCESSES

Nome: "{entity.identifier}: processi di avvio"

Colonne:

Nome

Comando

Località

Utente

Generale

Tabella della bacheca casi

RUNNING_PROCESSES

Nome: "{entity.identifier}: Processi in esecuzione"

Colonne:

Utente

Privilegi amministrativi

Comando

ID di processo

Nome processo

Ora di inizio

Generale

Tabella della bacheca casi

USER_ASSIST_INFO

Nome: "{entity.identifier}: informazioni sui programmi di assistenza per gli utenti"

Colonne:

Nome file

Nome utente

Data ultimo utilizzo

****

Tabella della bacheca casi

POWER_SHELL_HISTORY

Nome: "{entity.identifier}: cronologia di PowerShell"

Colonne:

Nome utente

Comando

Elenca elementi ingannevoli

Descrizione

Elenca gli elementi ingannevoli disponibili in Illusive Networks.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito Is Mandatory Descrizione
Tipo di inganno DDL

Tutti

Valori possibili:

Tutti

Solo utenti

Solo server

Sì Specifica il tipo di elementi ingannevoli da restituire.
Stato ingannevole DDL

Tutti

Valori possibili:

Tutti

Solo approvati, Solo suggeriti

Sì Specifica il tipo di elementi ingannevoli da restituire in base allo stato.
Numero massimo di elementi da restituire Numero intero 50 No Specifica il numero di articoli da restituire. Valore predefinito: 50. Se non viene specificato nulla, l'azione restituirà tutti gli elementi.

Esegui il

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Risultato JSON
{
    "users": [
        {
            "username": "backupad",
            "password": "5437niwY",
            "domainName": "intw-lab.local",
            "policyNames": [
                "Full Protection"
            ],
            "adUser": false,
            "activeUser": false,
            "deceptiveState": "APPROVED"
        },
        {
            "username": "jvillar",
            "password": "ritA1102",
            "domainName": "intw-lab.local",
            "policyNames": [],
            "adUser": true,
            "activeUser": false,
            "deceptiveState": "SUGGESTED"
        },
        {
            "username": "gaccess.user",
            "password": "psUiS01",
            "domainName": "intw-lab.local",
            "policyNames": [],
            "adUser": true,
            "activeUser": false,
            "deceptiveState": "SUGGESTED"
        },
        {
            "username": "service.user",
            "password": "mAkaYe4",
            "domainName": "intw-lab.local",
            "policyNames": [],
            "adUser": true,
            "activeUser": false,
            "deceptiveState": "SUGGESTED"
        }
    ],
    "servers": [
        {
            "host": "10.0.0.2",
            "serviceTypes": [
                "DB"
            ],
            "policyNames": [
                "Full Protection"
            ],
            "adHost": false,
            "deceptiveState": "APPROVED"
        },
        {
            "host": "10.0.0.1",
            "serviceTypes": [
                "DB"
            ],
            "policyNames": [
                "Full Protection"
            ],
            "adHost": false,
            "deceptiveState": "APPROVED"
        }
    ]
}
Bacheca casi
Tipo di risultato Valore / Descrizione Tipo
Messaggio di output*

L'azione non deve fallire né interrompere l'esecuzione di un playbook:
se 200 e i dati sono disponibili (is_success = true): "Successfully returned available deceptive items from Illusive Networks".

Se 200 e non sono disponibili dati (is_success=false) "Non sono stati trovati dati relativi a elementi ingannevoli in base ai criteri forniti in Illusive Networks."

L'azione non dovrebbe riuscire e dovrebbe interrompere l'esecuzione di un playbook:
in caso di errore irreversibile, come credenziali errate, nessuna connessione al server, altro: "Errore durante l'esecuzione dell'azione "Elenca elementi ingannevoli". Reason: {0}''.format(error.Stacktrace)

Generale
Tabella della bacheca casi

Nome: "Utenti ingannevoli"

Colonna:

Nome utente

Password

Dominio

Policy

Utente AD

Attivo

Stato

Generale
Tabella della bacheca casi

Nome: "Server ingannevoli"

Colonna:

Host

Servizi

Policy

Server AD

Stato

Generale

Aggiungi utente ingannevole

Descrizione

Aggiungi utenti ingannevoli in Illusive Networks.

Parametri

Nome Valore predefinito Is Mandatory Descrizione
Nome utente N/D Sì Specifica il nome utente per il nuovo utente ingannevole.
Password N/D Sì Specifica la password per il nuovo utente ingannevole.
Dominio DNS N/D No Specifica il nome di dominio per il nuovo utente ingannevole.
Nomi delle policy N/D No Specifica un elenco separato da virgole di policy che devono essere applicate al nuovo utente ingannevole. Se non viene fornito alcun valore, l'azione utilizzerà tutte le policy per impostazione predefinita.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Bacheca casi
Tipo di risultato Valore / Descrizione Tipo
Messaggio di output*

Success (is_success=true) → Utente ingannevole aggiunto correttamente alle reti Illusive.

Caso 1. User Already Exists (fail) - Error executing action "{action name}". Motivo: l'utente ingannevole "{username}" esiste già.

Caso 2. Codice di stato 400 (errore) - Errore durante l'esecuzione dell'azione "{action name}". Motivo: {messaggio di errore}.

Caso 3. Errore generico (errore) - Errore durante l'esecuzione dell'azione "{action name}". Motivo: {error traceback}.

Generale

Rimuovi utente ingannevole

Descrizione

Rimuovi l'utente ingannevole da Illusive Networks.

Parametri

Nome Valore predefinito Is Mandatory Descrizione
Nome utente N/D Sì Specifica il nome dell'utente ingannevole che deve essere rimosso.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Bacheca casi
Tipo di risultato Valore / Descrizione Tipo
Messaggio di output*

Successo → Utente ingannevole rimosso correttamente nelle reti Illusive.

Caso 1. L'utente non esiste (is_success=false) - L'azione non è riuscita a rimuovere l'utente ingannevole "{username}". Motivo: l'utente ingannevole "{username}" non esiste.

Caso 2. Errore generico (errore): Errore durante l'esecuzione dell'azione "{action name}". Motivo: {error traceback}.

Generale

Aggiungi server ingannevole

Descrizione

Aggiungi server ingannevoli in Illusive Networks.

Parametri

Nome Valore predefinito Is Mandatory Descrizione
Nome server N/D Sì Specifica il nome del nuovo server ingannevole.
Tipi di servizi DB Sì Specifica un elenco separato da virgole di tipi di servizi per il nuovo server ingannevole.
Nomi delle policy No Specifica un elenco separato da virgole di policy da applicare al nuovo server ingannevole. Se non viene fornito alcun valore, l'azione utilizzerà tutte le policy per impostazione predefinita.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Bacheca casi
Tipo di risultato Valore / Descrizione Tipo
Messaggio di output*

Success (is_success=true) → Server ingannevole aggiunto correttamente alle reti Illusive.

Caso 1. Server Already Exists (fail) - Error executing action "{action name}". Motivo: il server ingannevole "{server name}" esiste già.

Caso 2. Stato 400 (errore) - Errore durante l'esecuzione dell'azione "{action name}". Motivo: {messaggio di errore}.

Caso 3. Errore generico - Errore durante l'esecuzione dell'azione "{action name}". Motivo: {error traceback}.

Generale

Rimuovi server ingannevole

Descrizione

Rimuovi il server ingannevole da Illusive Networks.

Parametri

Nome Valore predefinito Is Mandatory Descrizione
Nome server N/D Sì Specifica il nome del server ingannevole che deve essere rimosso.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore
is_success is_success=False
is_success is_success=True
Bacheca casi
Tipo di risultato Valore / Descrizione Tipo
Messaggio di output*

Successo → Rimozione del server ingannevole nelle reti Illusive riuscita.

Caso 1. Il server non esiste (is_success=false) - L'azione non è riuscita a rimuovere il server ingannevole "{server name}". Motivo: il server ingannevole "{server name}" non esiste.

Caso 2. Errore generico - Errore durante l'esecuzione dell'azione "{action name}". Motivo: {error traceback}.

Generale

Connettori

Illusive Networks - Connettore per incidenti

Descrizione

Estrai gli incidenti con la relativa sequenza temporale forense da Illusive Networks.

Configura il connettore Illusive Networks - Incidents in Google SecOps

Per istruzioni dettagliate su come configurare un connettore in Google SecOps, consulta Configurazione del connettore.

Parametri del connettore

Utilizza i seguenti parametri per configurare il connettore:

Nome visualizzato del parametro Tipo> Valore predefinito Is Mandatory Descrizione
Nome campo prodotto Stringa Nome prodotto Sì Inserisci il nome del campo di origine per recuperare il nome del campo del prodotto.
Nome campo evento Stringa details_serviceType Sì Inserisci il nome del campo di origine per recuperare il nome del campo evento.
Nome campo ambiente Stringa "" No

Descrive il nome del campo in cui è memorizzato il nome dell'ambiente.

Se il campo dell'ambiente non viene trovato, l'ambiente è quello predefinito.

Pattern regex dell'ambiente Stringa .* No

Un pattern regex da eseguire sul valore trovato nel campo "Nome campo ambiente".

Il valore predefinito è .* per rilevare tutto e restituire il valore invariato.

Utilizzato per consentire all'utente di manipolare il campo dell'ambiente tramite la logica delle espressioni regolari.

Se il pattern regex è nullo o vuoto o se il valore dell'ambiente è nullo, il risultato finale dell'ambiente è l'ambiente predefinito.

Timeout dello script (secondi) Numero intero 180 Sì Limite di timeout per il processo Python che esegue lo script corrente.
Root API Stringa http://x.x.x.x Sì Radice dell'API dell'istanza Illusive Networks.
Chiave API Stringa N/D Sì Chiave API di Illusive Networks. Nota: la stringa "Basic" non deve far parte del valore.
Gravità avviso Stringa Media Sì

Gravità dell'avviso di Google SecOps che verrà creato in base agli incidenti di Illusive Networks.

Valori possibili:

Informativo

Bassa

Media

Alta

Critico

Numero massimo di ore indietro Numero intero 1 No Numero di ore da cui recuperare gli incidenti.
Numero massimo di incidenti da recuperare Numero intero 10 No Numero di incidenti da elaborare per un'iterazione del connettore. Il valore massimo è 1000.
Utilizza la lista consentita come lista bloccata Casella di controllo Selezionata Sì Se questa opzione è attiva, la lista consentita verrà utilizzata come lista bloccata.
Verifica SSL Casella di controllo Deselezionata Sì Se l'opzione è abilitata, verifica che il certificato SSL per la connessione al server Illusive Networks sia valido.
File del certificato CA Stringa N/D No File del certificato CA con codifica Base64.
Indirizzo del server proxy Stringa N/D No L'indirizzo del server proxy da utilizzare.
Nome utente proxy Stringa N/D No Il nome utente del proxy con cui eseguire l'autenticazione.
Password proxy Password N/D No La password del proxy con cui eseguire l'autenticazione.

Regole del connettore

Supporto dei proxy

Il connettore supporta il proxy.

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.