> ## Documentation Index
> Fetch the complete documentation index at: https://docs.casebender.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CrowdStrike Falcon

> Integrazione bidirezionale tra CaseBender e CrowdStrike Falcon per l'acquisizione delle rilevazioni (pull o push) e la sincronizzazione delle disposizioni.

## Panoramica

L'integrazione di CrowdStrike Falcon (**INT-008**) acquisisce le rilevazioni di Falcon in
CaseBender e può restituire le disposizioni dei casi a Falcon quando un caso viene chiuso.

<CardGroup cols={2}>
  <Card title="Acquisizione in entrata" icon="arrow-right-to-bracket">
    Le rilevazioni di Falcon vengono acquisite — **estratte automaticamente** in
    modo pianificato (consigliato) o **inviate** tramite webhook — quindi
    normalizzate, arricchite con osservabili e tecniche MITRE ATT\&CK e trasformate
    in avvisi.
  </Card>

  <Card title="Sincronizzazione in uscita" icon="arrow-right-from-bracket">
    Quando un caso collegato viene chiuso in CaseBender, lo stato della rilevazione
    di Falcon viene aggiornato con un commento di audit.
  </Card>
</CardGroup>

<Tip>
  **Consigliato: abilita il polling automatico.** CaseBender può estrarre nuove
  rilevazioni in modo pianificato utilizzando lo stesso client API di Falcon —
  non è richiesto alcun webhook o connettore SIEM. Vedi
  [Polling automatico](#entrata-polling-automatico).
</Tip>

<Note>
  Questa integrazione utilizza l'**Alerts API v2 di Falcon** e si autentica con un
  **client API OAuth2** (client ID + secret) tramite il flusso client-credentials.
</Note>

## Funzionalità

| Funzionalità                          | Direzione     | Descrizione                                                                                                                               |
| ------------------------------------- | ------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| **Polling delle rilevazioni (pull)**  | Entrata       | CaseBender interroga l'Alerts API in modo pianificato e acquisisce automaticamente le nuove rilevazioni, senza configurazione lato Falcon |
| Acquisizione delle rilevazioni (push) | Entrata       | Le rilevazioni di Falcon vengono inviate tramite webhook e normalizzate in avvisi                                                         |
| Estrazione di osservabili             | Entrata       | IP, hash di file, nomi di file, host e utenti                                                                                             |
| Correlazione MITRE ATT\&CK            | Entrata       | Gli ID di tecnica/tattica vengono aggiunti come tag e TTP                                                                                 |
| Sincronizzazione delle disposizioni   | Uscita        | Lo stato della rilevazione + un commento vengono inviati alla chiusura del caso                                                           |
| Test di connessione                   | Bidirezionale | Convalida le credenziali OAuth2 e l'accesso all'API                                                                                       |

## Prerequisiti

<Steps>
  <Step title="Client API di Falcon">
    Nella console di Falcon, vai su **Support and resources → API clients and keys** e crea un
    client API. Concedi l'ambito **Alerts: Read** (e **Alerts: Write** se desideri la chiusura in
    uscita). Copia il **Client ID** e il **Secret**.
  </Step>

  <Step title="URL di base della regione cloud">
    Annota l'URL di base del tuo cloud Falcon (es. `https://api.crowdstrike.com`,
    `https://api.us-2.crowdstrike.com` o `https://api.eu-1.crowdstrike.com`).
  </Step>

  <Step title="Uscita di rete">
    Il servizio di polling di CaseBender deve poter raggiungere l'URL di base dell'API di Falcon.
  </Step>
</Steps>

## Configurare l'integrazione in CaseBender

<Steps>
  <Step title="Apri il catalogo delle integrazioni">
    Vai su **Settings → Integrations → Create** e scegli **CrowdStrike Falcon** nella categoria
    **EDR/XDR**.
  </Step>

  <Step title="Inserisci le credenziali dell'API di Falcon">
    | Campo                    | Descrizione                                                              |
    | ------------------------ | ------------------------------------------------------------------------ |
    | API URL                  | URL di base del cloud Falcon (predefinito `https://api.crowdstrike.com`) |
    | Falcon API Client ID     | Il client ID OAuth2                                                      |
    | Falcon API Client Secret | Il client secret OAuth2                                                  |
  </Step>

  <Step title="Abilita il polling automatico (consigliato)">
    Nella scheda **Automatic polling**, attiva **Enable automatic polling** e configura:

    | Opzione                       | Effetto                                                                                                          |
    | ----------------------------- | ---------------------------------------------------------------------------------------------------------------- |
    | `pollingEnabled`              | Attiva l'estrazione pianificata delle rilevazioni di Falcon                                                      |
    | `pollingIntervalMinutes`      | Frequenza di polling (predefinito `5`, intervallo 1–1440)                                                        |
    | `pollingInitialLookbackHours` | Alla prima esecuzione, importa le rilevazioni aggiornate in questa finestra (predefinito `24`, intervallo 1–168) |
    | `pollMaxItemsPerRun`          | Limite di sicurezza di elementi per esecuzione (predefinito `500`)                                               |
  </Step>

  <Step title="Configura la creazione automatica dei casi">
    | Opzione              | Effetto                                                                                                                                            |
    | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
    | `autoCreateCases`    | Promuove ogni rilevazione acquisita a **Caso** (deduplicata per ID rilevazione). Se disattivato, le rilevazioni restano nella casella degli avvisi |
    | `minSeverityForCase` | Crea automaticamente casi solo a partire da questa gravità                                                                                         |
  </Step>
</Steps>

## Entrata (polling automatico)

Con il **polling automatico** abilitato, il poller di CaseBender interroga periodicamente
l'Alerts API di Falcon e acquisisce le nuove rilevazioni da solo.

<Steps>
  <Step title="Estrazione pianificata">
    A ogni intervallo, CaseBender interroga gli ID compositi aggiornati dall'ultimo cursore tramite
    l'Alerts API v2, quindi recupera le entità di rilevazione complete. Alla prima esecuzione non
    c'è cursore, quindi vengono importate le rilevazioni entro `pollingInitialLookbackHours`.
  </Step>

  <Step title="Cursore + deduplicazione">
    CaseBender avanza un cursore per integrazione fino all'`updated_timestamp` più recente. Le
    rilevazioni vengono **deduplicate per ID rilevazione**, quindi finestre di polling sovrapposte
    non creano mai duplicati.
  </Step>

  <Step title="Normalizzazione">
    Ogni rilevazione viene normalizzata in un avviso di CaseBender — mappando la gravità,
    costruendo titolo/descrizione, estraendo osservabili e generando TTP MITRE.
  </Step>
</Steps>

<Info>
  Il polling viene eseguito nel servizio di polling in background di CaseBender. Assicurati che tale
  servizio possa raggiungere l'URL di base della tua API di Falcon (direttamente o tramite il tuo
  proxy configurato).
</Info>

## Entrata (webhook / push)

In alternativa al polling, Falcon (o un intermediario) può inviare payload di rilevazione
all'endpoint di acquisizione di CaseBender:

```
POST https://<your-casebender-domain>/api/v1/ingest/crowdstrike
```

Le richieste sono autenticate con una **API key** di integrazione nell'intestazione `x-api-key`.
Le chiavi webhook di Falcon hanno il prefisso `cbr_crowdstrike_`.

## Uscita: sincronizzazione delle disposizioni verso Falcon

Quando un caso viene chiuso, l'evento `case_closed` viene inviato al gestore di CrowdStrike. Se il
caso è collegato a una rilevazione di Falcon (l'ID rilevazione è impresso sull'avviso acquisito), il
gestore aggiorna lo stato della rilevazione e aggiunge un commento di audit. La chiusura in uscita
richiede l'ambito **Alerts: Write** sul client API.

## Considerazioni sulla sicurezza

* **Privilegio minimo** — concedi **Alerts: Read** solo per l'entrata; aggiungi **Alerts: Write**
  solo se abiliti la chiusura in uscita.
* **Gestione dei segreti** — il client secret è memorizzato nelle impostazioni dell'integrazione;
  ruotalo secondo la policy della tua organizzazione.
* **Cache dei token** — i token di accesso sono memorizzati in cache in memoria e rinnovati prima
  della scadenza.
* **Rete** — limita l'uscita all'URL di base della tua API di Falcon.

## Risoluzione dei problemi

<AccordionGroup>
  <Accordion title="Il test di connessione fallisce con un errore OAuth2">
    Verifica il client ID, il secret e l'URL di base dell'API (regione). Conferma che il client API
    sia abilitato e disponga dell'ambito Alerts.
  </Accordion>

  <Accordion title="Il polling è abilitato ma non appaiono rilevazioni">
    Conferma che **Enable automatic polling** sia attivo e che il client API abbia l'ambito Alerts:
    Read. Verifica che il poller possa raggiungere l'URL di base di Falcon. Alla prima esecuzione
    vengono importate solo le rilevazioni entro `pollingInitialLookbackHours`.

    **Assicurati che tutti i servizi di CaseBender siano in esecuzione.** Le rilevazioni vengono
    recuperate dal processore in background e trasformate in avvisi (ed eventualmente casi) dal
    **worker** in background. Con Docker, esegui `docker compose ps` e conferma che i servizi
    `worker` e `misp-processor` siano `Up`.
  </Accordion>

  <Accordion title="La chiusura del caso non aggiorna Falcon">
    Assicurati che il client API abbia l'ambito Alerts: Write e che il caso sia collegato a una
    rilevazione di Falcon. Controlla la cronologia del caso per l'esito della sincronizzazione.
  </Accordion>
</AccordionGroup>

## Documentazione correlata

* [Panoramica delle integrazioni](./introduction.mdx)
* [Documentazione dell'API di CrowdStrike Falcon](https://falcon.crowdstrike.com/documentation/)
