首先,LIDS是不能阻止一次入侵的,黑客连接上主机通过缓冲区溢出的方式获得系统的root权限。一旦系统没有黑客入侵,我们看看LIDS是如何使破坏降到最低的。
LIDS通过CAP_LINUX_IMMUTABLE选项可以防止特洛尹程序被写入到/bin,/usr/bin,/usr/sbin和/usr/lib目录中。这些目录我们一般都会标识为不可变的(chattr +i),因而也不会被修改。我们可以注意到,就算不使用LIDS,也可以通过chattr +I命令来标识目录为不可变的,但是如果是通过LIDS以后,即使是root也不能篡改不可变标识位。类似的,如果文件通过chattr +I被标识为,touck -t这个命令也会失败。甚至第一行的"mkdir /etc/lib"这个命令也会失败,如果我们标识文件为不可读的话。
LIDS不能防止黑客入侵,但是可以防止入侵的黑客在侵入后进行很大的系统破坏。一个后门程序可以被安装上系统,但是没有特洛亦版本的ps,netstat和pstree能够很早的发现这个后门进程,然后kill之。如果没有LIDS,我们不可能知道黑客通过这个后门程序会做一些什么事情,我们唯一能够进行挽回的工作就是重装系统。
OpenWall和LIDS----额外的层
另外一个和LIDS相似的系统是OpenWall工程。OpenWall工程在很多地方和LIDS不一样,有一个OpenWall的特别的补丁就是使栈区为不可执行。下面是摘自OpenWall的README文档里面的申明:
大多数缓冲区溢出攻击都是基于覆盖一些随意的程序片段中的函数返回值在堆栈中的地址,如果堆栈为不可执行,那么缓冲区溢出的弱点将会变得很难攻击。另外一种缓冲区溢出的方式是在libc中指出一个函数的返回地址,通常是system()。这个补丁通过修改mmap()化的共享库,使其总是一个零字节的文件。这样使其不能再指定一些数据,在很多攻击中不得不使用ASCIIZ字符串。
最近,在LIDS的网上上有一些完整的LIDS+OpenWall的内核补丁,这样可以提供LIDS和OpenWall都具备的特性。
在Linux系统中,通过使用这一系列的多层的安全措施,可以防止很大范围的攻击,同时还可以防止入侵或者篡改。系统被黑客入侵口就是网络接口,在网络接口,系统内核上我们都可以防止他人的入侵。意识到系统中的一些潜在的安全漏洞。任何运行在系统上的守护进程或者服务,不管是root用户还是非root用户运行的,都能够成为一个潜在的安全威胁。充分准备好面对这些威胁。
入侵监测系统软件
突出的IDS厂商包括Axent,ISS和Platinum Technology。在你选择产品时,请充分考虑哪一款产品更适合你的公司。有些产品具有优秀的图形界面,很容易使用。其它产品可能更具有扩展性。下列是部分厂商列表:
·Axent Intruder Alert(http://www.axent.com/)Cisco NetRanger(http://www.cisco.com/)
·ISS RealSecure(http://www.iss.net/)
·Computer Associates’ eTrust Intrusion Detection(formerly SessionWall 3)
·Computer Misuse Detection System(http://www.cmds.net/)
·Network Flight Recorder(http://www.nfr.com)
·Network Associates’ CyberCop Monitor(http://www.networkassociates.com)
Intruder Alert
Intruder Alert(ITA)是使用管理者/代理结构的功能强大的产品。管理者和代理可以运行于UNIX,NT和Novell网络中。ITA的第一个优点是它可以在许多网络环境中应用。由于公司很少只应用单一厂商的产品,所以你选择的IDS应该可以适用于尽可能多的厂商的产品。
ITA的第二个优点是其分布式的管理结构。ITA软件包由两个服务和三个应用程序组成:
·ITA Manager(充当服务,守护进程或Novell的可装载的模块)
·ITA Agent(充当服务,守护进程或Novell的可装载的模块)
·ITA Admin(用来配置代理的应用程序)
·ITA View(用于查询代理的程序)
·ITA Setup(从管理者域中添加和删除代理的程序)
ITA和防火墙
防火墙会产生其它的连接问题。如果你试图连接处于防火墙保护下的代理,通常会因为防火墙只允许某些流量通过而失败。为了解决上述问题,请为该连接定义防火墙规则。
定义策略和建立规则
一旦你定义了策略,便可以开始使用它。你可以观看在Policy Library tree下的策略。然而,这个列表只是提供了潜在的策略。如果你希望更改工作中的代理,则点击活动的管理者图标然后是从Policy Library tree起源的策略。
ITA View分三次列出一些或全部的策略。不要对这种重复感到迷惑:程序列出了活动的策略和任何你可能使用策略,还列出至少两个域的策略:缺省的所有代理和缺省的NT。第三个tree列出了你可能增添到缺省域中的策略。当然,你可以重命名这些缺省的域,也可以增加新的域。第四个tree列出了事先定义好的策略,你可以剪切并粘贴到策略库中,并激活它们。在观看Active Policies tree时你无法看到特殊的规则短语和条款。你可以在Policies tree的管理者名称(如Student10)下看到这些信息。
规则的建立
同eTrust Intrusion Detection一样,ITA的规则也包含一些子元素。这些对确定ITA监测哪些网络和主机以及采取哪些行为有所帮助。所有ITA的策略都包含三个部分:选择、忽略和动作。
如果你希望确定一种特别的活动,例如NetBus连接或Land攻击,则 Select元素来定义。ITA针对你定义好的规则来实施特殊的行为。一旦你使用一个Select段并定义了事件,ITA就知道这个事件
网络安全讲座之八:IDS系统
0
相关文章