---
url: https://docs.ogmabox.com/it/app/search.md
description: >-
  Cerca nel traffico e nei rilievi di sicurezza del progetto di Ogma con HTTPQL
  e filtri sul contenuto.
---

# Ricerca {#search}

Ricerca interroga il traffico HTTP acquisito nel progetto corrente, compresi i record oltre le righe attualmente caricate in Cronologia HTTP.

## Aprire Ricerca {#opening-search}

Fai clic su **Ricerca** nella navigazione a sinistra. Inserisci criteri strutturati e/o un'espressione HTTPQL, quindi fai clic su **Ricerca** o premi Invio. Digitare cambia i criteri senza eseguire una nuova ricerca. Usa la paginazione per ispezionare ulteriori risultati.

## Sintassi HTTPQL {#httpql-syntax}

HTTPQL è un linguaggio di query strutturato per il traffico HTTP. Cerca corrispondenze nei campi di richiesta e risposta usando operatori tipizzati.

### Campi {#fields}

| Campo | Corrisponde a |
|-------|---------|
| `req.host` | Nome di host della richiesta. |
| `req.path` | Percorso della richiesta. |
| `req.method` | Metodo HTTP (GET, POST ecc.). |
| `req.body` | Contenuto del corpo della richiesta. |
| `resp.code` | Codice di stato della risposta (intero). |
| `resp.len` | Lunghezza del corpo della risposta in byte (intero). |
| `resp.body` | Contenuto del corpo della risposta. |
| `resp.header["Name"].value` | Valore dell'intestazione di risposta indicata. |
| `req.header["Name"].value` | Valore dell'intestazione di richiesta indicata. |
| `req.has_finding` | Vero quando la richiesta ha almeno un rilievo di sicurezza allegato. |
| `req.tag` | Stringa dell'etichetta applicata alla richiesta. |

### Operatori {#operators}

| Operatore | Si applica a | Significato |
|----------|-----------|---------|
| `eq` | stringa, intero | Corrispondenza esatta. |
| `ne` | stringa, intero | Diverso da. |
| `cont` | stringa | Contiene la sottostringa. |
| `ncont` | stringa | Non contiene la sottostringa. |
| `regex` | stringa | Corrisponde all'espressione regolare. |
| `gt` | intero | Maggiore di. |
| `gte` | intero | Maggiore o uguale a. |
| `lt` | intero | Minore di. |
| `lte` | intero | Minore o uguale a. |
| `exists` | intestazioni | L'intestazione è presente. |

### Combinare espressioni {#combining-expressions}

Usa `AND` e `OR` per combinare le condizioni. Le parentesi controllano la precedenza. Usa operatori negativi come `ne` o `ncont` per escludere corrispondenze.

```text
(req.method.eq:POST OR req.method.eq:PUT) AND resp.code.gte:500
```

## Query di esempio {#example-queries}

Trova richieste POST che hanno restituito un errore nell'intervallo 500:

```text
req.method.eq:POST AND resp.code.gte:500
```

Trova richieste con un'intestazione Authorization:

```text
req.header["Authorization"].value.exists
```

Trova risposte grandi da un host specifico:

```text
req.host.eq:api.example.com AND resp.len.gt:100000
```

Trova richieste etichettate per successive verifiche:

```text
req.tag.eq:followup
```

Trova tutte le richieste con un rilievo di sicurezza allegato:

```text
req.has_finding.eq:true
```

Trova richieste in cui il corpo della risposta contiene una stringa di errore nota:

```text
resp.body.cont:"stack trace"
```

## Ricerche salvate {#saved-searches}

Usa **Fissa** accanto all'input HTTPQL per conservare una query usata spesso e riutilizzarla rapidamente. Seleziona una query fissata per applicarla; rimuovi la sua etichetta quando non serve più. Anche la cronologia delle query aiuta a riutilizzare espressioni recenti.

Le schede di ricerca consentono di confrontare query indipendenti durante la visita corrente. Non sono ricerche salvate persistenti. Per preimpostazioni strutturate con nome che possono essere esportate e importate, usa la [pagina Filtri](./filters.md).

## Ispezionare i risultati {#inspecting-results}

Fai clic su qualsiasi riga nella tabella dei risultati per aprire la richiesta e la risposta nel pannello di ispezione. L'ispettore è la stessa vista usata in Cronologia HTTP: puoi alternare tra viste grezze e formattate, copiare intestazioni o corpo e aggiungere rilievi di sicurezza direttamente da questo pannello.

## Assistenza IA {#ai-assist}

Quando è configurato un provider IA, fai clic su **IA** accanto all'input della query per descrivere in linguaggio naturale cosa vuoi trovare. Ogma genera l'espressione HTTPQL. Controlla la query prima di eseguirla.

* "Richieste POST che restituiscono errori del server" > `req.method.eq:POST AND resp.code.gte:500`
* "Risposte più grandi di 50 KB dal sottodominio API" > `req.host.cont:api AND resp.len.gt:51200`
* "Richieste con rilievi di sicurezza allegati" > `req.has_finding.eq:true`

## Pagine correlate {#related-pages}

* [HTTPQL e StreamQL](../reference/httpql.md)
* [Cronologia HTTP](./http-history.md)
* [Filtri](./filters.md)
