云服务器内容精选

  • API概览 通过使用漏洞管理服务提供的接口,您可以完整的使用漏洞管理服务的所有功能。 类型 说明 网站域名管理 网站域名相关接口,包含创建域名、获取域名、删除域名,以及更新或获取域名配置。 网站任务管理 网站任务相关接口,包含创建扫描任务并启动、获取扫描任务详情、取消或重启扫描任务和获取域名的历史扫描任务。 网站报告管理 网站报告相关接口,包含获取扫描结果、业务风险扫描结果,以及更新漏洞的误报状态。 主机管理 主机相关接口,包含创建主机,获取主机,删除主机。 主机任务管理 主机任务相关接口,包含启动或停止扫描任务。 主机报告管理 主机报告相关接口,包含主机扫描结果获取。 主机组管理 主机组相关接口,包含主机组创建,获取,删除。
  • AK/SK认证 AK/SK签名认证方式仅支持消息体大小12MB以内,12MB以上的请求请使用Token认证。 AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。 AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。 SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
  • Token认证 Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。 Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限。 Token可通过调用获取用户Token接口获取,调用本服务API需要project级别的Token,即调用获取用户Token接口时,请求body中auth.scope的取值需要选择project,如下所示。 { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxx" } } } } 获取Token后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。 Content-Type: application/json X-Auth-Token: ABCDEFJ....
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目信息API获取。 项目ID可以通过调用IAM服务的“查询指定条件下的项目信息”API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从管理员处地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "xxxxxxxx", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" } }
  • 从控制台获取项目ID 在调用接口的时候,部分URL中需要填入项目编号,所以需要获取到项目编号。项目编号获取步骤如下: 登录管理控制台。 单击用户名,在下拉列表中单击“基本信息”。 在基本信息页面单击“管理我的凭证”。 在“API凭证”“我的凭证”页面的项目列表中查看项目ID。 单击用户名,在下拉列表中单击“我的凭证”“My Credential”。 在“我的凭证”“My Credential”页面的项目列表中查看项目ID。 图1 查看项目ID 图2 查看项目ID 图3 查看项目ID 图4 查看项目ID
  • 响应示例 状态码: 200 OK { "total" : 1, "data" : [ { "risk_id" : "fff18e42a6deeffb83f9e37f741e687ed2a3dd1a", "risk_url" : "https://127.0.0.1:8080/links/index.php1", "risk_type" : "dead_link", "risk_content" : "http://evilllllllllll.com/code.txt700", "risk_status" : "repairing", "find_time" : "2021-09-18 16:26:24" } ] }
  • URI GET /v3/{project_id}/webscan/results/business-risk 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 用户的project_id,获取方法请参见获取项目ID。 最小长度:32 最大长度:32 表2 Query参数 参数 是否必选 参数类型 描述 task_id 是 String 任务ID 最小长度:32 最大长度:50 offset 否 Integer 分页查询,偏移量,表示从此偏移量开始查询 最小值:0 最大值:10000 缺省值:0 limit 否 Integer 分页查询,每页显示的条目数量 最小值:1 最大值:10000 缺省值:5
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total Integer 业务风险总数 最小值:0 最大值:100000 data Array of BusinessRiskItem objects 业务风险列表 数组长度:0 - 100000 表5 BusinessRiskItem 参数 参数类型 描述 risk_id String 业务风险ID 最小长度:40 最大长度:40 risk_url String 有风险的URL 最小长度:1 最大长度:256 risk_type String 业务风险类型: text - 不合规文字 image - 不合规图片 dead_link - 不合规链接(死链) dark_link - 不合规链接(暗链) business_risk - 业务风险 枚举值: text image dead_link dark_link business_risk find_time String 业务风险发现时间 最小长度:0 最大长度:19 risk_content String 业务风险内容 最小长度:0 最大长度:100000 risk_status String 漏洞状态: repairing - 未修复 repaired - 已修复 false_report - 误报,已忽略 枚举值: repairing repaired false_report 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 418 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256
  • URI GET /v3/{project_id}/hostscan/groups 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String project_id 最小长度:32 最大长度:32 表2 Query参数 参数 是否必选 参数类型 描述 offset 否 Integer 分页查询,偏移量,表示从此偏移量开始查询 最小值:0 最大值:200 缺省值:0 limit 否 Integer 分页查询,每页显示的条目数量 最小值:1 最大值:100 缺省值:5
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total Integer 群组总数 最小值:0 最大值:1000 items Array of Group objects 群组列表 数组长度:0 - 1000 表5 Group 参数 参数类型 描述 id String 群组ID 最小长度:1 最大长度:64 name String 群组名称 最小长度:1 最大长度:24 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 418 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256
  • 响应示例 状态码: 200 OK { "task_id" : "017281b97c9845b08174895992ba179643028", "task_name" : "测试任务1", "url" : "https://127.0.0.1:8080", "task_type" : "normal", "domain_name" : "127.0.0.1:8080", "task_settings" : { "task_config" : { "scan_mode" : "normal", "port_scan" : false, "weak_pwd_scan" : false, "cve_check" : false, "text_check" : false, "picture_check" : false, "malicious_code" : false, "malicious_link" : false } }, "create_time" : "2021-09-18 16:26:24", "start_time" : "2021-09-18 16:26:24", "end_time" : "2021-09-18 17:00:00", "task_status" : "success", "progress" : 100, "reason" : "Successful. Your website is very safe!", "pack_num" : 5, "score" : 100, "safe_level" : "safety", "statistics" : { "high" : 0, "middle" : 0, "low" : 0, "hint" : 0 } }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 task_name String 任务名称 最小长度:1 最大长度:16 url String 待扫描的目标网址 最小长度:1 最大长度:256 task_type String 扫描任务类型: normal - 普通任务 monitor - 监测任务 缺省值:normal 枚举值: normal monitor task_id String 任务ID 最小长度:32 最大长度:50 domain_name String 网站域名 最小长度:1 最大长度:256 task_settings TaskSettings object 扫描任务设置 create_time String 创建任务的时间 最小长度:0 最大长度:19 start_time String 任务启动的时间 最小长度:0 最大长度:19 end_time String 任务结束的时间 最小长度:0 最大长度:19 task_status String 任务状态: running - 正在运行 success - 成功 canceled - 已取消 waiting - 正在等待 ready - 已就绪,排队中 failure - 失败 枚举值: running success canceled waiting ready failure schedule_status String 监测任务状态: running - 正在运行 waiting - 正在等待 finished - 已完成 枚举值: running waiting finished progress Integer 任务进度 最小值:0 最大值:100 reason String 任务状态描述 最小长度:0 最大长度:128 pack_num Long 包总数 最小值:0 最大值:100000 score Integer 安全分数 最小值:0 最大值:100 safe_level String 安全等级: safety - 安全 average - 中风险 highrisk - 高风险 枚举值: safety average highrisk statistics VulnsLevel object 漏洞风险等级统计 表5 TaskSettings 参数 参数类型 描述 timer String 普通任务的定时启动时间 最小长度:0 最大长度:19 trigger_time String 监测任务的定时触发时间 最小长度:0 最大长度:19 task_period String 监测任务的定时触发周期: everyday - 每日 threedays - 每三天 everyweek - 每星期 everymonth - 每月 枚举值: everyday threedays everyweek everymonth task_config task_config object 扫描任务配置 表6 task_config 参数 参数类型 描述 scan_mode String 扫描模式: fast - 快速扫描 normal - 标准扫描 deep - 深度扫描 缺省值:normal 枚举值: fast normal deep port_scan Boolean 是否进行端口扫描 缺省值:true weak_pwd_scan Boolean 是否进行弱密码扫描 缺省值:true cve_check Boolean 是否进行CVE漏洞扫描 缺省值:true text_check Boolean 是否进行网站内容合规文字检测 缺省值:true picture_check Boolean 是否进行网站内容合规图片检测 缺省值:false malicious_code Boolean 是否进行网站挂马检测 缺省值:false malicious_link Boolean 是否进行链接健康检测(死链、暗链、恶意外链) 缺省值:false 表7 VulnsLevel 参数 参数类型 描述 high Integer 高危漏洞数 最小值:0 最大值:1000 middle Integer 中危漏洞数 最小值:0 最大值:1000 low Integer 低危漏洞数 最小值:0 最大值:1000 hint Integer 提示危漏洞数 最小值:0 最大值:1000 状态码: 400 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 401 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 418 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256
  • 响应参数 状态码: 400 表3 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 401 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 418 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 info_code String 状态码: success - 成功 failure - 失败 枚举值: success failure info_description String 返回的提示信息 最小长度:0 最大长度:64 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 418 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total Integer 端口总数 最小值:0 最大值:100000 data Array of PortItem objects 端口信息列表 数组长度:0 - 100000 表5 PortItem 参数 参数类型 描述 port Integer 端口号 最小值:0 最大值:65535 service String 服务 最小长度:0 最大长度:1000 protocol String 端口协议: TCP UDP 枚举值: TCP UDP status String 端口状态: filtered - 过滤的 open - 开放 枚举值: filtered open 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 418 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256