如何修复Linux系统中的SambaCry漏洞(CVE-2017-7494)?
介绍
随着技术的进步,网络威胁也在不断发展。保护您的网络免受这些威胁从未如此重要。
其中一种威胁是 SambaCry 漏洞 (CVE-2017-7494),如果不加以解决,该漏洞可能会危害整个网络。在本文中,我们将讨论 SambaCry 是什么、修复它的重要性以及如何解决 Linux 系统上的漏洞。
了解 Samba 和 SambaCry 漏洞
什么是桑巴?
Samba 是一个开源软件包,允许 Linux/Unix 服务器和基于 Windows 的客户端之间的互操作性。它允许 Linux/Unix 服务器向基于 Windows 的客户端提供文件和打印机共享等服务。 “Samba”这个名称来自 SMB(服务器消息块),这是 Microsoft Windows 用于通过网络共享文件、打印机和其他资源的协议。
什么是 SambaCry 漏洞?
SambaCry 漏洞 (CVE-2017-7494) 是指 Samba 3.5.0 及以上版本中实现的 SMB/CIFS 网络协议中发现的安全缺陷。该漏洞允许远程攻击者通过网络发送特制数据包在易受攻击的系统上执行任意代码。它被称为“SambaCry”,因为它与利用另一个 SMB 漏洞的 WannaCry 勒索软件攻击几乎同时被发现。
它是如何工作的?
SambaCry 漏洞的工作原理是利用 smbd 守护程序中的缓冲区溢出条件,该守护程序在 TCP 端口 445 上侦听来自使用 SMB/CIFS 协议的客户端的传入连接。通过发送包含过多数据的特制数据包,攻击者可以导致 smbd 崩溃或在目标系统上以 root 权限执行任意代码。一旦进入,攻击者就可以执行各种恶意活动,例如下载和执行恶意软件、窃取敏感数据或加密文件以获取赎金。
需要注意的是,该漏洞不仅影响运行 Samba 的 Linux 系统,还影响其他使用嵌入式版本 Samba 的设备,例如路由器、NAS(网络附加存储)设备和 IoT(物联网)设备。因此,这些系统/设备的用户了解此漏洞的工作原理并采取必要的预防措施来保护其系统免遭利用至关重要。
检查您的系统是否受SambaCry漏洞影响
使用命令行工具检查漏洞
在继续修复之前,必须确保您的系统确实容易受到 SambaCry 漏洞的攻击。 Linux 系统有多个命令行工具可用于检查是否存在此漏洞。其中一种工具是“nmap”,它允许您扫描系统以查找开放端口和服务。
要使用 nmap 扫描您的系统,首先,请确保使用您的发行版的包管理器在您的系统上安装了 nmap。安装后,运行以下命令 -
sudo nmap -p 445 --script smb-vuln-cve-2017-7494
将 `` 替换为目标计算机的 IP 地址。
输出将显示目标机器是否容易受到攻击。您可以使用的另一个命令行工具是“smbclient”。
该工具扫描远程主机上的特定服务器服务,可用于检查某个 IP 地址上运行的特定版本的 Samba 服务器服务是否包含 Sambacry 利用的漏洞。要使用 smbclient,请运行 -
smbclient ///IPC$ -N
如果响应中没有错误,则表明 Samba 中没有检测到漏洞。
使用漏洞扫描器检查漏洞
除了命令行工具之外,还可以使用漏洞扫描器。 Nessus 扫描仪是一种可以在这里使用的流行扫描仪。
在您的 Linux 系统或托管扫描仪的虚拟机(可以通过 Docker 容器运行)上安装并配置 Nessus 后,添加新的扫描策略并从起始页的策略模板列表中选择“高级扫描”。在“高级扫描”设置中,您可以选择SMB漏洞模板来配置扫描。这将自动检查指定 IP 范围上的 SambaCry 漏洞。
Nessus 扫描器的报告应显示目标系统是否容易受到 SambaCry 的攻击。建议运行两种类型的测试(命令行和漏洞扫描器),以确保您的系统不会受到此漏洞的影响。
修复漏洞
使用最新补丁更新您的系统
修复 SambaCry 漏洞的首要步骤之一是使用最新的补丁和安全更新来更新您的 Linux 系统。为此,您可以在终端中键入以下命令 -
sudo apt-get update && sudo apt-get upgrade
这将更新系统上的所有软件包并应用任何可用的安全更新。请务必记住,此命令可能需要几分钟才能完成,具体取决于需要更新的软件包数量。
还建议您定期检查新更新并尽快应用它们,因为新漏洞随时可能出现。通过使用最新的安全补丁使您的系统保持最新状态,您将能够降低潜在风险并保护您的网络免受攻击。
将安全更新应用到您的系统
除了使用最新补丁更新 Linux 系统之外,定期检查并应用任何可用的安全更新也很重要。这些更新专门设计用于帮助防范 SambaCry 等已知漏洞。要检查可用的安全更新,请在终端中键入以下命令 -
sudo apt-get install unattended-upgrades
此命令会安装一个工具,该工具会自动下载并在 Linux 系统上安装关键的安全升级。这是防范 SambaCry 等漏洞的最简单方法之一。
在您的系统上禁用 SMBv1 协议
修复 SambaCry 漏洞的另一种方法是在 Linux 系统上禁用 SMBv1 协议。旧版本的 Windows 操作系统(例如 Windows XP)使用此协议通过网络连接进行文件共享。要在 Linux 系统(例如 Ubuntu 16.04 LTS 或更高版本)上禁用 SMBv1 协议,请在终端中键入以下命令 -
echo "[global]
client min protocol = SMB2" | sudo tee -a /etc/samba/smb.conf
此命令禁用 SMBv1 协议并强制系统使用 SMBv2 或更高版本。但请务必注意,这可能会导致与旧版本 Windows 操作系统的兼容性问题。
使用最新的补丁和安全更新更新您的 Linux 系统、应用任何可用的安全更新以及禁用 SMBv1 协议是修复 SambaCry 漏洞的有效方法。通过采取这些步骤,您可以帮助保护您的网络免受潜在攻击并确保您的数据安全。
结论
SambaCry 漏洞对 Linux 系统构成严重威胁,需要立即解决。我们概述了确定您的系统是否易受攻击以及如何修复它所需的步骤。安装安全更新、禁用 SMBv1 协议以及实施其他安全措施将有助于保护您的系统免受未来的攻击。
我们首先解释什么是 SambaCry 漏洞及其工作原理。然后我们提供了检查您的系统是否受到该漏洞影响的方法。在确定您的系统存在漏洞后,我们提供了修复该问题的步骤,包括使用最新补丁更新您的系统、对您的系统应用安全更新以及在您的系统上禁用 SMBv1 协议。
值得注意的是,修复 SambaCry 漏洞不应被视为一项一次性任务,而是一个持续的过程。定期进行安全审核并及时更新安全更新将有助于防止未来的漏洞被利用。