Skip to content

Daily Study

更新: 9/2/2025 字数: 0 字 时长: 0 分钟

Daily Plan

#todo

  • [ ]

MCP的设计

出入参的设计

1. IP地址分析MCP (IpAnalysisMcp)

目的:接收一个IP地址和相关上下文,返回该IP的全面画像,包括地理、历史行为、外部信誉和威胁情报。

输入 (Request)

JSON
{
  "ip_address": "1.2.3.4",
  "context": {
    "uin": , // 告警所属的主账号ID
    "access_key_id": , // 产生告警的AK ID
    "alert_timestamp":  // 告警发生的时间
  }
}

输出 (Response)

JSON
{
  "ip_address": "1.2.3.4",
  "geo_info": {
    "country": "中国",
    "province": "",
    "city": "",
    "isp": "电信",
    "location": 
  },
  "ip_type": "TENCENT_CLOUD", // 枚举: TENCENT_CLOUD, PUBLIC_IDC, MOBILE, CORPORATE, OTHER_CLOUD, UNKNOWN
  "historical_behavior": {
    "is_first_seen_for_account": true, // 此账号是否首次出现该IP
    "is_first_seen_for_ak": true, // 此AK是否首次使用该IP
    "historical_associated_aks": [10022, 14922], // 历史上该IP还使用过哪些其他AK ID
    "historical_regions": ["中国-广东省-广州市"] // 历史上该IP出现过的地区
  },
  "external_enrichment": {
    "reverse_dns": "host.example.com", // DNS反向解析结果
    "ssl_cert_info": { // 关联的证书信息
      "common_name": "*.example.com",
      "organization": "Example Corp"
    },
    "is_corporate_line_suspected": false // 是否疑似企业专线
  },
  "threat_intel": {
    "is_in_blacklist": false, // 是否命中黑名单
    "threat_category": "None" // 威胁类型, 如: Scanner, C2, None
  },
  "summary": {
    "location_risk": "High", // 位置风险: High (异地/国外), Medium (同城不同ISP), Low (常用地)
    "behavior_risk": "High", // 行为风险: High (首次出现), Medium (低频出现), Low (高频)
    "overall_conclusion": "该IP为深圳电信IP,但对于此账号和AK均为首次出现,存在异地登录风险。" // LLM可读的简短总结
  }
}

2. 告警规则分析MCP (AlertRuleAnalysisMcp)

目的:解析告警规则本身,提供其内在的确定性、攻击意图和分析优先级。

输入 (Request)

JSON
{
  "alert_name": "非控制台方式调用高危接口",
  "alert_level": 4 // 告警等级
}

输出 (Response)

JSON
{
  "alert_name": "非控制台方式调用高危接口",
  "certainty_level": "Medium", // 确定性: High (如AK泄露), Medium (如异常行为), Low (如配置风险)
  "description": "检测到Access Key通过API/SDK等非腾讯云控制台的方式,调用了被标记为高风险的接口(如删除资源、修改权限等)。",
  "potential_attack_phase": ["Execution", "Defense Evasion"], // 映射到ATT&CK等攻击框架的阶段
  "recommended_next_steps": [ // 建议Agent下一步调用哪些MCP
    "IpAnalysisMcp",
    "ApiBehaviorAnalysisMcp",
    "AkIdentityAnalysisMcp"
  ]
}

3. 接口行为分析MCP (ApiBehaviorAnalysisMcp)

目的:深入分析被调用的API接口(Action),包括其本身危险性、历史调用基线、上下文行为和敏感参数。

输入 (Request)

JSON
{
  "event_name": "cbs:DeleteSnapshots",
  "context": {
    "uin": "",
    "access_key_id": ,
    "call_id": "835569", // 聚合的调用ID,用于查询上下文
    "request_id": "", // 单次请求ID,用于查询参数
    "alert_timestamp": ""
  }
}

输出 (Response)

JSON
{
  "event_name": "cbs:DeleteSnapshots",
  "api_info": {
    "description": "删除云硬盘快照",
    "is_high_risk": true, // 是否被定义为高危接口
    "is_common_attacker_api": true // 是否为攻击者常用接口
  },
  "behavioral_analysis": {
    "is_first_seen_for_ak": true, // 此AK是否首次调用该接口
    "frequency_past_90d": 0, // 过去90天内,此AK调用该接口的次数
    "is_deviated_from_baseline": true // 综合判断是否偏离基线
  },
  "contextual_analysis": {
    "surrounding_api_calls": [ // 告警时间点前后5分钟内的其他调用
      { "timestamp": "2025-08-11T03:14:55Z", "event": "cvm:DescribeInstances" },
      { "timestamp": "2025-08-11T03:15:10Z", "event": "cbs:DeleteSnapshots" }
    ],
    "potential_attack_chain_detected": false // 是否检测到已知的连续攻击行为
  },
  "parameter_analysis": {
    "has_sensitive_parameters": true,
    "extracted_parameters": { // 仅在调用详情成功解析时填充
      "SnapshotIds": ["snap-xxxxxx1", "snap-xxxxxx2"]
    }
  },
  "summary": {
    "behavior_risk": "High", // High (首次调用), Medium (低频), Low (常用)
    "overall_conclusion": "此AK首次调用高危的删除快照接口,严重偏离历史行为基线。"
  }
}

4. AK身份分析MCP (AkIdentityAnalysisMcp)

目的:分析涉事AK的身份、权限配置、请求结果以及行为模式。

输入 (Request)

JSON
{
  "access_key_id": 138498,
  "context": {
    "uin": "100004506473",
    "call_id": "835569", // 用于查询关联的策略
    "request_id": "8443b0e5-fd6f-4199-afc6-13f9e39bab1a", // 用于查询请求状态
    "event_name": "cbs:DeleteSnapshots" // 用于判断权限贴合度
  }
}

输出 (Response)

JSON
{
  "access_key_id": 138498,
  "user_info": {
    "user_type": "CAMUser", // Root, CAMUser, Role
    "user_name": "piperpeng",
    "sub_uin": "100007252667"
  },
  "call_status": {
    "was_successful": false,
    "error_message": "InvalidSnapshot.NotSupported" // 如果失败,记录错误信息
  },
  "permission_analysis": {
    "attached_policies": ["AdministratorAccess", "QCloudFinanceFullAccess"],
    "permission_level": "Administrator", // Administrator, ServiceSpecific, ReadOnly
    "permission_fit_for_action": "Overly-Permissive" // 权限贴合度: Tight, Overly-Permissive, Insufficient
  },
  "summary": {
    "identity_risk": "Medium", // 身份风险: High (个人/测试用户), Low (服务角色)
    "permission_risk": "High", // 权限风险: High (权限过大), Low (权限收敛)
    "overall_conclusion": "该AK属于个人子用户piperpeng,拥有管理员权限,权限配置过大,存在高风险。"
  }
}

5. 时间分析MCP (TimeAnalysisMcp)

目的:分析告警发生的时间点是否属于异常时段。

输入 (Request)

JSON
{
  "timestamp": "2025-08-11T03:15:00Z", // ISO 8601 格式
  "user_timezone": "Asia/Shanghai" // 用户的常用时区 (可选,若无则按UTC+8计算)
}

输出 (Response)

JSON
{
  "utc_time": "2025-08-11T03:15:00Z",
  "local_time": "2025-08-11T11:15:00+08:00",
  "time_category": "WorkingHours", // DeepNight (0-6点), OffHours (18-24点), WorkingHours, Weekend, Holiday
  "risk_factor": "Low" // High (深夜/节假日), Medium (非工作时间), Low (工作时间)
}

FastMcp

Installation - FastMCP

https://gofastmcp.com/

菜就多练

本站访客数 人次 本站总访问量