|
知识路径: > 操作系统安全保护 > UNIX/Linux操作系统安全分析与防护 > UNIX/Linux操作系统安全防护(系统安全增强方法和流程、系统安全增强工具与产品、系统常见漏洞与解决方法等) >
|
相关知识点:33个
|
|
|
|
|
及时从应急响应安全站点获取UNIX/Linux系统漏洞公布信息,并根据漏洞危害情况,给系统安装补丁包。同时,在安装操作系统补丁前,必须确认补丁软件包的数字签名,检查其完整性,保证补丁软件包是可信的,以防止特洛伊木马或恶意代码攻击。在Linux中,可以用MD5Sum检查工具来判断补丁软件包的完整性。
|
|
|
|
最小化配置服务是指在满足业务的前提条件下,尽量关闭不需要的服务和网络端口,以减少系统潜在的安全危害。实现UNIX/Linux网络服务的最小化,具体安全要求如下:
|
|
|
|
|
|
|
. 在inetd.conf中,注销不必要的服务,比如finger、echo、chargen、rsh、rlogin、tftp服务;
|
|
|
|
|
在UNIX/Linux系统中,用户可以通过特殊的组合键而无须提供用户名和口令,就能以单用户身份进入系统。因此,针对这种威胁,一方面要尽量避免入侵者物理临近系统,另一方面要设置系统开机保护口令,阻止入侵者开机,从而达到保护系统的目的。开机保护口令由BIOS程序设置实现,这样当系统启动时,BIOS程序将提示用户输入密码。
|
|
|
|
UNIX/Linux系统中的弱口令是入侵者进行攻击的切入点,一旦口令被入侵者猜测到,系统就会受到极大的危害。因此,针对弱口令安全隐患,系统管理员通过口令破解工具来检查系统中的弱口令,常用的口令检查工具是John the Ripper。
|
|
|
John the Ripper是一个快速的口令破解工具,主要针对UNIX下的弱口令,支持的平台有UNIX、DOS、Linux、Windows。下面举例说明应用John工具破解UNIX弱口令的过程。在命令行方式下键入John,可显示它的使用方法,如下图所示。John提供多种参数模式来破解口令。可选的参数如下:
|
|
|
|
. -wordfile:FILE-stdin:字符清单模式,从文件或标准输入中读取字符串。
|
|
|
|
. -incremental[:MODE]:已选定破解模式的增强方式。
|
|
|
. -external:MODE:扩展模式或字符过滤。
|
|
|
. -restore[:FILE]:继续上次被中断的工作。John的工作中途被中断后,当前解密的进度存放在Restore文件中,可将Restore拷贝成一个新文件。如果参数后不带文件名,则John默认使用Restore文件。
|
|
|
. -makechars:FILE:制作字符表,如指定的文件存在,则会被覆盖。
|
|
|
|
. -test:测试本机上运行John破解密码的速度。
|
|
|
. -users:[-]LOGIN|UID[...]:只破解指定的用户,如root。
|
|
|
. -groups:[-]GID[...]:只破解指定组里的用户。
|
|
|
. -shells:[-]SHELL[...]:只破解能用shell的用户。
|
|
|
. -salts:[-]COUNT:只破解用户名大于COUNT的账号。
|
|
|
. -format:NAME:指定破解密码格式名。密码格式名有DES、BSDI、MD5、BF、AFS、LM。
|
|
|
. -savemem:LEVEL:启用内存保存,保存层次有1到3三层。
|
|
|
|
|
将需要的参数提供给John,执行命令john.exe password.lst shadow就可以开始破解,如下图所示。其中,shadow是目标UNIX系统的加密口令文件shadow,password.lst是口令字典文件名。
|
|
|
|
|
从上图中可以看到,已经破解了alias、cvs用户的口令,他们的口令分别是alias、cvs,这两个用户的口令与用户名相同。
|
|
|
|
一些UNIX/Linux系统带有默认账号,这些默认账号的口令又是为大多数人所知的,极可能成为攻击者进入系统的后门,因而留在系统中极为危险。因此,对这些默认账号最好的安全处理方式是禁用,或者更改口令。
|
|
|
|
在UNIX/Linux系统中,一些网络服务在设计时就缺乏安全考虑,存在安全缺陷,易导致系统受到侵害。例如,远程用户Telnet登录传送的账号和密码都是明文,使用普通的Sniffer软件就可以截获这些明文信息。而且,系统认证强度小,容易受到重放和完整性攻击。与Telnet一样,FTP有相同的安全问题。目前,针对Telnet、FTP的安全,一般采用SSH(Secure Shell)来增强,SSH提供认证、加密等安全服务,可以在两台或多台主机之间构造一条加密通道,保证通信安全。
|
|
|
|
tcp_wrapper是Wietse Venema开发的一个可用于各种UNIX平台的免费软件,tcp_wrapper正逐渐成为一种标准的UNIX安全工具,成为UNIX守护程序inetd的一个插件。通过tcp_wrapper,管理员可以设置对inetd提供的各种服务进行监控和过滤。
|
|
|
|
目前,支持UNIX/Linux系统的防火墙软件包有ipchains、iptables以及netfilter。利用这些防火墙软件包,UNIX/Linux系统可以过滤掉不需要的通信,而且可以从网络上限制远程访问主机,从而减少系统受到的侵害。
|
|
|
|
当建立新的UNIX/Linux系统后,应记录所有系统文件的硬件和软件信息,并形成一个系统文件基准信息库,以便日后检查系统文件的完整性变化,避免恶意程序的植入和修改。利用Tripwire或MD5Sum软件安全工具可以发现被篡改的文件。
|
|
|
. Tripwire是最为常用的开放源码的完整性检查工具,它能生成目标文件的完整性标签,并周期性地检查文件是否被更改。
|
|
|
. MD5Sum是文件完整性检查的有力工具,利用它可以方便地创建长度为128位的文件指纹信息,也可以利用它检查文件是否被修改过。
|
|
|
|
UNIX/Linux系统一般都支持LKM(Loadable Kernel Module)功能,但是留下了一个安全隐患,就是入侵者能编写可加载内核模块,例如rootkit,从而造成较大的系统危害性。针对LKM后门危害,除了利用完整性检查工具外,还可利用专用安全检查工具,例如Kstat、Chkrootkit、Rootkit Hunter。
|
|
|
|
UNIX/Linux系统的安全是动态的,对运行的系统进行实时监控有利于及时发现安全问题,做出安全应急响应。针对UNIX/Linux系统的安全监测,常用的安全工具有Netstat、lsof、Snort等。
|
|
|