From 2839a14c6f83f6b0e891c5917b8c1cc5f28855bd Mon Sep 17 00:00:00 2001 From: ZacharyZcR Date: Tue, 20 Jan 2026 13:26:25 +0800 Subject: [PATCH] =?UTF-8?q?refactor(ms17010):=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E6=8F=90=E7=A4=BA=EF=BC=8C=E6=98=8E=E7=A1=AE?= =?UTF-8?q?=E6=8C=87=E5=87=BASMBv1=E4=B8=8D=E6=94=AF=E6=8C=81=E7=AD=89?= =?UTF-8?q?=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plugins/services/ms17010.go | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/plugins/services/ms17010.go b/plugins/services/ms17010.go index 9fce9ef..5884914 100644 --- a/plugins/services/ms17010.go +++ b/plugins/services/ms17010.go @@ -305,14 +305,12 @@ func (p *MS17010Plugin) checkMS17010Vulnerability(ip string, config *common.Conf reply := make([]byte, 1024) n, readErr := conn.Read(reply) if readErr != nil || n < 36 { - if readErr != nil { - return false, "", fmt.Errorf("读取协议响应错误: %w", readErr) - } - return false, "", fmt.Errorf("协议响应不完整") + // 连接被关闭或响应不完整,通常表示目标不支持SMBv1 + return false, "", fmt.Errorf("目标可能不支持SMBv1") } if binary.LittleEndian.Uint32(reply[9:13]) != 0 { - return false, "", fmt.Errorf("协议协商被拒绝") + return false, "", fmt.Errorf("SMBv1协议协商被拒绝") } // 建立会话 @@ -322,14 +320,11 @@ func (p *MS17010Plugin) checkMS17010Vulnerability(ip string, config *common.Conf n, readErr = conn.Read(reply) if readErr != nil || n < 36 { - if readErr != nil { - return false, "", fmt.Errorf("读取会话响应错误: %w", readErr) - } - return false, "", fmt.Errorf("会话响应不完整") + return false, "", fmt.Errorf("SMB会话建立失败") } if binary.LittleEndian.Uint32(reply[9:13]) != 0 { - return false, "", fmt.Errorf("会话建立失败") + return false, "", fmt.Errorf("SMB会话被拒绝") } // 提取系统信息