Lista os campos proprietários nos logs do Web Application Firewall (WAF), incluindo campos obrigatórios, campos opcionais e ações de proteção.
Referência de campos
A tabela a seguir lista os campos de log do WAF. Pesquise pelo nome do campo.
Inicial | Campo |
a |
|
b |
|
c |
|
d |
|
f | Ação final de proteção em uma requisição: final_action | final_plugin | final_rule_id | final_rule_type |
h |
|
j |
|
m |
|
n | Regras não terminais correspondentes: non_terminating_rules |
p | Indica o status de uso do Proxy Protocol em formato de bitmap: pp_state |
q | String de consulta da requisição: querystring |
r |
|
s |
|
t |
|
u |
|
w |
|
Campos obrigatórios
Os campos obrigatórios são sempre incluídos nos logs do WAF.
Parâmetro | Descrição | Exemplo |
bypass_matched_ids | O ID de uma regra do WAF que permite uma requisição, incluindo regras de lista de permissões e regras personalizadas com a ação Allow. Se uma requisição corresponder a várias regras de permissão, este campo registrará todos os seus IDs, separados por vírgulas (,). | 283531 |
content_type | O tipo de conteúdo da requisição. | application/x-www-form-urlencoded |
dst_port | A porta de destino da requisição. | 443 |
final_action | A ação final que o WAF executa em uma requisição. Valores válidos:
As ações válidas estão listadas em Description of *_action fields. Omitido se a requisição não acionar nenhum módulo de proteção, por exemplo, quando corresponde a uma regra de permissão ou o cliente passa em um desafio. Se uma requisição acionar vários módulos de proteção, este campo registrará apenas a ação com a maior prioridade. As ações são priorizadas na seguinte ordem decrescente: block > captcha_strict > captcha > js. | block |
final_plugin | O módulo de proteção correspondente ao
Omitido se a requisição não acionar nenhum módulo de proteção, por exemplo, quando corresponde a uma regra de permissão ou o cliente passa em um desafio. Se uma requisição acionar vários módulos de proteção, este campo registrará apenas o módulo que corresponde ao final_action. | waf |
final_rule_id | O ID da regra de proteção correspondente ao final_action. | 115341 |
final_rule_type | O subtipo da regra identificada por final_rule_id. Por exemplo, uma regra com | xss/webShell |
host | O valor do cabeçalho | api.example.com |
http_cookie | O valor do cabeçalho | k1=v1;k2=v2 |
http_referer | O valor do cabeçalho Exibe um hífen ( | http://example.com |
http_user_agent | O valor do cabeçalho | Dalvik/2.1.0 (Linux; U; Android 10; Android SDK built for x86 Build/QSR1.200715.002) |
http_x_forwarded_for | O valor do cabeçalho | 47.100.XX.XX |
https | Indica se a requisição é uma requisição HTTPS.
| on |
http_tracestate | Este campo é registrado após a ativação do rastreamento distribuído. Ele transmite o valor tracestate do cabeçalho da requisição upstream. Se o cabeçalho da requisição upstream não contiver este campo, ele não será registrado no log ou o valor será exibido como um hífen (-). | - |
matched_host | O objeto protegido, como uma instância de service em cloud ou um nome de domínio, ao qual a requisição do cliente correspondeu. Nota Como o WAF aceita nomes de domínio curinga para objetos protegidos, uma requisição de cliente pode corresponder a um nome de domínio curinga. Por exemplo, se você adicionar | *.aliyundoc.com |
request_uri | O caminho e os parâmetros da requisição. | /news/search.php?id=1 |
real_client_ip | O WAF analisa as requisições do cliente para identificar o endereço IP source. Você pode usar esse endereço IP diretamente em seus service. O WAF detecta o endereço IP source com base na configuração Is a Layer 7 proxy such as Anti-DDoS Proxy or CDN deployed in front of WAF: no console do WAF. O processo de detecção funciona da seguinte forma:
| 192.0.XX.XX |
region | O ID da região da instância do WAF. Valores válidos:
| cn |
src_port | A porta do cliente ou proxy que se conecta diretamente ao WAF. Se o cliente se conectar diretamente ao WAF, este campo indicará a porta do cliente. Se outro proxy de camada 7, como uma CDN, estiver implantado na frente do WAF, este campo indicará a porta do proxy. | 80 |
src_ip | O endereço IP do cliente ou proxy que se conecta diretamente ao WAF. Se o cliente se conectar diretamente ao WAF, este campo indicará o endereço IP do cliente. Se outro proxy de camada 7, como uma CDN, estiver implantado na frente do WAF, este campo indicará o endereço IP do proxy. | 198.51.XX.XX |
start_time | Um carimbo de data/hora Unix (em segundos) indicando quando o cliente iniciou a requisição. | 1696534058 |
request_length | O tamanho da requisição (em bytes), incluindo a linha de requisição, cabeçalhos e corpo. | 111111 |
request_method | O método da requisição. | GET |
request_time_msec | O tempo (em milissegundos) que o WAF leva para processar a requisição. | 44 |
request_traceid | O ID exclusivo que o WAF gera para a requisição. | 7837b11715410386943437009ea1f0 |
request_traceid_origin | O ID original da requisição. | 7ce319151*18890e |
remote_region_id | O ID da região geográfica à qual o endereço IP pertence. | 410000 |
server_protocol | O protocolo usado entre o cliente e o WAF. Importante Este campo não é compatível com objetos protegidos que são service do Function Compute (FC). | HTTP/1.1 |
ssl_cipher | O conjunto de cifras usado pela requisição do cliente. | ECDHE-RSA-AES128-GCM-SHA256 |
ssl_protocol | O protocolo e a versão SSL/TLS usados pela requisição do cliente. | TLSv1.2 |
status | O código de status HTTP que o WAF retorna ao cliente. Por exemplo, 200 indica que a requisição foi bem-sucedida. | 200 |
time | A hora em que o cliente iniciou a requisição. A hora está em UTC e é formatada de acordo com o padrão ISO 8601 no formato | 2018-05-02T16:03:59+08:00 |
upstream_addr | O endereço IP e a porta do servidor source. O formato é Importante Este campo não é compatível com objetos protegidos que são service do Function Compute (FC). | 198.51.XX.XX:443 |
upstream_response_time | O tempo (em segundos) que o servidor source leva para responder a uma requisição de retorno à source do WAF. | 0,044 |
upstream_status | O código de status HTTP retornado pelo servidor source para uma requisição de retorno à source do WAF. Por exemplo, 200 indica que a requisição foi bem-sucedida. | 200 |
user_id | O ID da conta Alibaba Cloud à qual a instância do WAF pertence. | 17045741**** |
w3c_parentid | Este campo é registrado após a ativação do rastreamento distribuído. Ele registra o trace-id do cabeçalho traceparent na requisição upstream. Se o cabeçalho da requisição upstream não contiver traceparent, o campo não será registrado no log ou o valor será exibido como um hífen (-). | - |
w3c_traceparent | Este campo é registrado após a ativação do rastreamento distribuído. Ele contém o conteúdo do campo traceparent gerado e emitido pelo WAF. Se o rastreamento distribuído não estiver ativado, o campo não será registrado no log ou o valor será exibido como um hífen (-). | 00-b374571ac7222dbf18995e52-c6064c-00 |
Campos opcionais
O WAF registra campos opcionais somente após você ativá-los.
Ativar campos opcionais aumenta o uso de armazenamento. Ative mais campos para uma análise detalhada se o armazenamento permitir.
Parâmetro | Descrição | Exemplo |
account | As informações da conta extraídas. Para usar este campo, você deve primeiro configure protected objects and protected object groups. | user1 |
acl_action | A ação de proteção executada quando uma requisição corresponde a uma lista de bloqueios de endereços IP ou a uma regra de controle de acesso. Valores válidos:
As ações válidas estão listadas em Descriptions of *_action fields. | block |
acl_rule_id | O ID da regra correspondente. A regra pode ser uma lista de bloqueios de endereços IP, controle de acesso, lista de bloqueios de região, inteligência de ameaças, proteção básica contra bots ou regra de proteção de aplicativo de gerenciamento de bots. | 151235 |
acl_rule_type | O tipo da lista de bloqueios de endereços IP ou regra de controle de acesso correspondente. Valores válidos:
| custom |
acl_test | O modo de proteção da lista de bloqueios de endereços IP ou regra de controle de acesso correspondente. Valores válidos:
Nota Quando você defina | false |
antiscan_action | A ação executada por uma regra de proteção contra varredura. O único valor válido é block. As ações válidas estão listadas em Descriptions of *_action fields. | block |
antiscan_rule_id | O ID da regra de proteção contra varredura correspondente. | 151235 |
antiscan_rule_type | O tipo da regra de proteção contra varredura correspondente. Valores válidos:
| highfreq |
antiscan_test | O modo de proteção da regra de proteção contra varredura correspondente. Valores válidos:
| false |
body_bytes_sent | O tamanho do corpo da resposta, em bytes. Este tamanho exclui o cabeçalho da resposta. Importante Este campo não é compatível com objetos protegidos que são service do Function Compute (FC). | 1111 |
cc_action | A ação executada por uma regra de ou limitação de taxa. Valores válidos:
As ações válidas estão listadas em Descriptions of *_action fields. | block |
cc_rule_id | O ID da regra de ou limitação de taxa correspondente. | 151234 |
cc_rule_type | O tipo da regra de ou limitação de taxa correspondente. Valores válidos:
| custom |
cc_test | O modo de proteção da regra de ou limitação de taxa correspondente. Valores válidos:
| false |
request_body | O corpo da requisição. Um máximo de 8 KB do corpo da requisição é registrado. | test123curl -ki https://automated-acltest02..top/ --resolve automated-acltest02..top:443:39.107.XX.XX |
request_headers_all | Todos os cabeçalhos na requisição. | { "Accept": "/", "Accept-Encoding": "gz, dete, **r", "Accept-Language": "zh-Hans-CN;q=1", "Connection": "keep-***ve", "Content-Length": "1**6", "Content-Type": "application/json", "Cookie": "cookie_key=; acw_tc=0abcopqrstuvwxyz07890;", "Host": "1.**.**.1", ... } |
request_header | Um cabeçalho de requisição personalizado. Após selecionar este campo, especifique os nomes dos cabeçalhos de requisição a serem registrados. Você pode adicionar até cinco cabeçalhos de requisição personalizados. Separe vários nomes de cabeçalho com vírgulas (,). Importante Este campo não é compatível com objetos protegidos que são service do Microservices Engine (MSE) ou Function Compute (FC). | {"ttt":"abcd"} |
server_port | A porta do WAF que recebe a requisição. Importante Este campo não é compatível com objetos protegidos que são service do Microservices Engine (MSE), Application Load Balancer (ALB) ou Function Compute (FC). | 443 |
waf_action | A ação executada por uma regra de proteção principal. O único valor válido é block. As ações válidas estão listadas em Descriptions of *_action fields. | block |
waf_rule_id | O ID da regra de proteção principal correspondente. Nota Encontre este ID na aba Core Protection Rule da página Security Reports em Security Reports. | 113406 |
waf_rule_type | O tipo da regra de proteção principal correspondente. Valores válidos:
| xss |
waf_test | O modo de proteção da regra de proteção principal correspondente. Valores válidos:
| false |
websdk_details | Quando a integração do Web SDK do Gerenciamento de Bots está ativada, certos campos de sonda coletados pelo Web SDK são registrados. Para mais informações, consulte Descriptions of websdk_details subfields. | |
major_protection_action | A ação executada por uma regra de proteção para grandes eventos. As ações válidas estão listadas em Descriptions of *_action fields. | block |
major_protection_rule_id | O ID da regra correspondente de um modelo de proteção para grandes eventos. | 2221 |
major_protection_rule_type | O tipo da regra correspondente de um modelo de proteção para grandes eventos. Valores válidos:
| waf_blocks |
major_protection_test | O modo de proteção da regra de proteção para grandes eventos correspondente. Valores válidos:
| true |
response_set_cookie | O cabeçalho Set-Cookie na resposta. Importante Este campo não é compatível com objetos protegidos que são service do Application Load Balancer (ALB), Microservices Engine (MSE) ou Function Compute (FC). | acw_tc=781bad3616674790875002820e2cebbc55b6e0dfd9579302762b1dece40e0a;path=\/;HttpOnly;Max-Age=1800 |
response_header | Todos os cabeçalhos na resposta. Importante Este campo não é compatível com objetos protegidos que são service do Application Load Balancer (ALB), Microservices Engine (MSE) ou Function Compute (FC). | {"transfer-encoding":"chunked","set-cookie":"acw_tc=***;path=\/;HttpOnly;Max-Age=1800","content-type":"text\/html;charset=utf-8","x-powered-by":"PHP\/7.2.24","server":"nginx\/1.18.0","connection":"close"} |
response_info | O corpo da resposta. Um máximo de 16 KB do corpo da resposta é registrado. Se o valor do cabeçalho content-encoding for gzip, o corpo da resposta será codificado em Base64. Importante Este campo não é compatível com objetos protegidos que são service do Application Load Balancer (ALB), Microservices Engine (MSE) ou Function Compute (FC). | $_POST received: <br/>Array ( [] => ) <hr/> $GLOBALS['HTTP_RAW_POST_DATA'] received: <br/> <hr/> php://input received: |
request_path | O caminho da requisição, que é a parte da URL após o nome de domínio e antes da string de consulta (?). | /news/search.php |
dlp_action | A ação de proteção executada por uma regra de prevenção contra vazamento de dados. Valores válidos:
As ações válidas estão listadas em Descriptions of *_action fields. | block |
dlp_rule_id | O ID da regra de prevenção contra vazamento de dados correspondente. | 20031483 |
dlp_test | O modo de proteção da regra de prevenção contra vazamento de dados correspondente. Valores válidos:
| true |
querystring | A string de consulta da requisição, que é a parte da URL que segue o ponto de interrogação ( | title=tm_content%3Darticle&pid=123 |
scene_action | A ação de proteção executada por uma regra específica de cenário de gerenciamento de bots. Valores válidos:
As ações válidas estão listadas em Descriptions of *_action fields. | js |
scene_id | O ID do cenário da regra específica de cenário de gerenciamento de bots correspondente. | a82d992b_bc8c_47f0_87ce_ |
scene_rule_id | O ID da regra específica de cenário de gerenciamento de bots e da regra de configuração de proteção básica correspondentes. | js-a82d992b_bc8c_47f0_87ce_ |
scene_rule_type | O tipo da regra específica de cenário de gerenciamento de bots correspondente. Valores válidos:
| bot_aialgo |
scene_test | O modo de proteção da regra específica de cenário de gerenciamento de bots correspondente. Valores válidos:
| true |
remote_addr | O endereço IP que se conecta diretamente ao WAF. Se um cliente se conectar diretamente ao WAF, este campo registrará o endereço IP do cliente. Se um proxy de camada 7, como uma CDN, estiver implantado na frente do WAF, este campo registrará o endereço IP do proxy. | 198.51.XX.XX |
remote_port | A porta que se conecta diretamente ao WAF. Se um cliente se conectar diretamente ao WAF, este campo registrará a porta do cliente. Se um proxy de camada 7, como uma CDN, estiver implantado na frente do WAF, este campo registrará a porta do proxy. | 80 |
waf_hit | A carga útil do ataque que correspondeu a uma regra de proteção básica. | {"postarg_values":{"hit":["${jndi:ldap://"],"raw":"postarg.log4j=${jndi:ldap://"}} |
compliance_hit | O conteúdo que correspondeu a uma regra de violação de protocolo. | 7df271da040a |
compliance_action | A ação executada por uma regra de violação de protocolo. O único valor válido é As ações válidas estão listadas em Descriptions of *_action fields. | block |
compliance_rule_id | O ID da regra de violação de protocolo correspondente. | 300033 |
compliance_rule_type | O tipo da regra de violação de protocolo correspondente. O único valor válido é protocol_violation. | protocol_violation |
compliance_test | O modo de proteção da regra de violação de protocolo correspondente. Valores válidos:
| false |
sema_hit | O conteúdo que correspondeu a uma regra de análise semântica. | {"queryarg_values":{"hit":["\" from mysql.user"],"raw":"queryarg.y=\" from mysql.user"}} |
sema_action | A ação executada por uma regra de análise semântica. O único valor válido é block. As ações válidas estão listadas em Descriptions of *_action fields. | block |
sema_rule_id | O ID da regra de análise semântica correspondente. | 810015 |
sema_rule_type | O tipo da regra de análise semântica correspondente. O único valor válido é sqli, que indica uma regra de injeção SQL. | sqli |
sema_test | O modo de proteção da regra de análise semântica correspondente. Valores válidos:
| false |
wxbb_info_tbl | Informações do dispositivo de uma requisição que correspondeu a uma regra de proteção de aplicativo para gerenciamento de bots. | { "abnormal_imei": "0", "abnormal_time": "1", * "appversion": "9.4.3", "brand": "Android", * } |
websdk_umid | O identificador exclusivo do dispositivo para um cliente web, identificado pelo gerenciamento de bots. | 6543211729a19aa0123456 |
appsdk_umid | O identificador exclusivo do dispositivo para um cliente de aplicativo, identificado pelo gerenciamento de bots. | 3c76912d48ec5eb1ea6cb775ce1ba609 |
client_id | O tipo de cliente identificado pelo gerenciamento de bots. | Python-urllib |
ja3_fingerprint | A impressão digital JA3 do tráfego, identificada pelo gerenciamento de bots. | 5c9e5897bbebcef37337bffb97587518 |
ja4_fingerprint | A impressão digital JA4 do tráfego, identificada pelo gerenciamento de bots. | b251a742b13fde5fba044eddfd05af34 |
http2_fingerprint | A impressão digital HTTP/2 do tráfego, identificada pelo gerenciamento de bots. | 52d84b11737d980aef856699f885ca86 |
non_terminating_rules | Informações sobre requisições que correspondem a regras com ações não terminais. Isso inclui requisições que correspondem a regras com a ação Log ou Origin Custom Header, e requisições que passam em desafios como JavaScript Validation, CAPTCHA, Strict CAPTCHA ou Dynamic Token. Estas correspondem a requisições onde o campo | [{"id":"12345678","action":"monitor","defense_scene":"waf_base"},{"id":"123123123","type":"suspicious_idc","action":"monitor","defense_scene":"bot_manager"}, {"id":"12341234","bypass_punish":"1","defense_scene":"custom_acl"}] Nota Neste exemplo, |
terminating_rules | Informações sobre requisições que correspondem a regras com ações terminais. Isso inclui requisições que correspondem à ação Block, e requisições que falham em desafios como JavaScript Validation, CAPTCHA, Strict CAPTCHA ou Dynamic Token. Estas correspondem a requisições onde o campo | [{"id":"123456","action":"block","defense_scene":"custom_acl"}] |
remote_country_id | O ID do país associado ao endereço IP. | CN |
pp_state |
Você pode usar uma operação bitwise AND (&) para verificar se um sinalizador específico está definido. | 6 (binary |
Anexo
O campo **_action*
O campo **_action* indica a ação de proteção para uma regra. Por exemplo, final_action especifica a ação final que o WAF executa, e waf_action especifica a ação para uma regra de proteção principal. As ações suportadas variam de acordo com o tipo de regra.
A tabela a seguir lista as ações de proteção suportadas pelo WAF.
|
Ação |
Descrição |
|
block |
Bloqueia a requisição web e retorna uma página de erro HTTP 405 ao cliente. |
|
captcha_strict |
Executa a verificação rigorosa de CAPTCHA de controle deslizante. O WAF apresenta uma página de CAPTCHA de controle deslizante ao cliente. O WAF permite a requisição apenas se o cliente concluir o CAPTCHA com sucesso. Caso contrário, a requisição é bloqueada. Neste modo, cada requisição do cliente requer verificação. |
|
captcha |
Executa a verificação comum de CAPTCHA de controle deslizante. O WAF apresenta uma página de CAPTCHA de controle deslizante ao cliente. Se o cliente concluir o CAPTCHA com sucesso, o WAF permitirá requisições subsequentes do cliente por um período (padrão: 30 minutos) sem reverificação. Caso contrário, a requisição é bloqueada. |
|
js |
Executa a validação JavaScript. O WAF emite um desafio JavaScript ao navegador do cliente. Se o navegador executar o código JavaScript com sucesso, o WAF permitirá requisições subsequentes do cliente por um período (padrão: 30 minutos) sem mais desafios. Caso contrário, a requisição é bloqueada. |
|
js_pass |
Indica que o cliente passou na validação JavaScript e o WAF permitiu a requisição. |
|
sigchl |
Executa a autenticação de token dinâmico. O WAF fornece um Web SDK para o cliente assinar as requisições de saída. Se uma requisição tiver uma assinatura válida, o WAF a encaminhará para o servidor source. Se a assinatura for inválida ou estiver ausente, o WAF desafiará o cliente a assinar novamente a requisição. |
Descrições dos subcampos de websdk_details
|
Nome do campo |
Tipo de dado |
Descrição |
Valor de exemplo |
|
language |
string |
O idioma da interface do navegador. |
zh-CN |
|
time_offset_minutes |
number |
A diferença de tempo em minutos entre o fuso horário atual e o UTC. |
-480 |
|
screen_width |
number |
A largura da tela em pixels. |
1920 |
|
screen_height |
number |
A altura da tela em pixels. |
1080 |
|
browser_viewport_width |
number |
A largura interna da viewport do navegador, excluindo a barra de ferramentas e a barra de rolagem. |
1165 |
|
browser_viewport_height |
number |
A altura interna da viewport do navegador. |
909 |
|
browser_window_offset_top |
number |
A distância em pixels da borda superior da janela do navegador até a parte superior da tela. |
960 |
|
browser_window_offset_left |
number |
A distância em pixels da borda esquerda da janela do navegador até a borda esquerda da tela. |
-10 |
|
platform_arch |
string |
A arquitetura da plataforma do navegador. |
Win32 |
|
cpu_core_count |
number |
O número de processadores lógicos disponíveis para executar threads. |
10 |
|
canvas_fingerprint |
string |
O valor de hash da impressão digital do canvas. |
51***39 |
|
mouse_move_count |
number |
O número de movimentos do mouse na página antes da requisição ser enviada. |
5 |
|
mouse_click_count |
number |
O número de cliques do mouse na página antes da requisição ser enviada. |
5 |
|
keyboard_input_count |
number |
O número de pressionamentos de tecla na página antes da requisição ser enviada. |
5 |
|
browser_vendor |
string |
Informações do fornecedor do navegador. |
Google Inc. |
|
collected_timestamp |
number |
O carimbo de data/hora local do navegador em milissegundos quando as informações foram coletadas. |
17***628 |
|
page_loaded_timestamp |
number |
O carimbo de data/hora local do navegador em milissegundos quando a página terminou de carregar. |
175***628 |