跳转到内容

Mock 插件

在将 ASP 部署在生产环境前,通过该插件模拟 CMDB、SIEM、SIRP 三种数据源,测试 Agent 架构和数据流.

CMDB

模拟企业 CMDB 资产查询接口,用于告警调查时获取资产上下文信息.

使用方法

python
from PLUGINS.Mock.CMDB.CMDB import cmdb_instance

result = cmdb_instance.lookup(artifact_type, artifact_value)

支持的 Artifact 类型

类型返回内容
HOSTNAME / ENDPOINT / DEVICE / IP_ADDRESS资产信息: IP、MAC、状态、环境、网络区域、责任人、已安装软件
USER_NAME / USER / ACCOUNT身份信息: 用户ID、部门、职位、权限等级、关联终端
EMAIL_ADDRESS / EMAIL邮箱 + 身份信息
PORT端口暴露信息: 协议、常见服务、暴露等级
SUBNET子网信息: CIDR、区域、资产数量
RESOURCE_UID / RESOURCE云资源信息: 类型、云厂商、区域、状态
MAC_ADDRESS / SERIAL_NUMBER资产信息

CMDB 基于 SHA-256 确定性哈希,相同输入始终返回相同结果.

SIEM

生成网络流量、主机事件、AWS CloudTrail 三种模拟日志,支持发送到 ELK 和 Splunk.

配置方法

  1. 拷贝 PLUGINS/Mock/SIEM/CONFIG.example.pyCONFIG.py
  2. 设置 ELK 和 Splunk 的启用开关:
python
ELK_ENABLED = True
SPLUNK_ENABLED = True
  1. SIEM 凭据分别从 PLUGINS/ELK/CONFIGPLUGINS/Splunk/CONFIG 读取

运行参数

settings.py 中配置:

参数默认值说明
EPS10每秒生成事件数
BATCH_SIZE100批量发送大小
MALICIOUS_PERCENTAGE0.05恶意日志注入比例 (5%)

日志生成器

生成器索引名说明
NetworkGeneratorsiem-network-traffic网络流量日志,含源/目的IP、端口、协议
HostGeneratorsiem-host-events主机事件日志,含进程创建、文件操作、注册表变更
CloudGeneratorsiem-aws-cloudtrailAWS CloudTrail 日志,含 IAM、S3、EC2 等操作

攻击场景

每个生成器配有对应的攻击场景,以 5% 概率注入:

场景关联生成器说明
BruteForceScenarioNetwork5-10 次 SSH/RDP 失败登录 + 1 次成功登录,攻击IP 45.95.11.22
RansomwareScenarioHost三阶段: 删除卷影副本 → 20个文件加密重命名 → 勒索信文件创建
CloudPrivilegeEscalationScenarioCloud完整 AWS 杀伤链: 侦查 → 权限枚举 → 创建后门用户 → 权限提升 → AssumeRole

运行

bash
python PLUGINS/Mock/SIEM/main.py

生成的日志可与 SIEM 插件 中的 siem-network-traffic.yamlsiem-host-events.yamlsiem-aws-cloudtrail.yaml 配置文件配合使用.

SIRP

生成完整的 Case、Alert、Artifact、Enrichment 测试数据,数据之间自动关联.

创建 Mock 数据

bash
python PLUGINS/Mock/SIRP/main.py

清理 Mock 数据

bash
python PLUGINS/Mock/SIRP/delete_all.py

Mock 数据概览

数据类型数量说明
Case13覆盖钓鱼、横向移动、勒索软件、暴力破解、数据泄露、云配置错误等场景
Alert16含 MITRE ATT&CK 映射、数据源、修复建议,关联 SIEM 攻击场景
Artifact37IOC 数据: IP、域名、哈希、进程、用户等,与 Enrichment 关联
Enrichment24多厂商情报: OTX、VirusTotal、AbuseIPDB、CrowdStrike、Shodan 等

开发人员可参考 mock_case.pymock_alert.py 等文件理解 SIRP 数据模型的构建方式.