更新时间:2022-02-22 GMT+08:00

查询攻击事件日志

功能介绍

查询事件详情列表。

URI

  • URI格式

    GET /v1/{project_id}/waf/event?from={from}&to={to}&hosts={hostname}&attacks={attack}&sips={sip}&offset={offset}&limit={limit}

    样例如下:

    GET /v1/3ac26c59e15a4a11bb680a103a29ddb6/waf/event/attack/type?from=1543976973635&to=1563976973635&hosts=3211757cafa3437aae24d760022e79ba&hosts=93029844064b43739b51ca63036fbc4b&hosts=34fe5f5c60ef4e43a9975296765d1217

  • 参数说明
    表1 Path参数说明

    名称

    是否必选

    参数类型

    说明

    project_id

    String

    用户操作的项目ID。

    from

    Long

    开始时间UTC miliseconds。例如,from的值为“1548172800000”

    to

    Long

    结束时间UTC miliseconds。例如,to的值为“1548431999000”

    hosts

    Array

    防护域名的ID。

    attacks

    Array

    攻击类型列表。例如,attacks=sqli&attacks=xss。

    sips

    Array

    攻击源IP。例如,sips=X.X.12.23&sips=X.X.20.85。

    nsips

    Array

    排除的攻击源IP。例如,nsips=X.X.12.1&nsips=X.X.20.2。

    offset

    Long

    指定返回的页数,取值范围为:[0, 65535),默认值为0。

    limit

    Long

    指定查询返回每页记录的最大条数,取值范围为:(0, 50],默认值为10。

    marker

    String

    事件ID,取值为上一页数据的最后一条记录的ID。

请求消息

请求参数

响应消息

响应参数
表2 响应参数说明

名称

参数类型

说明

total

Integer

日志事件的总数量。

items

表3

攻击事件日志对象列表

表3 items

名称

参数类型

说明

id

String

攻击事件ID。

time

Integer

攻击事件时间(Milliseconds since Unix Epoch)。

policy_id

String

策略ID。

sip

String

攻击源的IP。

host

String

被攻击的域名。

host_id

String

域名ID。

url

String

攻击的URL链接,不包含域名。

attack

String

攻击类型。

  • cc代表CC攻击。
  • cmdi代表命令注入。
  • custom代表精准防护。
  • illegal代表非法请求。
  • sqli代表SQL注入。
  • lfi代表本地文件包含。
  • "robot"代表恶意爬虫。
  • antitamper”代表网页防篡改。
  • rfi代表远程文件包含。
  • vuln代表其他类型攻击。
  • xss代表xss攻击。
  • whiteblackip代表IP黑白名单。
  • webshell代表网站木马。

rule

String

命中的规则ID,由6位数字组成。

payload

String

命中的载荷。

action

String

防护动作。

  • “Block”:拦截。
  • “Log only”:仅记录不拦截。
  • “Allow”:放行。
  • “Verification code”:验证码验证。
  • “Filter”:过滤。
  • “Mismatch”:不匹配。

payload_location

String

攻击发生在请求报文的位置。取值范围为:body、url、params、header。

request_line

String

攻击请求的方法。

headers

Object

攻击请求头部。

cookie

String

cookie。

body

String

攻击请求的请求体。

示例

如下以查询攻击事件日志,返回记录条数为“2”为例。

响应样例
{
  "total": 2,
  "items": [
    {
      "id": "0000-0000-0000-13-56ef71f5745764348192f844658dd144",
      "time": 1499817600,
      "policy_id": "xxx",
      "sip": "X.X.1.1",
      "host": "a.com",
      "host_id": "123",
      "url": "/login",
      "attack": "sqli",
      "rule": "20001",
      "payload": "1 or 1=1",
      "action": "block",
      "payload_location": "params",
      "request_line": "GET / ",
      "headers": {
        "Connection": "keep-alive",
        "User-Agent": "curl"
      },
      "cookie": "sid=123; uid=456",
      "body": "user=admin&pass=abc123"
    },
   {
      "id": "0000-0000-0000-13-56ef71f5745764348192f844658dd144",
      "time": 1499817600,
      "host": "a.com",
      "host_id": "a",
      "policy_id": "xxx",
      "sip": "X.X.1.2",
      "url": "/login",
      "attack": "sqli",
      "rule": "20001",
      "payload": "1 or 1=1",
      "action": "log",
      "payload_location": "params",
      "request_line": "GET / ",
      "headers": {
        "Connection": "keep-alive",
        "User-Agent": "curl"
      },
      "cookie": "sid=123; uid=456",
      "body": "user=admin&pass=abc123"
    }
  ]
}

状态码

表4描述的是API返回的正常状态码。
表4 状态码

状态码

编码

状态说明

200

OK

客户端请求已处理成功。

异常状态码,请参见状态码