Ricerca
Ricerca interroga il traffico HTTP acquisito nel progetto corrente, compresi i record oltre le righe attualmente caricate in Cronologia HTTP.
Aprire Ricerca
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 è un linguaggio di query strutturato per il traffico HTTP. Cerca corrispondenze nei campi di richiesta e risposta usando operatori tipizzati.
Campi
| 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
| 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
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:500Query di esempio
Trova richieste POST che hanno restituito un errore nell'intervallo 500:
text
req.method.eq:POST AND resp.code.gte:500Trova richieste con un'intestazione Authorization:
text
req.header["Authorization"].value.existsTrova risposte grandi da un host specifico:
text
req.host.eq:api.example.com AND resp.len.gt:100000Trova richieste etichettate per successive verifiche:
text
req.tag.eq:followupTrova tutte le richieste con un rilievo di sicurezza allegato:
text
req.has_finding.eq:trueTrova richieste in cui il corpo della risposta contiene una stringa di errore nota:
text
resp.body.cont:"stack trace"Ricerche salvate
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.
Ispezionare i risultati
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
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