使用 Linux LiveCD 评估系统的安全性

发表于:2007-05-26来源:作者:点击数: 标签:
有 4 种 LiveCD 可用来确定系统漏洞 级别: 初级 Mayank Sharma , 自由技术撰稿人 您希望不用经过冗长的安装和配置过程就可以实现对 Linux(TM) 系统安全性的评估吗?在本文中我们会介绍 4 个包: Auditor、Whoppix、Knoppix-STD 和 PHLAK,采用这些包之后,您
 有 4 种 LiveCD 可用来确定系统漏洞

级别: 初级
Mayank Sharma , 自由技术撰稿人

您希望不用经过冗长的安装和配置过程就可以实现对 Linux(TM) 系统安全性的评估吗?在本文中我们会介绍 4 个包: Auditor、Whoppix、Knoppix-STD 和 PHLAK,采用这些包之后,您就可以利用 LiveCD 了。

真正安全的系统只能关机断电,放到一个混凝土浇注的建筑物中的一个密闭的房间中,并配备警力进行守卫。
-- Gene Spafford,Purdue 大学的计算机教授,安全和犯罪问题顾问

我们很多人都没有把自己的系统安全性挖掘至极至,那么我们应该如何来评估系统的缺陷呢?或者说难道连接到 Internet 上的计算机就具有这种缺陷?并且会有很多的漏洞?我们又应该如何来判断办公网络的安全级别呢(尽管您可能有一个网络管理员在管理网络)?

考虑到这些潜在的不安全因素,我在 Internet 上寻找了一些工具来帮助评估系统和网络的安全性,最终希望能够增强系统的安全性。我的搜索获得了一些结果:有一些优秀的工具可以免费下载和使用。本文将介绍这些安全评估工具,并使用这些工具对系统快速而简单地进行测试。

丰富的工具
除了要让系统更加安全之外,还有一些工具可以用来判断系统抵挡各种攻击的能力,例如:

- 使用诸如 blockall 之类的防火墙工具,您可以限制所有到达的 TCP 通信;使用诸如 floppyfw 之类的工具,您可以在一张软盘中实现防火墙。
- Labrea 是一个“粘蜜罐”,可以限定蠕虫和端口扫描攻击,从而消除它们的影响。
- 还有很多入侵检测系统(IDS),例如非常流行的 Snort 和 logsnorter。
- 报文嗅探器,例如 ethereal、dsniff、driftnet、urlsnarf 和 msgsnarf,可以帮助过滤未用的通信,例如会浪费带宽的 IM 消息。
- 无线工具,例如 airsnarf、airsnort 和 kismet,可以帮助评估无线网络的情况。
- 有些成功的工具,例如 chntpw(可以重置 Windows 系统上的密码)和 pwl9x(可以攻击 Windows 9x 密码文件),以及 allwords2(一个 27 MB 英文字典)可以促使大家采用更长的包含数字的非标准密码。
- 如果您认为这已经涉及了所有的方面,那么就请试一下缺陷评估工具,例如 hydra、nessus 和 nmap。

嘿!大部分工具都只能在 Linux 上运行!

现在 Linux 不是什么问题,毕竟它是免费的,我可以在自己家的系统上运行。但是谁愿意花上一个周末的时间来安装和配置系统呢?起码我不愿意。如果我希望测试工作时所使用的机器又该如何呢?我需要获得授权才能在上面安装 Linux 吗?这里有一个非常简单的解决方案

就是这里。欢迎进入 LiveCD 上的安全评估工具世界。




关于 LiveCD
LiveCD 是一个保存在可启动的 CD-ROM 上的操作系统(以及其他软件),从这上面可以启动 OS,而不用再进行漫长的安装过程。大部分都是基于 Linux 内核的(但是也有一些 LiveCD 是为其他操作系统准备的)。它在工作时将这些文件放到一个 RAM 磁盘上(这样就减少了应用程序可以使用的 RAM 数量,从而会降低系统的性能,但是不要忘了,我们的目标是评估系统的安全性)。一旦取出 LinveCD 并重新启动系统之后,原始的系统就恢复了。有些 LiveCD 上还提供了一个安装工具,使用它可以将系统安装到硬盘或 USB 磁盘中;大部分这种 LiveCD 都可以访问内部/外部硬盘、磁盘和闪存上的信息。

syslinux 用来启动基于 Linux 的 LiveCD,以及 Linux 软盘。对于 PC 来说,可启动 CD 通常遵守 El Torito 规范,这会将磁盘上的某个文件(可能是隐藏的)当作一个软盘映像来使用。很多 LiveCD 都使用了一个压缩的文件系统映像,其中通常提供了 cloop 压缩 loopback 驱动器来有效地双倍利用存储能力。

市场上有一些模拟器,可以用来试验 LiveCD,而不用将其刻录到 CD 上并在计算机上启动。支持最广泛的 i386 模拟器是 VMWare;其他模拟器还有 Qemu、PearPC 和 Bochs,它们都可以用来模拟 x86 和/或 PowerPC(R) 平台;但是根据它们所采用的模拟方法不同,它们的速度要比一些商业化的版本慢。另外一个商业版本的模拟器是 VirtualPC。

现在让我们来看一看部分 LiveCD 的安全工具。




Auditor
Auditor 安全工具是基于 Knoppix 的。由于不用安装,我们只需要将 CD 放到 CD-ROM 中几分钟就可以开始使用分析平台了。

Auditor 的主要开发者 Max Moser 指出 LiveCD 环境的菜单结构是它的最大优点。即使用户不清楚工具的名字,也可以使用正确的工具。除了大约 300 个工具之外,Auditor 安全包还包含了一些有关标准配置和密码的培训信息,以及各种不同地区和语言的单词列表,大约有 6400 万条。CD 中还包含了一些辅助工具,例如 Web 浏览器、文本编辑器以及一些可以用来创建分析报告的图形工具。

您可以使用 auditor-hdinstall 脚本将 Auditor 安装到硬盘上。您应该有 2 GB 的硬盘空间。安装程序不会为您创建分区,因此要确保提前进行分区和格式化。

LiveCD 的自动配置脚本可以简化对各种硬件的使用。Moser 指出无线工具(例如 Wellenreiter 和 Kismet)都可以使用自动硬件识别工具进行配置,这样就避免了在使用无线网卡时所需要的那些烦人的配置任务。

图 1. Auditor 工具


Whoppix
与 Auditor 类似,WhiteHat Knoppix 也是一个穿透测试(pengtest)工具。Whoppix 的诞生是由于其开发者 Muts 被要求对一个大型组织进行一次内部穿透测试。他解释说,“Pentest 的指导原则是不允许我将其安装在自己的笔记本上,也不能修改组织内部的任何客户机的配置,就像在本地计算机上安装软件一样。”

Whoppix 是一个穿透测试的天堂。其中包含了很多有用的工具,以及大量知识库(黑客用来获得对您的系统的访问权限的方法)。尽管 Muts 并不非常喜欢 CD 中的很多文档,但是他打包时所采用的方法却是惟一的。Muts 并没有对这些工具进行简单的解释,而是与其他几个非常活跃的成员一起为这些工具提供了几个很小的 flash 演示视频图像,这样即使一个新手也可以明白如何攻击一个未经仔细配置的 msql 数据库

到版本 2.6 SP1 为止,Whoppix 都是使用缺省的 knoppix 内核。新的版本(目前尚未发布)采用了一个定制的 2.6.11.5 版本的内核,其中提供了对 WiFi 更好的支持(Orinoco 补丁)。

尽管您可以将 Whoppix 安装到硬盘上,但是 Muts 并没有对此提供强有力的支持。他的想法是提供一个可移植的 pentest 平台,您可以直接利用这个平台,而不用再经历懒惰的黑客计算机的设置过程。“我的长期目标之一是为这些工具编写文档,并可能会出版一本叫做 'Whoppix hack ' 的书籍(非常类似于 'knoppix hacks'),” Muts 说。 “我正在寻找 Whoppix 的一些通用帮助,这既包括技术层面的,也包括其他的。如果有人愿意在这些文档上为我提供一些帮助,那真是太好了。”

图 2. Whoppix 工具


Knoppix-STD
这个发行版本也是一个定制过的 Knoppix 版本,它重点关注信息安全工具,因此就得名 STD(Security Tools Distribution)。 Knoppix-STD 目前由 Mark Cumming 进行维护,从最初他就是一名非常活跃的贡献者。 Cumming 这样解释 Knoppix-STD 的目标以及它与其他类似项目的区别:“随着所有的工具都开源之后,有很多工具所做的都是同样的事情;安全 CD 也不例外。从头开始,STD 的设计就不是用户友好的;这就是说,我们并不会迎合大众化的口味。实际的情况是我们使用 Linux 作为实现最终目的的一种手段;STD 是关于安全性工具的一套方案,而不是一个 Linux,尽管我们有很多 Linux 的爱好者。STD 试图尽量远离喧嚣声。我们并非没有 xwindows,但是如果有一种简单的终端方法可以实现所需要的功能,那么我们就使用这种方法;我们不会仅仅是出于兴趣就开发一个 GUI。我们并不关心要确保这是实现某种功能所特有的唯一工具;实际上,我们计划包含目前可以使用的所有工具。”

STD 已经为那些对安全性感兴趣的人们建立了一个教学工具,这意味着其中包括很多的文档。每个工具集都有自己的文档目录。您可以在 /usr/bin 中每个相关的工具集目录中访问这些工具。您会发现“粘蜜罐”、防火墙、IDS 以及一些网络工具可帮助您更好地映射异构网络。
“现在我们正在建立一个开发团队机构来继续发展 STD 项目。我们试图从 ‘一个人做所有的事情’ 这种模式转换到一种更加开放的开发环境中,它可以组织成几个单独的小组,每个小组都具有自己的组长。这样开发一个 LiveCD 就可以利用开发和编译 LiveCD 发行版的自然特性了。我们也不需要有实际硬件和带宽基础设施来支持 CVS 等。” Cumming 解释说。他承诺说将来的版本会与现有的版本有显著的区别,并对 WiFi 提供更好的支持。“将来,我们将开发对少量无线网卡的支持。我们需要对那些只购买了 9.99 美元最便宜网卡的用户提供支持,这种支持的份量占据了我们开发的大部分时间。” Cumming 说。

您也可以将 STD 安装到硬盘上,这可以使用普通的 Knoppix hd-install 脚本实现,默认是包含这个脚本的。STD 进行了很大的尝试来帮助用户修正问题,但是当很多新用户选择 RedHat 桌面系统来直接替换 Knoppix 之后,他们就失去了官方支持。

STD 论坛非常活跃,如果您希望深入了解 Knoppix-STD,这是个好地方。

图 3. Whoppix 中的缺陷测试


PHLAK
PHLAK (Professional Hacker Linux Assault Kit)是 Morphix 的一个派生版本。根据 Morphix 的模块化特性,用户可以使用很小的模块来添加自己的工具/设置,而不用换出整张 CD。Morphix 的所有开发特性在 PHLAK 中都可以使用。

“我们也可以在 PHLAK 中添加一些教育内容。用户可以浏览文档来学习有关安全性的内容,以及如何使用这些工具,”Shawn Hawkins 解释说,他是 PHLAK 的开发人员之一,同时也是 Web 管理员。/usr/share/doc 下面的文档大概有 118 MB。这里存放着有关各种安全工具的信息,分为 13 类,包括分析、认证、审计、扫描和隧道。还有有关缓冲区溢出、防火墙、入侵检测等更多内容。“我们在 0.2-1 中所添加的另一个东西是 XPde,我们称之为 'sneaky',原因非常显然(使用了一个伪 Linux 发行版)。当然,我们还添加了一些自己的东西,整个主题,其他工具,等等,” Hawkins 说。

目前正在开发的 0.3 版本采用了新的 Morphix 基础和 2.6 版本的内核。Hawkins 还许诺说要提供更好的无线支持,Morphix 的新硬盘安装程序、更多文档以及一些新的安全工具。

您可以使用 Morphix 0.5Pre4 中提供的新安装程序脚本将 PHLAK 安装到硬盘中。它已经为满足 PHLAK 的要求进行了一些修改,大约会拷贝 1.5 到 2.0 GB 的数据。

在长期运行过程中,您可能期望使用一个精简版本的 PHLAK,它可以安装在一个 128 MB 或 256 MB 的 USB 闪存上。Hawkins 还讨论了有关在将来的 PHLAK 发行版本中包含一个新文件系统 unionfs 的问题,这个文件系统让那些从 CD 引导的用户可以对文件系统进行写操作。虽然这不会将用户的信息保存到 CD 上,但是可以使用 apt-get 进行升级,更新 nessus 插件,以及需要对这个文件系统具有写权限的任何事情。

图 4. PHLAK 中的文档





结束语
尽管所有人都同意对系统或网络进行安全评估是一个关键问题,但进行彻底的评估是一件非常耗时的任务,可能应该与其他测试(例如性能测试)一起进行;迅速检查系统缺陷的能力也是一个非常有用的工具,这 4 种 LiveCD 形式的安全评估包可以解决这一问题。




参考资料
学习
- 您可以参阅本文在 developerWorks 全球站点上的
英文原文

- 试用本文中讨论的 LiveCD:
-
Auditor 安全工具集
-
WhiteHat Knoppix 穿透测试工具
-
Knoppix-STD
-
Professional Hacker Linux Assault Kit,Morphix 的一个派生产品
-
- “
使用 Linux LiveCD”(developerWorks, 2004 年 7 月)介绍了如何使用 LiveCD 的背景。

- “
让 Linux 更安全” (developerWorks, 2004 年 7 月),这是一个由 3 部分组成的系列文章,介绍了如何安全地规划、设计、安装、配置和维护运行 Linux 的系统。

- 请访问
developerWorks Linux 专区,可以找到为 Linux 开发人员准备的更多资源。

获得产品和技术
-
订购免费的 SEK for Linux,这是 2 张 DVD,其中包含了最新的 IBM 在 Linux 平台上的试用版软件,包括 DB2(R)、Lotus(R)、Rational(R)、 Tivoli(R) 和 WebSphere(R)。

-
IBM 试用版软件 可以帮助您构建下一个 Linux 平台上的开发项目;这些试用版软件可以从 developerWorks 上直接下载。

讨论
- 通过参与
developerWorks blogs 来参与 developerWorks。

关于作者

在过去 5 年中,Mayank Sharma 一直从事技术方面的写作,尤其是免费和开放软件方面。他帮助创办了南亚最主要的 FLOSS 月刊 LINUX For You(作为其助理编辑),现在正忙于整理专门论述本地化、培训和 FLOSS 迁移的基于 Web 的出版物。除了写作之外,Mayank 还喜欢研究骇客技术;他最新的贡献是用于 Utkarsh 本地化项目的一个安装程序。虽然他正在为计算机科学学位而努力,但对于 Formula One 赛车,他依然兴趣不减。

原文转自:http://www.ltesting.net