CompanyLOGO第7章操作系统安全第三部分系统安全机制CompanyLogo2导读目前服务器常用的操作系统有两类:WindowsNT/2000/2003Server、Unix/Linux。这些操作系统都是符合C2级安全级别的操作系统,但是都存在不少漏洞,如果对这些漏洞不了解,不采取相应的措施,就会使操作系统完全暴露给入侵者。本章将讨论这两类操作系统一些基本的安全问题。CompanyLogo3ContentsUnix/Linux系统的安全2Windows2000系统的安全1CompanyLogo4Windows2000系统的安全WindowsNT系列操作系统具有的优点:(1)支持多种网络协议;(2)内置Internet功能;(3)支持NTFS文件系统.CompanyLogo57.1.1初级安全配置方案(1)物理安全(7)更改默认权限(2)停止Guest帐号(8)设置安全密码(3)限制用户数量(9)屏幕保护密码(4)创建多个管理员帐号(10)使用NTFS分区(5)管理员帐号改名(11)运行防毒软件(6)陷阱帐号(12)备份盘的安全图7-1Guest帐号设置图7-2共享权限设置CompanyLogo87.1.2中级安全配置方案(1)操作系统安全策略(6)开启帐户策略(2)关闭不必要的服务(7)备份敏感文件(3)关闭不必要的端口(8)不显示上次登录名(4)开启审核策略(9)禁止建立空连接(5)开启密码策略(10)下载最新的补丁控制面板→管理工具→本地安全策略图7-3本地安全设置图7-4选择TCP/IP筛选图7-5设置端口控制面板→管理工具→本地安全策略图7-6选择审核策略图7-7设置审核策略“开始→运行”中输入“Eventvwr.msc”,定位到“事件查看器→安全性”查看事件日志CompanyLogo15实战任务:商业间谍做了些什么?任务描述:阿桂是一家IT公司的网管,最近,老板发现一些商业秘密不胫而走,他想在不让员工们知道的前提下,监控手下人什么时候访问过或使用了公司电脑中指定的磁盘或文件夹中的资料,比如:服务器“D:\data”文件夹。老板觉得小何最可疑,于是决定从监视他入手。CompanyLogo16分析:公司员工每人都分配有一个不同账户(记得不能给他们修改策略设置的权限!),只要监视选定账户或组对目标访问时,需要监视目标的访问权和执行权即可。开始前首先在“控制面板→文件夹选项→查看”标签下取消“使用简单文件共享”。CompanyLogo17第一步:在“审核策略”中双击右侧的“审核对象访问”,勾选“成功”,确认操作并退出编辑器。右击目标磁盘或文件夹选择“属性”,切换至“安全”选项卡,单击“高级”,切换至“审核”标签。第二步:单击“添加”,输入小何使用的用户名,因为小何属于普通用户组(users),所以输入“计算机名\users”,单击“确定”。这时会弹出审核项目选择窗口,因为要监视小何对目标的“访问权和执行权”,因此要勾选“遍历文件夹/运行文件”,确定所有操作。CompanyLogo20第三步:这时策略已经完成了。现在可以试试是否有效。打开事件查看器,右击“安全性”选择“清空所有事件”后注销系统。这时,小何登录此系统,访问一下“D:\data”并执行其中一个文件(比如运行了存放在该目录底下的“MSN6.2.exe”文件)。注销系统后,阿桂用管理员身份登录,查看一下日志,是不是清楚地记录了刚才小何的访问行为(见图)?CompanyLogo227.1.3高级安全配置方案(1)关闭DirectDraw(7)使用智能卡(2)关闭默认共享(8)使用IPSec(3)禁用Dump文件(9)禁止判断主机类型(4)锁住注册表(10)禁止Guest访问日志(5)关机时清除页面文件(11)数据恢复软件(6)禁止软盘光盘启动图7-8关闭默认共享图7-9禁用Dump文件修改注册表CompanyLogo26ContentsWindows2000系统的安全1Unix/Linux系统的安全2CompanyLogo277.2.1超级用户安全管理超级用户在安全管理方面需要注意的地方包括:(1)在一般情况下最好不使用root账号,应使用su命令进入普通用户账号。(2)超级用户不要运行其它用户的程序。(3)经常改变root口令。(4)精心地设置口令时效。(5)不要把当前工作目录排在PATH路径表的前面,以避免木马程序的入侵。CompanyLogo287.2.1超级用户安全管理(6)不要未退出系统就离开终端。(7)建议将登录名root改成其它名称。(8)注意检查不寻常的系统使用情况。(9)保持系统文件的完整性。(10)将磁盘的备份存放在安全的地方。(11)确保所有登录账号的口令都不为空。(12)启动记账系统。CompanyLogo297.2.2用户帐号安全管理保证系统有一个安全的/etc/passwd文件是十分必要的,维护该文件时应注意以下问题:(1)尽量避免直接修改/etc/passwd文件。(2)在用户可以容忍的情况下,尽量使用比较复杂的用户账号名。(3)保证passwd文件中没有口令相同的用户账号。(4)保证passwd文件中每个用户的口令字段不为空。CompanyLogo307.2.2用户帐号安全管理(5)注意系统特殊用户使用的Shell字段,保证他们使用专用程序,而非一般用户的Shell。(6)除非在必要的情况下,最好不要使用组口令。(7)对于新用户最好先为之提供rsh(RestrictedShell),让他们在受限的环境中使用系统。(8)当一个账号长时间不用时,可通过记账机制发现该账号,并将该账号查封。CompanyLogo317.2.3用户口令的管理为保证用户口令安全必须注意以下几点:(1)不要将用户口令写下来;(2)用户在输入口令时,应避免被别人看到;(3)保证用户一人一个口令,避免多人使用同一个账号;(4)不要重复使用同一口令;(5)不要在不同系统上使用同一口令;(6)不要通过网络或Modem来传送口令。CompanyLogo327.2.4文件和目录的安全文件和目录权限的管理涉及重要目录的安全问题,包括以下目录:/bin、/boot、/dev、/etc和$HOME。/bin目录保存引导系统所需的全部可执行程序及常用的命令。该目录只允许超级用户进行修改。同时,应把该目录设置在PATH环境变量的最前面。/boot用来存放系统初启时所需的一些数据和文件。如该目录被破坏,系统就不能启动。CompanyLogo337.2.4文件和目录的安全/dev目录包含有链接硬件设备的文件,它的存取权限应当是775,并且应属root所有。设备文件使用权限设置不当,能给系统安全带来影响。例如/dev/mem是系统内存,用cat命令就可以在终端上显示系统内存中的内容。/etc目录下的passwd、group、shadow、inittab、cshrc和xinitrc等文件是系统正常工作时所用的。大多数情况下,/etc中的文件是黑客首选的攻击目标。$HOME目录是各个用户的主目录,一般位于/home目录下。该目录的名称一般与用户的登录名相同。超级用户的主目录在/root下。CompanyLogo347.2.5关于SUID程序当Unix/Linux中的一个进程执行时被分别赋予4个ID号,分别为实际UID(realuserID)和有效的UID(effectiveuserID)、实际GID(realgroupID)和有效的GID(effectivegroupID)。实际ID是在登录过程中建立的用户ID,有效的ID用于确定该进程对文件的存取许可。CompanyLogo357.2.5关于SUID程序$ls-l/etc/passwd-rw-r--r--1rootroot1939Oct806:00/etc/passwd我们看到/etc/passwd文件是不允许普通用户修改的,但一般用户运行passwd命令却能修改自己的口令。再看看/usr/bin/passwd命令文件:$ls-l/usr/bin/passwd-r-s--x--x1rootroot1463Mar142002/usr/bin/passwd我们可以看到文件主权限部分的x位被一个s代替了。当一个UID为101的用户执行passwd命令改变自己的口令时,该进程的p_uid赋值为101,而因为passwd是SUIDroot程序,所以它的p_suid有效ID值则被赋值为0(root的UID)。CompanyLOGO