尽管基于 Linux 的系统通常被认为具有很高的安全性,但仍存在一些潜在风险需要认真对待。
恶意软件,例如 Rootkit、病毒和勒索软件,经常攻击 Linux 服务器,并可能导致各种问题。
无论使用哪种操作系统,采取必要的安全措施对服务器而言至关重要。大型企业和组织已积极采取安全措施,并开发了相关工具,不仅可以识别漏洞和恶意软件,还可以修复问题并采取预防措施。
幸运的是,有很多经济实惠甚至免费的工具可以帮助完成这项工作。 这些工具可以检测基于 Linux 的服务器各个组件中的漏洞。
Lynis
Lynis 是一款广受欢迎的安全工具,也是 Linux 专家常用的选择。它也适用于基于 Unix 和 macOS 的系统。这款开源软件自 2007 年以来一直以 GPL 许可发行。
Lynis 可以检测安全漏洞和配置错误。 它不仅仅是暴露问题,还会提供修复建议。 因此,为了获得详细的审计报告,需要在目标主机系统上运行它。
使用 Lynis 无需安装。 您可以从下载的压缩包或 tarball 中提取它并直接运行。 还可以从 Git 克隆获取,以便访问完整的文档和源代码。
Lynis 由 Rkhunter 的原作者 Michael Boelen 创建。它提供个人和企业两种服务,在任何情况下都表现出色。
Chkrootkit
正如您可能已经猜到的,chkrootkit 是一种用于检测 rootkit 的工具。Rootkit 是一种恶意软件,它可以让未经授权的用户访问服务器。 如果您正在运行基于 Linux 的服务器,则 rootkit 可能会构成严重威胁。
chkrootkit 是最常用的基于 Unix 的 rootkit 检测程序之一。它使用 “strings” 和 “grep” (Linux 命令行工具) 来发现问题。
它可以从备用目录或应急光盘中使用,以防您需要验证一个已经受到损害的系统。Chkrootkit 的不同组件负责在 “wtmp” 和 “lastlog” 文件中查找已删除的条目,查找嗅探器记录或 rootkit 配置文件,并检查 “/proc” 中的隐藏条目或对 “readdir” 程序的调用。
要使用 chkrootkit,需要从服务器获取最新版本,提取源文件,进行编译,然后就可以开始使用。
Rkhunter
开发人员 Michael Boelen 还在 2003 年推出了 Rkhunter(Rootkit Hunter)。它是一款适用于 POSIX 系统的工具,可以帮助检测 Rootkit 和其他漏洞。Rkhunter 会彻底检查文件(隐藏或可见)、默认目录、内核模块和错误配置的权限。
在执行例行检查之后,它会将检查结果与安全和正确的记录数据库进行比较,并寻找可疑程序。 由于该程序是用 Bash 编写的,因此它不仅可以在 Linux 机器上运行,还几乎可以在任何版本的 Unix 上运行。
ClamAV
使用 C++ 编写的 ClamAV 是一款开源反病毒软件,可帮助检测病毒、木马和其他各种恶意软件。 这是一款完全免费的工具,因此很多人使用它来扫描个人信息(包括电子邮件),以查找任何类型的恶意文件。 它也可以作为服务器端扫描程序发挥重要作用。
该工具最初是为 Unix 开发的。尽管如此,它仍具有可在 Linux、BSD、AIX、macOS、OSF、OpenVMS 和 Solaris 上使用的第三方版本。ClamAV 会自动定期更新其数据库,以便检测最新的威胁。它支持命令行扫描,并具有多线程可扩展的守护进程,以提高扫描速度。
它可以检测不同类型文件中的漏洞。 它支持各种压缩文件格式,包括 RAR、Zip、Gzip、Tar、Cabinet、OLE2、CHM、SIS 和 BinHex,以及几乎所有类型的电子邮件系统。
LMD
Linux Malware Detect(简称 LMD)是另一种著名的 Linux 系统反病毒软件,专门针对托管环境中常见的威胁而设计。 与许多其他可以检测恶意软件和 rootkit 的工具一样,LMD 使用签名数据库来查找任何正在运行的恶意代码并快速终止它。
LMD 不仅仅依赖于自己的签名数据库。它还可以利用 ClamAV 和 Team Cymru 的数据库来寻找更多病毒。 为了扩展其数据库,LMD 从网络边界入侵检测系统中捕获威胁数据。 通过这样做,它能够为正在攻击中积极使用的恶意软件生成新的签名。
LMD 可以通过 “maldet” 命令行进行使用。该工具专门为 Linux 平台构建,可以轻松搜索 Linux 服务器。
Radare2
Radare2 (R2) 是一个用于分析二进制文件和进行逆向工程的框架,具有出色的检测能力。 它可以检测格式错误的二进制文件,为用户提供管理它们的工具,从而消除潜在威胁。 它利用 sdb,这是一个 NoSQL 数据库。软件安全研究人员和软件开发人员更喜欢这款工具,因为它具有出色的数据呈现能力。
Radare2 的突出特点之一是用户无需强制使用命令行来完成静态/动态分析和软件开发等任务。 推荐用于任何类型的二进制数据研究。
OpenVAS
开放式漏洞评估系统,或 OpenVAS, 是一个用于扫描漏洞和管理漏洞的托管系统。它专为各种规模的企业而设计,可帮助他们检测隐藏在其基础架构中的安全问题。最初,该产品名为 GnessUs,直到其当前所有者 Greenbone Networks 将其更名为 OpenVAS。
从 4.0 版本开始,OpenVAS 允许对其网络漏洞测试 (NVT) 库进行持续更新(通常在 24 小时内)。截至 2016 年 6 月,它拥有超过 47,000 个 NVT。
安全专家使用 OpenVAS 是因为它能够快速扫描,并且具有出色的可配置性。OpenVAS 程序可以在独立的虚拟机中使用,以进行安全的恶意软件研究。 它的源代码在 GNU GPL 许可下可用。 许多其他漏洞检测工具都依赖于 OpenVAS,这正是它在基于 Linux 的平台中被视为必不可少的程序的原因。
REMnux
REMnux 使用逆向工程方法来分析恶意软件。它可以检测隐藏在 JavaScript 混淆代码片段和 Flash 小程序中的许多基于浏览器的问题。它还能够扫描 PDF 文件并执行内存取证。 该工具可以帮助检测文件夹和文件中的恶意程序,而这些程序无法用其他病毒检测程序轻松扫描。
由于其解码和逆向工程能力,它非常有效。它可以确定可疑程序的属性,并且由于它是轻量级的,因此智能恶意程序几乎无法检测到它。它可以在 Linux 和 Windows 上使用,并且可以在其他扫描工具的帮助下改进其功能。
Tiger
1992 年,德克萨斯 A&M 大学开始开发 Tiger 以提高校园计算机的安全性。 现在,它已成为类 Unix 平台上流行的程序。 该工具的一个独特之处在于,它不仅是一个安全审计工具,还是一个入侵检测系统。
该工具在 GPL 许可下免费提供。 它依赖于 POSIX 工具,它们协同工作可以创建一个完美的框架,从而显著提高服务器的安全性。Tiger 完全是用 shell 语言编写的,这也是它有效的原因之一。 它适用于检查系统状态和配置,它的多用途使其在那些使用 POSIX 工具的人中非常受欢迎。
Maltrail
Maltrail 是一种流量检测系统,能够维护服务器的流量清洁并帮助它避免各种恶意威胁。 它通过将流量来源与在线发布的黑名单站点进行比较来完成此项任务。
除了检查列入黑名单的站点外,它还使用先进的启发式机制来检测不同类型的威胁。 尽管它是一项可选功能,但当您认为服务器已经受到攻击时,它会非常有用。
它有一个传感器,可以检测服务器收到的流量,并将信息发送到 Maltrail 服务器。 检测系统验证流量是否足以在服务器和来源之间交换数据。
YARA
为 Linux、Windows 和 macOS 打造的 YARA (Yet Another Ridiculous Acronym)是用于研究和检测恶意程序的重要工具之一。 它使用文本或二进制模式来简化和加速检测过程,从而实现快速简单的任务。
YARA 确实具有一些附加功能,但您需要 OpenSSL 库才能使用它们。 即使您没有该库,也可以使用基于规则的引擎的 YARA 进行基本的恶意软件研究。它还可以用于 Cuckoo Sandbox,这是一个基于 Python 的沙箱,非常适合进行安全恶意软件研究。
如何选择最佳工具?
我们上面提到的所有工具都运行良好,当一个工具在 Linux 环境中流行时,您可以确信有成千上万的经验丰富的用户正在使用它。 系统管理员应该记住的一件事是,每个应用程序通常都依赖于其他程序。例如,ClamAV 和 OpenVAS 就是这种情况。
您需要了解您的系统需要什么以及它可能在哪些方面存在漏洞。 首先,使用轻量级工具来研究需要关注的部分。 然后,使用适当的工具来解决问题。