Dettagli per i log di Web Application Firewall
Dettagli di log per i log di Web Application Firewall (log WAF).
Risorse
- Web Application Firewall
Categorie di log
Valore API (ID): | Console (nome visualizzato) | descrizione; |
---|---|---|
tutte | Tutti i log | Tutti i log WAF |
Disponibilità
I log WAF sono disponibili in tutte le aree dei regimi commerciali.
Contenuto di un log di Web Application Firewall
Un record di log WAF contiene i campi riportati di seguito.
Campo | descrizione; | Esempio |
---|---|---|
azione | L'azione intrapresa dal WAF, che può essere "consenti" se è stata consentita un'ulteriore elaborazione della richiesta o "blocca" se non lo è stata. | allow |
clientAddr | Indirizzo IP client. Variabile Nginx $remote_addr. | 192.168.0.33:7870 |
countryCode | Codice paese ISO alpha-2 del client. | "ca" |
host | In questo ordine di precedenza: nome host dalla riga della richiesta o nome host dal campo dell'intestazione della richiesta "Host" o nome server corrispondente a una richiesta. Variabile $host Nginx. | 192.168.0.103 |
listenerPort | Porta del server che ha accettato una richiesta. Variabile Nginx $server_port. | "80" |
request.httpVersion | Protocollo di richiesta, in genere "HTTP/1.0", "HTTP/1.1" o "HTTP/2.0". Variabile Nginx $server_protocol. | "HTTP/1.1" |
request.id | Identificativo univoco della richiesta generato da 16 byte casuali, in esadecimale. Variabile Nginx $request_id. | "f8860949459e94181e650d4049615a01" |
request.method | Metodo di richiesta, in genere "GET" o "POST". Variabile Nginx $request_method. | “GET” |
request.path | URI richiesta originale completo (con argomenti). Variabile Nginx $request_uri. | "/console/css/%252e%252e%252fconsole.portal" |
requestProtection.matchedData | Dati che hanno attivato le azioni della regola quando la richiesta è stata ispezionata. La stringa contiene i dati presenti nell'URI, separati da un punto e virgola. | 'Test_data_1;Test_data_2;Test_data_3' |
requestProtection.matchedIds | Stringa contenente gli ID e le versioni delle regole di protezione corrispondenti (per l'ispezione delle richieste). Durante il reporting, gli ID vengono aggiunti da 3 simboli di versione, quindi ID=123 e versione=4 vengono indicati come 123004. Le voci sono separate da un punto e virgola. | "9301000_v001;9301100_v001;9301100_v001;9300000_v001" |
requestProtection.matchedRules | Nomi delle regole di protezione delle richieste corrispondenti al momento dell'ispezione della richiesta. La stringa contiene nomi di regola separati da un punto e virgola. | 'Rule_name_1;Rule_name_2;Rule_name_3' |
responseProtection.matchedData | Dati che hanno attivato le azioni della regola (nell'ispezione della risposta). La stringa contiene i dati presenti nell'URI, separati da un punto e virgola. | 'Test_data_1;Test_data_2;Test_data_3' |
response.code | Codice di risposta finale inviato al cliente. Variabile $status Nginx. | "401" |
response.size | Dimensione risposta completa (intestazione + corpo) in byte. Variabile Nginx $bytes_sent. | "139" |
requestAccessControl.matchedRules | Nomi delle regole di accesso alle richieste corrispondenti. Le stringhe contengono nomi di regola separati da un punto e virgola. | 'Rule_name_1;Rule_name_2;Rule_name_3' |
responseAccessControl.matchedRules | Nomi delle regole di accesso alle risposte corrispondenti. Le stringhe contengono nomi di regola separati da un punto e virgola. | 'Rule_name_1;Rule_name_2;Rule_name_3' |
backendStatusCode | Mantiene un codice di stato della risposta ottenuta dal server a monte. I codici di stato di più risposte sono separati da virgole e due punti. Questa è una variabile $upstream_status Nginx. | "200" |
responseProtection.matchedIds | Stringa contenente gli ID e le versioni delle regole di protezione corrispondenti (per l'ispezione delle richieste). Durante il reporting, gli ID vengono aggiunti da 3 simboli di versione, quindi ID=123 e versione=4 vengono indicati come 123004. Le voci sono separate da un punto e virgola. | '300_v004;25_v002;123_v001' |
responseProtection.matchedRules | Nomi delle regole di protezione delle risposte corrispondenti. Stringhe contenenti nomi di regole separati da un punto e virgola, ad esempio: 'Rule name 1;Rule name 2;Rule name 3'. |
"Recomended Rules" |
requestRateLimiting.matchedRules | Nomi delle regole del limitatore di frequenza corrispondenti. Stringa contenente i nomi di regola separati da un punto e virgola. | 'Rule_name_1;Rule_name_2;Rule_name_3'. |
responseProvider |
Contiene informazioni relative all'origine della risposta:
|
"requestProtection/Recomended Rules" |
Indicatore orario | Indicatore orario ES di ricezione della richiesta, ora locale in formato ISO 8601. | "2021-12-02T08:39:05Z" |
Log di esempio di Web Application Firewall
{
"datetime": 1638434349351,
"logContent": {
"data": {
"clientAddr": "192.168.0.33",
"countryCode": "ca",
"host": "192.168.0.103",
"listenerPort": "80",
"request": {
"httpVersion": "HTTP/1.1",
"id": "f8860949459e94181e650d4049615a01",
"method": "GET",
"path": "/console/css/%252e%252e%252fconsole.portal"
},
"requestProtection": {
"matchedData": "Matched Data: /%252e%252e%252f found within REQUEST_URI_RAW: /console/css/%252e%252e%252fconsole.portal;Matched Data: ../ found within REQUEST_URI: /console/css/../console.portal;Matched Data: ../ found within REQUEST_URI: /console/css/../console.portal",
"matchedIds": "9301000_v001;9301100_v001;9301100_v001;9300000_v001",
"matchedRules": "Recomended Rules"
},
"response": {
"code": "401",
"size": "139"
},
"responseProtection": {},
"responseProvider": "requestProtection/Recomended Rules",
"timestamp": "2021-12-02T08:39:05Z"
},
"id": "6ddc2351-d6a7-4a5e-b057-c04e50003f78-waf-388469",
"oracle": {
"compartmentid": "ocid1.compartment.oc1..<unique_ID>",
"ingestedtime": "2021-12-02T08:39:15.367Z",
"loggroupid": "ocid1.loggroup.oc1.iad.<unique_ID>",
"logid": "ocid1.log.oc1.iad.<unique_ID>",
"resourceid": "ocid1.webappfirewall.oc1.iad.<unique_ID>",
"tenantid": "ocid1.tenancy.oc1..<unique_ID>"
},
"source": "lb_shapetest2-400",
"specversion": "1.0",
"subject": "",
"time": "2021-12-02T08:39:09.351Z",
"type": "com.oraclecloud.loadbalancer.waf"
}
}