文档首页/ 企业主机安全 HSS/ API参考/ API说明/ 事件管理/ 查询攻击标识分布统计列表
更新时间:2025-08-29 GMT+08:00
分享

查询攻击标识分布统计列表

功能介绍

查询攻击标识分布统计列表

调用方法

请参见如何调用API

URI

GET /v5/{project_id}/event/attack-tag

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

项目ID,用于明确项目归属,配置后可通过该ID查询项目下资产。获取方式请参见获取项目ID

约束限制:

不涉及

取值范围:

字符长度1-256位。

默认取值:

不涉及

表2 Query参数

参数

是否必选

参数类型

描述

enterprise_project_id

String

参数解释:

企业项目ID,用于过滤不同企业项目下的资产。获取方式请参见获取企业项目ID

如需查询所有企业项目下的资产请传参“all_granted_eps”。

约束限制:

开通企业项目功能后才需要配置企业项目ID参数。

取值范围:

字符长度1-256位

默认取值:

0,表示默认企业项目(default)。

last_days

Integer

参数解释:

查询时间范围天数,与自定义查询时间begin_time,end_time互斥。

约束限制:

不涉及

取值范围:

最小值1,最大值30

默认取值:

不涉及

category

String

参数解释:

事件类别

约束限制:

必填

取值范围:

  • host : 主机安全事件

  • container : 容器安全事件

  • serverless : serverless场景安全事件

默认取值:

不涉及

host_name

String

参数解释

服务器名称

约束限制

不涉及

取值范围

字符长度1-256位

默认取值

不涉及

host_id

String

参数解释

服务器ID

约束限制

不涉及

取值范围

字符长度1-256位

默认取值

不涉及

private_ip

String

参数解释

服务器私有IP

约束限制

不涉及

取值范围

字符长度1-128位

默认取值

不涉及

public_ip

String

参数解释

服务器公网IP

约束限制

不涉及

取值范围

字符长度1-128位

默认取值

不涉及

container_name

String

参数解释

容器实例名称

约束限制

不涉及

取值范围

字符长度1-512位

默认取值

不涉及

event_type

Integer

参数解释:

事件类型

约束限制:

不涉及

取值范围:

  • 1001:通用恶意软件

  • 1002:病毒

  • 1003:蠕虫

  • 1004:木马

  • 1005:僵尸网络

  • 1006:后门

  • 1010:Rootkit

  • 1011:勒索软件

  • 1012:黑客工具

  • 1015:Webshell

  • 1016:挖矿

  • 1017:反弹Shell

  • 2001:一般漏洞利用

  • 2012:远程代码执行

  • 2047:Redis漏洞利用

  • 2048:Hadoop漏洞利用

  • 2049:MySQL漏洞利用

  • 3002:文件提权

  • 3003:进程提权

  • 3004:关键文件变更

  • 3005:文件/目录变更

  • 3007:进程异常行为

  • 3015:高危命令执行

  • 3018:异常Shell

  • 3026:crontab提权

  • 3027:Crontab可疑任务

  • 3029:系统安全防护被禁用

  • 3030:备份删除

  • 3031:异常注册表操作

  • 3036:容器镜像阻断

  • 4002:暴力破解

  • 4004:异常登录

  • 4006:非法系统账号

  • 4014:用户账号添加

  • 4020:用户密码窃取

  • 6002:端口扫描

  • 6003:主机扫描

  • 13001:Kubernetes事件删除

  • 13002:Pod异常行为

  • 13003:枚举用户信息

  • 13004:绑定集群用户角色

默认取值:

不涉及

handle_status

String

参数解释

处置状态

约束限制:

不涉及

取值范围:

  • unhandled:未处理

  • handled:已处理

默认取值:

不涉及

severity

String

参数解释

威胁等级

约束限制:

不涉及

取值范围:

  • Security:安全

  • Low:低危

  • Medium:中危

  • High:高危

  • Critical:危急

默认取值:

不涉及

severity_list

Array of strings

参数解释

威胁等级

约束限制:

不涉及

取值范围:

  • Security:安全

  • Low:低危

  • Medium:中危

  • High:高危

  • Critical:危急

默认取值:

不涉及

attack_tag

String

参数解释

攻击标识

约束限制:

不涉及

取值范围:

  • attack_success:攻击成功

  • attack_attempt:攻击尝试

  • attack_blocked:攻击被阻断

  • abnormal_behavior:异常行为

  • collapsible_host:主机失陷

  • system_vulnerability:系统脆弱性

默认取值:

不涉及

asset_value

String

参数解释

资产重要性

约束限制:

不涉及

取值范围:

  • important:重要资产

  • common:一般资产

  • test:测试资产

默认取值:

不涉及

tag_list

Array of strings

事件标签列表,例如:["热点事件"]

att_ck

String

参数解释

ATT&CK攻击阶段

约束限制:

不涉及

取值范围:

  • Reconnaissance:侦察

  • Initial Access:初始访问

  • Execution:执行

  • Persistence:持久化

  • Privilege Escalation:权限提升

  • Defense Evasion:防御绕过

  • Credential Access:凭据访问

  • Command and Control:命令与控制

  • Impact:影响破坏

默认取值:

不涉及

event_name

String

参数解释

告警名称

约束限制

不涉及

取值范围

字符长度1-128位

默认取值

不涉及

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

用户Token,包含了用户的身份、权限等信息,在调用API接口时,可通过Token进行身份认证。获取方式请参见获取用户Token

约束限制:

不涉及

取值范围:

字符长度1-32768位

默认取值:

不涉及

region

String

参数解释:

区域ID,用于查询目的区域内的资产。获取方式请参见获取区域ID

约束限制:

不涉及

取值范围:

字符长度0-128位

默认取值:

不涉及

响应参数

状态码:200

表4 响应Body参数

参数

参数类型

描述

attack_success_num

Integer

参数解释:

攻击成功阶段的数量

取值范围:

最小值0,最大值2147483647

attack_attempt_num

Integer

参数解释:

攻击尝试阶段的数量

取值范围:

最小值0,最大值2147483647

attack_blocked_num

Integer

参数解释:

攻击被阻断阶段的数量

取值范围:

最小值0,最大值2147483647

abnormal_behavior_num

Integer

参数解释:

异常行为阶段的数量

取值范围:

最小值0,最大值2147483647

collapsible_host_num

Integer

参数解释:

主机失陷阶段的数量

取值范围:

最小值0,最大值2147483647

system_vulnerability_num

Integer

参数解释:

系统脆弱性阶段的数量

取值范围:

最小值0,最大值2147483647

请求示例

响应示例

状态码:200

请求已成功

{
  "attack_success_num" : 10,
  "attack_attempt_num" : 10,
  "attack_blocked_num" : 10,
  "abnormal_behavior_num" : 10,
  "collapsible_host_num" : 10,
  "system_vulnerability_num" : 10
}

SDK代码示例

SDK代码示例如下。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.hss.v5.region.HssRegion;
import com.huaweicloud.sdk.hss.v5.*;
import com.huaweicloud.sdk.hss.v5.model.*;


public class ShowEventAttackTagSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");
        String projectId = "{project_id}";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        HssClient client = HssClient.newBuilder()
                .withCredential(auth)
                .withRegion(HssRegion.valueOf("<YOUR REGION>"))
                .build();
        ShowEventAttackTagRequest request = new ShowEventAttackTagRequest();
        try {
            ShowEventAttackTagResponse response = client.showEventAttackTag(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkhss.v5.region.hss_region import HssRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkhss.v5 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]
    projectId = "{project_id}"

    credentials = BasicCredentials(ak, sk, projectId)

    client = HssClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(HssRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ShowEventAttackTagRequest()
        response = client.show_event_attack_tag(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    hss "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/hss/v5/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")
    projectId := "{project_id}"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := hss.NewHssClient(
        hss.HssClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ShowEventAttackTagRequest{}
	response, err := client.ShowEventAttackTag(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

请求已成功

错误码

请参见错误码

相关文档