Consulta os logs detalhados do tráfego de ataque. Cada entrada de log contém os detalhes de uma solicitação que correspondeu a uma regra de proteção.
Descrição da operação
O tráfego de ataque refere-se a solicitações que acionam uma regra e são identificadas como ameaças. Os três tipos de solicitações a seguir não estão incluídos:
-
Solicitações que acionam uma regra de lista de permissões.
-
Solicitações que acionam uma regra de bot cuja ação está definida como Mark for Origin Fetch.
-
Solicitações que acionam uma regra cuja ação está definida como Dynamic Token, Slider, Strict Slider ou JS Challenge, mas são permitidas porque o usuário passou na verificação.
Experimente agora
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
yundun-waf:DescribeSecurityEventLogs |
get |
*All Resource
|
|
Nenhuma |
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| InstanceId |
string |
Sim |
O ID da instância do Web Application Firewall (WAF). Nota
Chame DescribeInstance para consultar o ID da instância do WAF. |
waf_cdnsdf3**** |
| Filter |
object |
Sim |
As condições de filtro. Existe uma relação lógica AND entre várias condições de filtro. |
|
| DateRange |
object |
Sim |
O intervalo de tempo a ser consultado. |
|
| StartDate |
integer |
Sim |
O início do intervalo de tempo a ser consultado. O intervalo de tempo não pode exceder os últimos 30 dias. O valor é um carimbo de data/hora UNIX. Unidade: segundos. Nota
A hora de início deve estar dentro dos últimos 30 dias a partir da hora atual. |
1713888000 |
| EndDate |
integer |
Sim |
O fim do intervalo de tempo a ser consultado. O valor é um carimbo de data/hora UNIX. Unidade: segundos. |
1713888600 |
| Conditions |
array<object> |
Não |
Uma lista de condições de filtro. Cada nó descreve uma condição de filtro. |
|
|
object |
Não |
A configuração de uma única condição de consulta. Uma condição de consulta consiste em um nome de campo, um operador e um valor de filtro. Para obter mais informações sobre os nomes de campo e operadores suportados, consulte a seção Informações adicionais sobre os parâmetros da solicitação. |
||
| Key |
string |
Não |
O nome do campo a ser filtrado. Esta operação suporta todos os campos. |
matched_host |
| OpValue |
string |
Não |
O operador. |
eq |
| Values |
any |
Não |
O valor do filtro. |
test.waf-top |
| PageSize |
integer |
Sim |
O número de entradas a serem retornadas em cada página para uma consulta paginada. O valor máximo é 100. |
10 |
| PageNumber |
integer |
Sim |
O número da página a ser retornado para uma consulta paginada. O valor padrão é 1, que indica a primeira página. |
1 |
| RegionId |
string |
Não |
A região da instância do WAF. Valores válidos:
|
cn-hangzhou |
| ResourceManagerResourceGroupId |
string |
Não |
O ID do grupo de recursos do Alibaba Cloud. |
rg-acfm***q |
Descrições dos operadores
| Operador | Significado | Descrição |
| all-not-match | Não igual a nenhum valor | O valor do campo não é igual a nenhum valor no conjunto de dados. Filtrar dados onde real_client_ip não é igual a nenhum valor na coleção:{"Key":"real_client_ip","OpValue":"all-not-match","Values":["1.1.1.1","2.2.2.2","3.3.3.3"]} |
| contain | Contém | O valor do campo contém uma string específica. Filtrar dados onde a URL contém "test":{"Key":"request_path","OpValue":"contain","Values":"test"} |
| eq | Igual a | O valor do campo é igual a uma string específica. Filtrar dados onde a URL é "/testcase":{"Key":"request_path","OpValue":"eq","Values":"/testcase"} |
| match-one | Igual a um de vários valores | O valor do campo é igual a qualquer valor no conjunto de dados. Filtrar dados onde real_client_ip é igual a qualquer valor na coleção:{"Key":"real_client_ip","OpValue":"match-one","Values":["1.1.1.1","2.2.2.2","3.3.3.3"]} |
| ne | Não igual a | O valor do campo não é igual a uma string específica. Filtrar dados onde a URL não é "/testcase":{"Key":"request_path","OpValue":"ne","Values":"/testcase"} |
| not-contain | Não contém | O valor do campo não contém uma string específica. Filtrar dados onde a URL não contém "test":{"Key":"request_path","OpValue":"not-contain","Values":"test"} |
| prefix-match | Correspondência de prefixo | O valor do campo começa com uma string específica. Filtrar dados onde o prefixo da URL é "/testcase":{"Key":"request_path","OpValue":"prefix-match","Values":"/testcase"} |
| suffix-match | Correspondência de sufixo | O valor do campo termina com uma string específica. Filtrar dados onde o sufixo da URL é "/testcase":{"Key":"request_path","OpValue":"suffix-match","Values":"/testcase"} |
Chaves suportadas para condições de filtro
| Nome do campo | Descrição | Operadores suportados |
| action | A ação de proteção. Esta é a ação final executada na solicitação. | ne, eq |
| cluster | O cluster de proteção. | ne, eq, match-one, all-not-match |
| defense_scene | O módulo de proteção. Uma solicitação pode acionar vários módulos de proteção. As solicitações filtradas por este campo também podem acionar outros módulos. | ne, eq |
| host | O campo host no cabeçalho HTTP. | contain, not-contain, ne, eq, match-one, all-not-match, prefix-match, suffix-match |
| http_cookie | O campo cookie no cabeçalho HTTP. | contain, not-contain, ne, eq, match-one, all-not-match, prefix-match, suffix-match |
| http_user_agent | O campo User-Agent no cabeçalho HTTP. | contain, not-contain, ne, eq, match-one, all-not-match, prefix-match, suffix-match |
| matched_host | O objeto protegido. | ne, eq, match-one, all-not-match |
| real_client_ip | O endereço IP de origem da solicitação. Apenas strings de endereço IP são suportadas como valores de filtro. Blocos CIDR não são suportados. | ne, eq, match-one, all-not-match |
| remote_country_id | O país ao qual o endereço IP de origem da solicitação HTTP pertence. | ne, eq, match-one, all-not-match |
| remote_region_id | A província ou cidade à qual o endereço IP de origem da solicitação HTTP pertence. | ne, eq, match-one, all-not-match |
| request_method | O método de solicitação HTTP. | ne, eq, match-one, all-not-match |
| request_path | A URL da solicitação HTTP, excluindo a string de consulta. | contain, not-contain, ne, eq, match-one, all-not-match, prefix-match, suffix-match |
| request_traceid | O ID exclusivo que identifica a solicitação. | ne, eq, match-one, all-not-match |
| rule_id | O ID da regra. Uma solicitação pode acionar várias regras. As solicitações filtradas por este campo também podem acionar outras regras. | ne, eq |
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
Os dados retornados. Para um exemplo do formato, consulte Exemplos. |
||
| RequestId |
string |
O ID da solicitação. |
D827FCFE-90A7-4330-9326-******4C7726 |
| SecurityEventLogs |
array |
Uma lista de logs de ataque detalhados. |
|
|
any |
Cada nó é um log de ataque que corresponde a uma solicitação. Para obter mais informações, consulte as seções Descrições dos campos de log e Exemplo de resposta. |
{ "remote_region_id": "11***0", "plugin_matched_detail_waf_group": "****", "plugin_matched_block_rule_detail": "****", "querystring": "-", "matched_host": "i-8vbaazr2tboqsq******-443-ecs", "remote_country_id": "CN", "remote_isp_id": "100**8", "request_method": "GET", "plugin_matched_test_rule_detail": "[]", "request_traceid": "0b6261221742197109309484******", "dst_port": "0", "host": "39.99.***.109", "real_client_ip": "47.92.***.14", "request_path": "/.git/HEAD", "server_protocol": "HTTP/1.1", "timestamp": "1742197109" } |
|
| SecurityEventMetaData |
object |
Os metadados dos dados retornados. |
|
| DateRange |
object |
O intervalo de tempo usado para a consulta. |
|
| StartDate |
integer |
The start of the time range used for the query. The value is a UNIX timestamp. Unit: seconds. This value is the same as the `StartDate` request parameter. |
1713888000 |
| EndDate |
integer |
The end of the time range used for the query. The value is a UNIX timestamp. Unit: seconds. This value is the same as the `EndDate` request parameter. |
1713888600 |
| Units |
string |
A unidade dos dados estatísticos retornados. |
requests |
| SecurityEventLogsTotalCount |
integer |
O número total de logs de ataque encontrados. |
1000 |
Descrições dos campos de log
| Nome do campo | Descrição | Valor de exemplo |
| dst_port | A porta de destino solicitada. | 443 |
| host | O campo Host no cabeçalho da solicitação do cliente. Este valor indica o nome de domínio ou endereço IP acessado. | api.example.com |
| matched_host | O objeto protegido pelo WAF (instância de produto em nuvem ou nome de domínio) que a solicitação do cliente correspondeu. | .aliyun**.com |
| plugin_matched_detail_waf_group | Os detalhes da regra de proteção básica que a solicitação correspondeu, incluindo o padrão de URI correspondido e o URI bruto da solicitação. | |
| plugin_matched_block_rule_detail | Os detalhes da regra de proteção no modo de bloqueio que a solicitação correspondeu, incluindo o ID da regra, a ação e o módulo de proteção. | |
| plugin_matched_test_rule_detail | Os detalhes da regra de proteção no modo de monitoramento que a solicitação correspondeu, incluindo o ID da regra, a ação e o módulo de proteção. | |
| querystring | A string de consulta da solicitação do cliente, que é a parte da URL após o ponto de interrogação (?). | title=tm_content%3Darticle&pid=123 |
| remote_region_id | O ID da província à qual o endereço IP pertence. | 410000 |
| remote_country_id | O ID do país ao qual o endereço IP de origem pertence. | CN |
| remote_isp_id | O ID do provedor de serviços de Internet (ISP) ao qual o endereço IP de origem pertence. | 100098 |
| request_method | O método de solicitação do cliente. | GET |
| request_traceid | O ID exclusivo que o WAF gera para a solicitação do cliente. | 7837b11715410386943437009***** |
| real_client_ip | O endereço IP real do cliente, conforme determinado pelo WAF a partir dos cabeçalhos da solicitação. | 192.0.XX.XX |
| request_path | O caminho da solicitação, que é a parte da URL após o nome de domínio e antes do ponto de interrogação (?). Este valor não inclui a string de consulta. | /news/search.php |
| server_protocol | O protocolo entre o cliente e o WAF. | HTTP/1.1 |
| timestamp | A hora em que a solicitação foi processada pelo mecanismo DPI. O valor é um carimbo de data/hora UNIX. Unidade: segundos. | 1742197109 |
Exemplo de resposta
{
"SecurityEventLogsTotalCount": 1,
"SecurityEventLogs": [
{
"remote_region_id": "110000",
"plugin_matched_detail_waf_group": "{\"uri\":{\"hit\":[\"/.git/\"],\"raw\":\"/.git/\"}}",
"plugin_matched_block_rule_detail": "[{\"RuleId\":\"12***5\",\"Action\":\"block\",\"DefenseScene\":\"waf_base\",\"RuleType\":\"other\"}]",
"querystring": "-",
"matched_host": "i-8vbaazr2tboqsq******-443-ecs",
"remote_country_id": "CN",
"remote_isp_id": "100098",
"request_method": "GET",
"plugin_matched_test_rule_detail": "[]",
"request_traceid": "0b6261221742197109309484******",
"dst_port": "0",
"host": "39.99.***.109",
"real_client_ip": "47.92.***.14",
"request_path": "/.git/HEAD",
"server_protocol": "HTTP/1.1",
"timestamp": "1742197109"
}
],
"SecurityEventMetaData": {
"DateRange": {
"StartDate": 1742196600,
"EndDate": 1742197500
}
}
}
Exemplos
Resposta de sucesso
JSON formato
{
"RequestId": "D827FCFE-90A7-4330-9326-******4C7726\n",
"SecurityEventLogs": [
"{\n\t\"remote_region_id\": \"11***0\",\n\t\"plugin_matched_detail_waf_group\": \"****\",\n\t\"plugin_matched_block_rule_detail\": \"****\",\n\t\"querystring\": \"-\",\n\t\"matched_host\": \"i-8vbaazr2tboqsq******-443-ecs\",\n\t\"remote_country_id\": \"CN\",\n\t\"remote_isp_id\": \"100**8\",\n\t\"request_method\": \"GET\",\n\t\"plugin_matched_test_rule_detail\": \"[]\",\n\t\"request_traceid\": \"0b6261221742197109309484******\",\n\t\"dst_port\": \"0\",\n\t\"host\": \"39.99.***.109\",\n\t\"real_client_ip\": \"47.92.***.14\",\n\t\"request_path\": \"/.git/HEAD\",\n\t\"server_protocol\": \"HTTP/1.1\",\n\t\"timestamp\": \"1742197109\"\n}"
],
"SecurityEventMetaData": {
"DateRange": {
"StartDate": 1713888000,
"EndDate": 1713888600
},
"Units": "requests"
},
"SecurityEventLogsTotalCount": 1000
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|---|---|---|---|
| 400 | Waf.Report.%s | Invalid parameter:%s. | Invalid parameter:%s |
| 400 | Waf.Report.InternalError | Server error occurred in report service. | Report Service Internal Error |
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.