资产管理

在云分析中,资产根据域名来划分,每个域名代表一个资产,一个资产可能有多个应用和多个漏洞

获取全部资产

这个接口用来获取全部的资产,并提供一些过滤条件

POST /api/v1/assets/getall

{
   // 必选参数
   "instance_id": "xxx"

   // 以下参数可能为空

   // 第几页,默认1
   "page": 1,
   // 每页多少数据,最大 100,默认 20
   "size": 20,

   // 外网是否可访问: 1可访问, 0未扫描;默认 0
   "accessible": 1,
   // 指纹过滤
   "tag": "phpcms",
   // 域名过滤
   "domain": "www.baidu.com"
   // 资产风险级别,-1 不限制 0-2 对应低、中高危
   // 如果这个参数不是 -1,就显示级别等于或者高于这个级别的资产
   "level": -1
}

<-- 返回数据
{
  "status": 0,
  "description": "ok",
  // 一共多少页,从 1 开始计数
  "totalpage": 4,
  "data": [
    {
      // 域名
      "domain": "phpcms.baidu.com",
      // 风险列表
      "risks": {
        "high": 5,
        "mid": 2,
        "low": 3,
        "total": 10
      },
      // 标签
      "tags": [
        {
          "name": "phpcms/9.0",
          "type": "app"
        },
        {
          "name": "apache",
          "type": "server"
        }
      ],
      // 最后检测时间
      "timestamp": "2016-03-22 10:12:11"
    },
    ...
  ]
}

获取单个资产信息

POST /api/v1/assets/detail

{
   "domain": "xxx.baidu.com",
   "instance_id": "xxxx"
}

<-- 返回数据
{
  "status": 0,
  "description": "ok",
  "data": {
    "domain": "phpcms.baidu.com",
    "risks": {
      "high": 5,
      "mid": 2,
      "low": 3,
      "total": 10
    },
    "tags": [
      {
        "name": "phpcms/9.0",
        "type": "app",
        "version": "8.5",
        "version_number": 100200300400,
        "url": "http://phpcms.baidu.com/cms/",
        "level": 2
        "vuln": [
           {
               "cve": "2016-1112-2222",
               "descr": "PHP <= 5.4.3 多个远程代码执行漏洞",
               "level": 1
           },
           ...
        ]
      },
      {
        "name": "jenkins/1.3.11,
        "type": "app",
        "url": "http://phpcms.baidu.com/cms/",
        "level": -1,
        "vuln": []
      }
    ],
    "timestamp": "2016-03-22 10:12:11"
  }
}