网络安全渗透测试【免费下载链接】GOADgame of active directory项目地址https://gitcode.com/gh_mirrors/go/GOAD点击查看免费下载本篇基于 GOAD 文档 docs/mkdocs/docs/extensions/elk.md 及其配套实现 extensions/elk/系统讲解如何向任意 GOAD 实验环境安装 ELKElasticsearch Logstash Kibana扩展从sshpass依赖与 ludus 模板准备等前置条件到install_extension elk的完整安装链路、各 Provider 下 ELK 虚拟机的资源规格再到服务端 Elasticsearch/Kibana 配置参数与 Windows 端 Winlogbeat Sysmon 日志采集代理的实现细节。读完本文你将能够独立完成 ELK 扩展的安装、理解其底层 Ansible 调用链并通过 Kibana 界面跟踪实验室内的攻击与日志事件。扩展概览向实验环境添加一台 ELK 日志服务器GOAD 的扩展机制允许在已加载的实验lab上动态追加机器。ELK 扩展的元数据定义在 extension.json 中{ name: elk, description: Add an ELK to the current lab, machines: [ elk ], compatibility: [ * ], impact: add a linux machine and add a logbeat agent on all windows machine }从该文件与 extensions/elk/README.md 可以确认该扩展的关键属性属性值说明扩展名elkinstall_extension命令的参数兼容性*适用于所有 GOAD 实验GOAD、GOAD-Light、GOAD-Mini、DRACARYS 等支持的 Providervirtualbox / vmware / aws / azure / ludus见各 provider 子目录新增机器elk{{ip_range}}.50实验网络 IP 段的第 50 位机器命名{{lab_name}}-ELKludus 等 provider 下使用lab-elk主机名影响添加一台 Linux 机器并在所有 Windows 机器上部署日志代理见impact字段安装完成后Kibana 可通过http://ip_range.50:5601访问用于跟踪实验室lab内的安全事件。排查日志字段含义时文档建议参考 Windows Security Log Encyclopediaultimatewindowssecurity 的日志事件百科作为事件 ID 的查询字典。部署拓扑与 Ansible InventoryELK 扩展的机器定义由 Ansible inventory 驱动见 extensions/elk/inventory; EXTENSION : ELK ------------------------------------------ [default] elk ansible_host{{ip_range}}.50 ansible_connectionssh ansible_ssh_common_args-o StrictHostKeyCheckingno ; Recipe associations ------------------- [elk_server] elk ; add log agent for elk ; usage : elk.yml [elk_log:children] domain这里定义了两个关键分组elk_server仅包含elk主机是 ELK 服务端组件Elasticsearch、Logstash、Kibana的安装目标连接方式为 SSHansible_host由实验的{{ip_range}}变量渲染为.50段。elk_log以children方式继承主实验的domain组即所有已加入域的计算机都会安装日志采集代理。这正是extension.json中impact描述的 add a logbeat agent on all windows machine 的实现载体。各 Provider 下的 ELK 机器规格扩展为每个 provider 提供了独立的机器模板资源规格保持一致Ubuntu 22.04、2 核 CPU、约 4 GB 内存VirtualBoxproviders/virtualbox/Vagrantfile 使用bento/ubuntu-22.04公共镜像将宿主机 2210 端口转发到虚拟机 22 端口便于从宿主机 SSH 调试。VMwareproviders/vmware/Vagrantfile。Ludusproviders/ludus/config.yml 声明template: ubuntu-22.04-x64-server-template、ip_last_octet: 50、ram_gb: 4、cpus: 2。AWSproviders/aws/linux.tf 使用22_04-lts-gen2SKU 与t2.medium2 CPU / 4 GB。Azureproviders/azure/linux.tf 使用Standard_B2s2 CPU / 4 GB。前置条件文档列出了两条前置要求均直接关系安装成功与否1. 宿主机安装 sshpassELK 安装过程中涉及 SSH 登录目标机器需要sshpass辅助免交互输入密码sudo apt install sshpass2. Ludus 用户准备 Ubuntu 22.04 模板在 ludus provider 下ELK 机器依赖ubuntu-22.04-x64-server模板需预先添加并构建ludus templates add -d ubuntu-22.04-x64-server ludus templates build其他 providerVirtualBox/VMware 使用 Vagrant 拉取bento/ubuntu-22.04镜像AWS/Azure 使用托管的 Ubuntu 22.04 镜像无需此步骤。安装流程在 GOAD 命令行goad中的操作步骤为# 1. 选择/加载你的实验实例 load instance_id # 2. 安装 elk 扩展 install_extension elkinstall_extension elk执行时GOAD 会按 provider 创建 ELK 虚拟机然后执行扩展的 Ansible playbook extensions/elk/ansible/install.yml# LOGS and Monitoring - name: Install ELK hosts: elk_server become: yes roles: - { role: elk, tags: elk } - name: Install log agent on windows vms hosts: elk_log roles: - { role: logs_windows, tags: agent }playbook 分为两个 playInstall ELK对elk_server组提权become: yes执行elk角色完成服务端部署Install log agent on windows vms对elk_log组即全部domain机器执行logs_windows角色完成 Windows 端采集代理部署。两个 play 分别打了elk与agent标签可单独重跑。服务端Elasticsearch Logstash Kibana 的安装实现服务端角色位于 extensions/elk/ansible/roles/elk/版本参数定义在 defaults/main.ymlelasticsearch_version: 7.x es_cluster_name: elasticsearchelk/tasks/main.yml 的安装链路依次为刷新 apt 缓存cache_valid_time: 86400安装依赖apt-transport-https、gnupg2添加 Elastic 官方 GPG 公钥https://artifacts.elastic.co/GPG-KEY-elasticsearch与软件源deb https://artifacts.elastic.co/packages/7.x/apt stable main通过 apt 安装logstash、openjdk-11-jre、elasticsearch、kibanaElastic 7.x 栈要求 Java 11 运行时拷贝配置文件并修正 systemd 参数依次enablestart三个服务。其中两处值得注意的实现细节Elasticsearch 启动超时放宽lineinfile将/usr/lib/systemd/system/elasticsearch.service中的TimeoutStartSec改为1803 分钟。Elasticsearch 首次启动需要完成集群引导与索引目录初始化默认超时在资源受限的虚拟机上容易触发启动失败这是 2 核/4 GB 规格下保证稳定性的关键补丁。配置文件属主/权限kibana.yml以root:kibana、0660写入/etc/kibana/kibana.ymlelasticsearch.yml以root:elasticsearch、0660写入/etc/elasticsearch/elasticsearch.yml避免服务账户因权限读取失败。elasticsearch.yml 关键参数模板 files/elasticsearch.yml 只保留了少数必要项path.data: /var/lib/elasticsearch path.logs: /var/log/elasticsearch network.host: 0.0.0.0 http.port: 9200 discovery.type: single-nodenetwork.host: 0.0.0.0http.port: 9200让 Windows 端 Beats 代理可以从实验网络内直连写入日志discovery.type: single-node单节点模式跳过集群发现适合实验室单机部署数据与日志路径分别为/var/lib/elasticsearch与/var/log/elasticsearch。kibana.yml 关键参数模板 files/kibana.yml 中实际生效的两项server.port: 5601 server.host: 0.0.0.0server.host从默认的localhost改为0.0.0.0正是文档中 Kibana is configured onhttp://{{ip_range}}.50:5601 的来源——只有绑定到非回环地址攻击者/分析者才能从跳板机远程访问 Kibana。elasticsearch.hosts未显式配置Kibana 默认连接本机http://localhost:9200与单机部署吻合。客户端在域计算机上部署 Winlogbeat 与 Sysmon文档原文描述为 Install filebeat agent on domain computer machines而在当前仓库实现中该filebeat 系代理具体落地为WinlogbeatBeats 家族中专用于 Windows 事件日志的成员加上Sysmon增强系统日志。实现位于 extensions/elk/ansible/roles/logs_windows/。版本与路径默认值defaults/main.ymlsysmon_download_url_base: https://download.sysinternals.com/files sysmon_install_location: c:\\sysmon sysmon_download_file: Sysmon file_ext: .zip sysmon_config_url: https://raw.githubusercontent.com/SwiftOnSecurity/sysmon-config/master/sysmonconfig-export.xml winlogbeat_service: install_path_64: C:\\Program Files\\Elastic\\winlogbeat install_path_32: C:\\Program Files (x86)\\Elastic\\winlogbeat version: 7.17.6 download: true从默认值可以看出Winlogbeat 版本锁定为7.17.6与服务端elasticsearch_version: 7.x匹配同一大版本栈安装到C:\Program Files\Elastic\winlogbeatdownload: true表示 Ansible 会直接从 Elastic 官方源下载false时则使用角色files/目录下预置的 zip。Sysmon 配置模板采用业界常用的 SwiftOnSecurity sysmon-config仓库内随角色附带了 sysmonconfig-export.xml 与 Sysmon 安装包 Sysmon.zip。安装逻辑角色入口 tasks/main.yml 的流程导入子任务 tasks/winlogbeat.yml 安装 Winlogbeat创建 64 位安装目录 → 检测 winlogbeat 服务是否已装、版本目录是否存在 → 下载/拷贝 zip → 解压 → 用模板渲染winlogbeat.yml→ 执行官方install-service-winlogbeat.ps1注册服务 → 清理旧版本目录将渲染后的winlogbeat.yml再win_copy一份到C:\ProgramData\chocolatey\lib\winlogbeat\tools\安装 Sysmon创建c:\sysmon目录 → 拷贝 Sysmon 压缩包并解压 → 拷贝sysmonconfig-export.xml到c:\sysmon\→ 通过win_service检查sysmon64服务是否存在容错ignore_errors未安装时执行sysmon64.exe -accepteula -i c:\sysmon\sysmonconfig-export.xml带配置注册驱动启动 Winlogbeat检查winlogbeat服务状态若已安装但未运行先win_reboot超时 600 秒、重启后等待 100 秒再执行winlogbeat setup -e初始化并设置服务自启动。winlogbeat setup -e会自动加载 Elastic 官方集成模板Elastic integrations到 Elasticsearch后续在 Kibana 中即可用官方的 Security/Sysmon 仪表盘与解析规则。Winlogbeat 采集配置渲染模板 templates/winlogbeat.yml.j2 定义了完整的日志通道清单这正是 AD 攻击链检测的核心数据源winlogbeat.event_logs: - name: Application ignore_older: 30m - name: System - name: Security processors: - script: lang: javascript id: security file: ${path.home}/module/security/config/winlogbeat-security.js - name: Microsoft-Windows-Sysmon/Operational processors: - script: lang: javascript id: sysmon file: ${path.home}/module/sysmon/config/winlogbeat-sysmon.js - name: Windows PowerShell event_id: 400, 403, 600, 800 processors: - script: lang: javascript id: powershell file: ${path.home}/module/powershell/config/winlogbeat-powershell.js - name: Microsoft-Windows-PowerShell/Operational event_id: 4103, 4104, 4105, 4106 processors: - script: lang: javascript id: powershell file: ${path.home}/module/powershell/config/winlogbeat-powershell.js - name: ForwardedEvents tags: [forwarded] # 按转发通道分别套用 security / sysmon / powershell 处理器 - name: Microsoft-Windows-WMI-Activity/Operational event_id: 5857,5858,5859,5860,5861各通道的检测意图从源码结构看相当清晰SecurityAD 攻击的核心证据4624/4625 登录、4662 对象访问、DCSync 相关事件等Microsoft-Windows-Sysmon/OperationalSysmon 事件进程创建 1、网络连接 3、注册表 13 等捕获横向移动与工具落地Windows PowerShell Microsoft-Windows-PowerShell/Operational只采集脚本块日志4103-4106与命令执行事件400/403/600/800过滤无用的 4104 之前噪声聚焦 PowerShell 攻击脚本Microsoft-Windows-WMI-Activity/Operational仅采集 5857-5861WMI 消费者/筛选器变更这是 WMI 持久化与远程 WMI 横向的典型痕迹ForwardedEvents域环境中部分日志通过事件转发到达模板按来源通道二次匹配处理器保证转发日志同样被解析。每个通道都挂接了 Elastic 模块的 JavaScript 富化处理器winlogbeat-security.js/winlogbeat-sysmon.js/winlogbeat-powershell.js在入库前完成字段解析。网络端点指向模板中的连接参数直接引用 Ansible inventory 中 ELK 主机的地址setup.kibana: host: {{ hostvars[elk].ansible_host }} output.elasticsearch: hosts: [{{ hostvars[elk].ansible_host }}:9200] username: elastic password: changeme数据面所有域计算机的 Winlogbeat 将日志推送到 ELK 机的9200端口Elasticsearch控制面setup.kibana.host指向 ELK 机winlogbeat setup -e时通过 Kibana API 加载仪表盘认证模板使用elastic用户、默认密码changeme直连实验室环境无安全认证生产环境应替换为密钥或专用账户。安装结果与使用安装完成后ELK 机器{{lab_name}}-ELK/ 主机名{{ range_id }}-elkIP{{ip_range}}.50上运行 Elasticsearch9200、Logstash5044 等默认端口、Kibana5601三个常驻服务域内每台 Windows 机器上安装了 Winlogbeat 服务与 Sysmon 驱动事件日志按上述通道清单持续上报在 Kibanahttp://ip_range.50:5601中即可通过 Elastic 内置的 Security 与 Sysmon 集成视图追踪实验内发生的安全事件对照 Windows Security Log Encyclopedia 的事件 ID 释义进行判读。关于卸载extensions/elk/README.md 明确标注 Uninstall : Not implemented yet即当前版本不提供扩展卸载流程删除 ELK 机器需按所选 provider 手动处理。可继续深入的文件路径内容路径扩展文档docs/mkdocs/docs/extensions/elk.md扩展元数据extensions/elk/extension.jsonInventory 与机器分组extensions/elk/inventory安装 playbookextensions/elk/ansible/install.ymlELK 服务端角色extensions/elk/ansible/roles/elk/tasks/main.ymlElasticsearch 配置extensions/elk/ansible/roles/elk/files/elasticsearch.ymlKibana 配置extensions/elk/ansible/roles/elk/files/kibana.ymlWindows 代理角色extensions/elk/ansible/roles/logs_windows/tasks/main.ymlWinlogbeat 渲染模板extensions/elk/ansible/roles/logs_windows/templates/winlogbeat.yml.j2各 Provider 机器定义extensions/elk/providers/赞分享网络安全渗透测试【免费下载链接】GOADgame of active directory项目地址https://gitcode.com/gh_mirrors/go/GOAD点击查看免费下载相关推荐Kue 与 ELK 栈集成集中式日志收集与分析Kue 与 ELK 栈集成集中式日志收集与分析 你是否还在为分布式系统中 Kue 任务日志分散、问题排查困难而烦恼本文将详细介绍如何通过 ELK 栈Ela任务调度后端消息队列Krea2_FP8完整指南如何用普通显卡快速生成高质量AI图像Krea2_FP8完整指南如何用普通显卡快速生成高质量AI图像 想要体验最新的AI图像生成技术却被巨大的模型文件和高配置要求劝退Krea2_FP8正是为你SequoiaDB日志收集ELK栈集中式日志管理SequoiaDB日志收集ELK栈集中式日志管理 概述 在分布式数据库环境中日志管理是运维工作的核心挑战之一。SequoiaDB作为一款分布式文档型数据库数据库分布式数据库文档数据库后端大数据上一篇libdatachannel轻量级WebRTC网络库的实战指南下一篇Obsidian LiveSync 快速入门3分钟搭建私有云同步服务的终极指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
Atlas 300V部署YOLO实战:从硬件选型到ATC模型转换全记录 我最近在后台收到的高频搜索里,几乎天天能看到同一个词:Atlas。其中最典型的就是“atlas部署yolo”和“atlas 300v 24g 是运算加速卡吗”。这两个问题放一起看特别有意思——一个在问硬件到底算啥,一个在问软件能不能跑。我刚拿卡那会儿也有同… · 2026/9/25 5:22:34
Atlas 300V部署YOLO实战:从环境搭建到推理调优 如果你手头正好有一块 Atlas 300V,而且想让它真正跑起来做目标检测,尤其是 YOLO 系列模型的部署,那这篇文章应该能帮你少走不少弯路。Atlas 300V 24G 经常被问到“是不是运算加速卡”,答案其实很明确:它是一张面向推理… · 2026/9/25 5:22:27
5分钟跑通自托管 AI 伴侣:AIRI 实时语音与游戏陪玩完整指南 5分钟跑通自托管 AI 伴侣:AIRI 实时语音与游戏陪玩完整指南 【免费下载链接】airi 💖🧸 Self hosted, you-owned Grok Companion, a container of souls of waifu, cyber livings to bring them into our worlds, wishing to achieve Neuro-s… · 2026/9/25 5:22:27
四向链表实现:从任意节点遍历不重复的完整指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:24:12
自动控制原理核心:奈氏图与奈氏稳定判据详解 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:24:12
AutoCAD 2023错误4005根本原因与四步修复指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:24:12
没有微软应用商店?离线部署Intel显卡控制面板完整指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:24:12
高云FPGA ILA调试实战:从配置失效到波形捕获的全流程解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:24:06
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37