威胁感知

获取全部威胁

POST /api/v1/trace/get

{  
   // 以下为必选

   // 起始、结束时间(毫秒)
   "start_time": 1362779820623,
   "end_time":   1462779820623,

   // 租户ID
   "instance_id": "xxxxx",

   // 以下可选

   // 过滤条件: 攻击来源IP & 攻击目标IP
   "source": "1.2.3.4",
   "target": "1.2.3.4",

   // 过滤条件: 成功写1,失败写0,不写返回全部类型
   "success": 1,
   // 分页,默认值为1
   "page": 1,
   // 每页多少数据,最大 100,默认 20
   "size": 20
}

<-- 返回数据
{
   "status": 0,
   "description": "ok",
   // 一共多少页,从 1 开始计数
   "totalpage": 4,
   "data": [
      {
         // 攻击来源
         "source": "1.2.3.4",
         // 攻击IP所在地
         "source_loc": "北京",
         // 攻击目标
         "target": ["2.2.2.2", "3.3.3.3", ...],
         // 攻击类型
         "category": [
             {
               "name":  "SQL 注入攻击",
               "level": 1
             },
             ...
         ],
         // 攻击次数
         "count": 0,
         // 攻击起始、结束时间
         "start_time": "2015-06-02T09:00:02.000Z",
         "end_time":   "2015-06-02T15:00:02.000Z",
         // 1 表示成功,0 表示失败
         "success":  1
      }
   ]
}

获取时间线数据

POST /api/v1/trace/timeline

{
   // 攻击来源、时间范围,这个使用 trace/getall 中返回的数据
   "source": "2.2.2.2",
   "start_time": 1362779820623,
   "end_time":   1462779820623,
   // 租户id
   "instance_id": "xxxxx",

   // 只返回成功的 alarms,默认值为 0
   "successonly": 1

   // 分页,默认值为1
   "page": 1,
   // 每页多少数据,最大 100,默认 20
   "size": 20
}

<-- 返回数据
{
   "status": 0,
   "description": "ok",
   "data": {
      "timeline": [
         {
            // 时间
            "time":  "2015-10-20 11:22:33",
            // 攻击路径
            "url": "/fckeditor",
            // 成功为 1,失败为 0
            "success": 0,
            // 攻击次数
            "count": 10,
            // 攻击目标
            "target": "1.2.2.2",
            // 攻击类型和id
            "category_id": 20031,
            "category": "SQL 注入",
            "level": 1,
         },
         ...
      ],
      // 攻击来源
      "country": "美国",
      "country_en": "us",
      // 攻击者UA
      "ua": [ "Mozilla/5.0" ],

      // 是否为 VPN、代理; 0 表示不是,1 表示是
      "is_vpn": 0,
      "is_proxy": 1
   }
}

获取攻击详情

这个接口使用 trace/timeline 相同的参数

POST /api/v1/trace/events

{
   "instance_id": "xxxx",
   "start_time":  1428235901000,
   "end_time":    1438345901000,
   "source":      "5.5.5.5",

   // 分页,默认值为1
   "page": 1,
   // 每页多少数据,最大 100,默认 20
   "size": 20

   // 可选,查询条件
   // 攻击类型
   "category_id": 20031,
   // 只看成功的写 1,不带这个参数或者其它值将被忽略
   "successonly": 1
}

<-- 返回数据
{
   "status": 0,
   "description": "ok",
   // 一共多少页
   "totalpage": 3,
   "data": {
      source: [
        {
          "source": "1.2.3.4",
          "@timestamp": "xxxx",
          "category": "SQL 注入",
          "method": "GET",
          "request_uri": "/.svn",
          "body": "a=1&b=2",
          "response": 200,
          "resbody": "<html>xxxx</html>"
        },
        ...
      ]
   ]
}