频道栏目
首页 > 安全 > 系统安全 > 正文

网络欺骗方法及攻防实例

2006-03-12 02:25:39           
收藏   我要投稿

诱敌深入是一门很实用的战术,古今中外,很多军事家、政治家、企业家都对这个战术津津乐道,在网络攻防中也不例外,系统管理员也会用到这样的战术。由于每个网络系统都有安全方面的弱点,如果它的价值很高的话,这些弱点就有可能被入侵者利用。通常,人们会主动去弥补这些漏洞或者缺陷,如果系统管理员有一手的话,完全可以使入侵者相信系统存在安全缺陷,并将其引向这些错误的资源,也就是“诱敌深入”。当然,也需要在“知己知彼”的基础上才能“百战百胜”。管理员还可以跟踪入侵者的行为,在入侵者之前修补系统可能存在的安全漏洞。这可以形象地比喻为“牵着牛鼻子走路”。
一、网络欺骗方法探幽
网络管理员和入侵者在工作上永远是不相容的两个派别,至于工作之外是什么角色就不好说了。实践过程中,我们可以用逆向的思维来猜测入侵者的进攻技术和意图,牵着他的“牛鼻子”,按照我们给他设计好的意志进行选择,并且逐步消耗他的资源。这样,就会使入侵者感到要达到期望的目标还是具有一定挑战性的。一般来说,网络欺骗的方法可以从以下几个方面来考虑。
1、诱饵:Honey Pot和分布式Honey Pot
最早采用的网络欺骗是Honey Pot技术,Honey Pot就像一个诱饵,它将少量的有吸引力的目标(即Honey Pot)放在让入侵者很容易发现的地方,使之落入圈套。其中采用的技术手段很多,通常包括安插错误信息和隐藏等。前者包括重定向路由、伪造假信息和设置圈套,后者包括隐藏服务、多路径和维护安全状态信息机密性。这样就可以使入侵者将技术、精力集中到Honey Pot而不是其他真正有价值的正常系统和资源中,因此这个诱饵必须做的尽量“美味、可口”。
 
尽管Honey Pot技术可以迅速切换,但是,对稍高级的网络入侵,Honey Pot技术就作用甚微了。因此,分布式Honey Pot技术便应运而生,它将欺骗(Honey Pot)散布在网络的正常系统和资源中,利用闲置的服务端口来充当欺骗,从而增大了入侵者遭遇欺骗的可能性。分布式Honey Pot技术有两个直接的效果,首先是将欺骗分布到更广范围的IP地址和端口空间中,其次是增大了欺骗在整个网络中的百分比,使得欺骗比安全弱点被入侵者扫描器发现的可能性增大。
 
分布式Honey Pot技术也不是十全十美的,它的局限性体现在三个方面:一是它对穷尽整个空间搜索的网络扫描无效;二是只提供了相对较低的欺骗质量;三是只相对使整个搜索空间的安全弱点减少。而且,这种技术的一个更为严重的缺陷是它只对远程扫描有效。如果入侵已经部分进入到网络系统中,处于观察(如嗅探)而非主动扫描阶段时,真正的网络服务对入侵者已经透明,那么这种欺骗将失去作用。
2、真假“李逵”:空间欺骗技术
计算机系统具有多宿主能力(multi-homed capability),就是在只有一块以太网卡的计算机上能实现具有众多IP地址的主机,实际上,现在已有研究机构能将超过4000个IP地址绑定在一台运行Linux的PC上,而且每个IP地址还具有它们自己的MAC地址。这项技术可用于建立填充一大段地址空间的欺骗,且花费极低。欺骗空间技术就是通过增加搜索空间来显著地增加入侵者的工作量,从而达到安全防护的目的。这样许许多多不同的欺骗,就可以在一台计算机上实现。当入侵者的扫描器访问到网络系统的外部路由器并探测到这一欺骗服务时,还可将扫描器所有的网络流量重定向到欺骗上,使得接下来的远程访问变成这个欺骗的继续。
 
从防护的效果上看,将网络服务放置在所有这些IP地址上将毫无疑问地增加了入侵者的工作量,因为他们需要决定哪些服务是真正的,哪些服务是伪造的,特别是这样的4万个以上IP地址都放置了伪造网络服务的系统。而且,在这种情况下,欺骗服务相对更容易被扫描器发现,通过诱使入侵者上当,增加了入侵时间,从而大量消耗入侵者的资源,使真正的网络服务被探测到的可能性大大减小。
 
当然,采用这种欺骗时网络流量和服务的重定向必须严格保密,因为一旦暴露就将招致攻击,从而导致入侵者很容易将任一已知有效的服务和这种用于测试入侵者的扫描探测及其响应的欺骗区分开来。
3、用户信息迷惑:组织信息欺骗和多重地址转换
面对网络攻击技术的不断提高,一种网络欺骗技术肯定不能做到总是成功,必须不断地提高欺骗质量,才能使入侵者难以将合法服务和欺骗区分开来。多重地址转换和组织信息欺骗能有效地迷惑对手。
 
如果组织的DNS服务器包含了个人系统拥有者及其位置的详细信息,那么你就需要在欺骗的DNS列表中具有伪造的拥有者及其位置,否则欺骗很容易被发现。而且,伪造的人和位置也需要有伪造的信息如薪水、预算和个人记录等等。因此,如果某个组织提供有关个人和系统信息的访问,那么欺骗也必须以某种方式反映出这些信息。
 
另外,在信息迷惑上,地址的多次转换能将欺骗网络和真实网络分离开来,这样就可利用真实的计算机替换低可信度的欺骗,增加了间接性和隐蔽性。其基本的概念就是重定向代理服务(通过改写代理服务器程序实现),由代理服务进行地址转换,使相同的源和目的地址像真实系统那样被维护在欺骗系统中。
4、网络信息迷惑:网络动态配置和网络流量仿真
真实网络是随时间而改变的,如果欺骗是静态的,那么在入侵者长期监视的情况下就会导致欺骗无效。因此,需要动态配置欺骗网络以模拟正常的网络行为,使欺骗网络也像真实网络那样随时间而改变。为使之有效,欺骗特性也应该能尽可能地反映出真实系统的特性。例如,如果办公室的计算机在下班之后关机,那么欺骗计算机也应该在同一时刻关机。其他的如假期、周末和特殊时刻也必须考虑,否则入侵者将很可能发现欺骗。
 
产生仿真流量的目的是使流量分析不能检测到欺骗。在欺骗系统中产生仿真流量有两种方法。一种方法是采用实时方式或重现方式复制真正的网络流量,这使得欺骗系统与真实系统十分相似,因为所有的访问连接都被复制了;还有一种方法是从远程产生伪造流量,使入侵者可以发现和利用。
 
在欺骗与被欺骗的过程中,对双方的智力考验要求是很高的。如果在其中某个环节的判断上出了问题,就可能反而陷入别人的圈套。因此,必须对相关的欺骗手法有一定的了解,这样就能在实践操作中做出准确的判断。下面,我们来看一个“诱敌深入”的攻防实践。
二、欺骗实例之“诱敌深入”
相信很多朋友都知道,邮件服务器软件Sendmail中有个安全漏洞,入侵者如果熟悉邮件服务器软件Sendmail,他肯定会试探着攻击。据说只要收到被做过手脚的邮件,邮件服务器设备管理员的权限就有可能被篡夺。由于可以通过邮件进行攻击,因此很难用防火墙等防范。尤其是基本上所有版本的Sendmail都受到影响,因此我们决定使用邮件服务器软件Sendmail作为诱饵。在这个实例中,将会使用到上面所介绍的一些欺骗技术。
1、关于Sendmail的一些知识
Sendmail作为 Linux、BSD和其他Unix平台的“标配”,被广泛使用。使用Sendmail很重要的一条是,必须记得随时了解他的站点动态,在http://www.sendmail.org这个网站公布了关于sendmail的一些最新版本和相关信息,http://www.sendmail.org/8.13.0.Alpha0.html是目前的最新测试版本。作为一个相当普及的软件,再加上众多的相关软件支持,配置Sendmail可以算得上系统管理员的基本技能之一了。
Sendmail 主要的配置文件如下:
/etc/sendmail.cf是Sendmail 核心配置文件;
/etc/aliases是邮件别名文件;
/etc/mail/relay-domains用于设定可RELAY的域名;
/etc/mail/access用来设定处理来信的方式如RELAY等;
在默认情况下,也就是安装Sendmail服务器不做任何设置的情况下,则只能在本机上收发邮件,网络上其它主机不能向该SMTP服务器发送邮件。关于Sendmail的具体安装配置过程,我们可以通过http://www.worldhello.net/doc/email_howto/sendmail.html这个网址得到比较满意的答案。
2、序幕
为了给黑客们一个惊喜,我们故意留出了一个DUBUG漏洞,张开网后,就等鱼儿上钩了。大概一个多月都没有动静,终于,在我们无意中间接公布了一些系统的消息后,发现系统出了异常的日志是在2004年2月14日,可能是由于情人节的落寞想找个地方来发泄,一个黑客发现了我们公布的计算机的漏洞,试图获得我们的password文件,顺水推舟,我们就给他送了一份人情,很快我们就发现在口令文件 passwd 中增加了一个 UID 为 0 的账号。
 
这个黑客十分有耐心,手段也很高明。一切在意料之中,我们在机器的/tmp目录下又发现了一个程序,而且只要运行这个程序,就会轻易得到用户权限。根据我们自己掌握的情况,这种方法在网上几乎是最受欢迎的了。不过,对于系统用户来说,定期清理/tmp下的文件是很正常的,因此即使我们清理这个文件,他也不会感到意外。我们打开在 /tmp 目录下放置 的C源程序进行了研究:
<++> backdoor/backdoor2.c
#include 
main()
{
system("cp /bin/sh /tmp/fid");
system("chown root.root /tmp/fid");
system("chmod 4755 /tmp/fid");
}
<-->
  

很明显,这是一个后门程序,通过这个程序可以获得一些关于根用户的相关属性,这对黑客来说是一个刺激,对我们管理员来说,既然要“诱敌深入”做个测试,就肯定也存在一定挑战了。而现在我们所要做的,就是引诱一个黑客到一个我们设计好的环境中,记录下来他的所有动作,研究其行为,并提醒他的下一个目标作出防范。除了在机器上设置记录日志并隐藏这些日志,我们还添加了一些虚假的服务在系统上。由于每天定时产生的日志量非常大,为了有针对地了解攻击动向,我们做了一个script文件用来检索每天的日志

相关TAG标签 实例 方法 网络
上一篇:网络攻击机制和技术发展综述
下一篇:PHP配置之实现安全的两个重点
相关文章
图文推荐
文章
推荐
热门新闻

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站