文章导航:
网络高手请进
络安全如何使用Sniffer抓包/使用方法
随着Internet及电子商务的日益普及,Internet的安全也越来越受到重视。而在Internet安全隐患中扮演重要角色的是Sniffer和Scanner,本文将介绍Sniffer以及如何阻止sniffer。
大多数的黑客仅仅为了探测内部网上的主机并取得控制权,只有那些"雄心勃勃"的黑客,为了控制整个网络才会安装特洛伊木马和后门程序,并清除记录。他们经常使用的手法是安装sniffer。
在内部网上,黑客要想迅速获得大量的账号(包括用户名和密码),最为有效的手段是使用 "sniffer" 程序。这种方法要求运行Sniffer 程序的主机和被监听的主机必须在同一个以太网段上,故而在外部主机上运行sniffer 是没有效果的。再者,必须以root的身份使用sniffer 程序,才能够监听到以太网段上的数据流。
黑客会使用各种方法,获得系统的控制权并留下再次侵入的后门,以保证sniffer能够执行。在Solaris 2.x平台上,sniffer 程序通常被安装在/usr/bin或/dev目录下。黑客还会巧妙的修改时间,使得sniffer程序看上去是和其它系统程序同时安装的。
大多数 "ethernet sniffer"程序在后台运行,将结果输出到某个记录文件中。黑客常常会修改ps程序,使得系统管理员很难发现运行的sniffer程序。
"ethernet sniffer"程序将系统的网络接口设定为混合模式。这样,它就可以监听到所有流经同一以太网网段的数据包,不管它的接受者或发送者是不是运行sniffer的主机。 程序将用户名、密码和其它黑客感兴趣的数据存入log文件。黑客会等待一段时间 ----- 比如一周后,再回到这里下载记录文件。
一、什么是sniffer
与电话电路不同,计算机网络是共享通讯通道的。共享意味着计算机能够接收到发送给其它计算机的信息。捕获在网络中传输的数据信息就称为sniffing(窃听)。
以太网是现在应用最广泛的计算机连网方式。以太网协议是在同一回路向所有主机发送数据包信息。数据包头包含有目标主机的正确地址。一般情况下只有具有该地址的主机会接受这个数 据包。如果一台主机能够接收所有数据包,而不理会数据包头内容,这种方式通常称为"混杂" 模式。
由于在一个普通的网络环境中,帐号和口令信息以明文方式在以太网中传输,一旦入侵者获 得其中一台主机的root权限,并将其置于混杂模式以窃听网络数据,从而有可能入侵网络中的所有计算机。
二、sniffer工作原理
通常在同一个网段的所有网络接口都有访问在物理媒体上传输的所有数据的能力,而每个网络接口都还应该有一个硬件地址,该硬件地址不同于网络中存在的其他网络接口的硬件地址,同时,每个网络至少还要一个广播地址。(代表所有的接口地址),在正常情况下,一个合法的网络接口应该只响应这样的两种数据帧:
1、帧的目标区域具有和本地网络接口相匹配的硬件地址。
2、帧的目标区域具有"广播地址"。
在接受到上面两种情况的数据包时,nc通过cpu产生一个硬件中断,该中断能引起操作系统注意,然后将帧中所包含的数据传送给系统进一步处理。
而sniffer就是一种能将本地nc状态设成(promiscuous)状态的软件,当nc处于这种"混杂"方式时,该nc具备"广播地址",它对所有遭遇到的每一个帧都产生一个硬件中断以便提醒操作系统处理流经该物理媒体上的每一个报文包。(绝大多数的nc具备置成promiscuous方式的能力)
可见,sniffer工作在网络环境中的底层,它会拦截所有的正在网络上传送的数据,并且通过相应的软件处理,可以实时分析这些数据的内容,进而分析所处的网络状态和整体布局。值得注意的是:sniffer是极其安静的,它是一种消极的安全攻击。
通常sniffer所要关心的内容可以分成这样几类:
1、口令:
我想这是绝大多数非法使用sniffer的理由,sniffer可以记录到明文传送的userid和passwd.就算你在网络传送过程中使用了加密的数据,sniffer记录的数据一样有可能使入侵者在家里边吃肉串边想办法算出你的算法。
2、金融帐号:
许多用户很放心在网上使用自己的信用卡或现金帐号,然而sniffer可以很轻松截获在网上传送的用户姓名、口令、信用卡号码、截止日期、帐号和pin。
3、偷窥机密或敏感的信息数据:
通过拦截数据包,入侵者可以很方便记录别人之间敏感的信息传送,或者干脆拦截整个的email会话过程。
4、窥探低级的协议信息:
这是很可怕的事,我认为,通过对底层的信息协议记录,比如记录两台主机之间的网络接口地址、远程网络接口ip地址、ip路由信息和tcp连接的字节顺序号码等。这些信息由非法入侵的人掌握后将对网络安全构成极大的危害,通常有人用sniffer收集这些信息只有一个原因:他正在进行一次欺诈,(通常的ip地址欺诈就要求你准确插入tcp连接的字节顺序号,这将在以后整理的文章中指出)如果某人很关心这个问题,那么sniffer对他来说只是前奏,今后的问题要大条得多。(对于高级的hacker而言,我想这是使用sniffer的唯一理由吧)。
三、哪里可以得到sniffer
Sniffer是黑客们最常用的入侵手段之一。你可以在经过允许的网络中运行sniffer,了解它是如何有效地危及本地机器安全。
Sniffer可以是硬件,也可以是软件。现在品种最多,应用最广的是软件Sniffer, 绝大多数黑客们用的也是软件Sniffer。
以下是一些也被广泛用于调试网络故障的sniffer工具:
商用sniffer:
1 Network General.
Network General开发了多种产品。最重要的是Expert Sniffer,它不仅仅可以sniff,还能够通过高性能的专门系统发送/接收数据包,帮助诊断故障。还有一个增强产品"Distrbuted SnifferSystem"可以将UNIX工作站作为sniffer控制台,而将snifferagents(代理)分布到远程主机上。
2 Microsoft's Net Monitor
对于某些商业站点,可能同时需要运行多种协议--NetBEUI、IPX/SPX、TCP/IP、802.3和SNA等。这时很难找到一种sniffer帮助解决网络问题,因为许多sniffer往往将某些正确的协议数据包当成了错误数据包。Microsoft的Net Monitor(以前叫Bloodhound)可以解决这个难题。它能够正确区分诸如Netware控制数据包、NTNetBios名字服务广播等独特的数据包。(etherfind只会将这些数据包标识为类型0000的广播数据包。)这个工具运行在MS Windows平台上。它甚至能够按MAC地址(或主机名)进行网络统计和会话信息监视。只需简单地单击某个会话即可获得tcpdump标准的输出。过滤器设置也是最为简单的,只要在一个对话框中单击需要监视的主机即可。
免费软件sniffer
1 Sniffit由Lawrence Berkeley 实验室开发,运行于Solaris、SGI和Linux等平台。可以选择源、目标地址或地址集合,还可以选择监听的端口、协议和网络接口等。这个SNIFFER默认状态下只接受最先的400个字节的信息包,这对于一次登陆会话进程刚刚好。
2 SNORT:这个SNIFFER有很多选项供你使用并可移植性强,可以记录一些连接信息,用来跟踪一些网络活动。
3 TCPDUMP:这个SNIFFER很有名,linux,FREEBSD还搭带在系统上,是一个被很多UNIX高手认为是一个专业的网 络管理工具,记得以前TsutomuShimomura(应该叫下村侵吧)就是使用他自己修改过的TCPDUMP版本来记录了KEVINMITNICK攻击他系统的记录,后来就配合FBI抓住了KEVINMITNICK,后来他写了一文:使用这些LOG记录描述了那次的攻击,How Mitnick hacked Tsutomu Shimomura with an IP sequence attack
( ... niffer/shimomur.txt)
4 ADMsniff:这是非常有名的ADM黑客集团写的一个SNIFFER程序。
5 linsniffer:这是一个专门设计杂一LINUX平台上的SNIFFER。
6 Esniffer:这个也是一个比较有名的SNIFFER程序。
7 Solsniffer:这是个Solarissniffer,主要是修改了SunSniff专门用来可以方便的在Solair平台上编译。
8 Ethereal是一基于GTK+的一个图形化Sniffer。
9 Gobbler(for MS-DOS&Win95)、Netman、NitWit、Ethload...等等。
--------------------------------------------------------------------------------
如何使用DHCP snooping技术防御网络攻击
企业内部访问者与外部访问者的数量在不断变化,这增大了它所面对的安全威胁,而且内外访问的界线也在逐渐模糊。如果一个组织在设计网络架构时加入了
不安全的系统和协议,那么网络基础架构就可能有风险。例如,有时候一些2层协议的安全性就被忽视了,如动态主机配置协议(DHCP)。DHCP是一种辅助
协议,它工作在后台,大多数用户都不会注意到它的存在。事实上,这种没有得到重视的情况就意味着供应商也可能会忽略这种攻击。DHCP
snooping就是一种可用于防御许多常见攻击的防控技术。
DHCP可能受到几种不同方式的攻击,其中包括恶意DHCP服务器或本地交换网络的地址解析协议(ARP)污染。并非所有意外事件都属于恶意攻击。
举个例子来说,一位最终用户可能连接了一个启用DHCP的网络设备或路由器,结果就可能给其他用户分配一个无效的DHCP地址。另外,攻击者也可能发起了
一个资源耗尽的攻击,并且尝试用光所有的DHCP地址。危害更大的方法是,攻击者会主动尝试重定向用户的DHCP服务器请求。当然,这些只是促使您使用
DHCP snooping技术的一部分原因。
这种中间人攻击的机制要求攻击者创建自己的DHCP服务器。接下来,攻击者会广播伪造的DHCP请求,并且尝试用光DHCP范围内的所有DHCP地
址。结果,合法用户就无法从DHCP服务器获得或更新IP地址。然后,攻击者就开始用它的欺骗性DHCP服务器分配所抢占的DHCP地址,使它的地址成为
新的网关。接收到这些地址的最终用户就可能被重定向到攻击者,然后再通向互联网。这样它就盗用了网络连接。
上面的场景只是经典中间人攻击的另一种变化。这种技术需要将攻击者置于所攻击网络内部,从而让他能够窥探客户流量。或许您会认为这种攻击并不可怕,但是现在已经出现了许多专门发起这些攻击的工具,如Gobbler、DHCPstarv和Yersinia。
在现有交换机上创建DHCP snooping
DHCP snooping是通过现有交换机在数据链路层实现的,它可以对抗攻击,阻挡未授权DHCP服务器。它使2层协议交换机能够检测从特定端口接收的数据帧,然后检查它们是否来自合法的DHCP服务器。
这个2层处理过程包括几个步骤。首先,您需要在交换机上启用全局DHCP,然后再在各个虚拟LAN(VLAN)上启用DHCP snooping。最后,您还必须配置各个可信端口。
下面是一个启用DHCP SNOOPING的例子:
Switch(config)#ip dhcp snooping
Switch(config)#ip dhcp snooping vlan 30
Switch(config)#interface gigabitethernet1/0/1
Switch(config-if)#ip dhcp snooping trust
在这个例子中,交换机启用了全局DHCP snooping,然后再为VLAN 30启用DHCP
snooping。唯一可信的接口是gigabitEthernet1/0/1。DHCP
snooping可以帮助保证主机只使用分配给它们的IP地址,并且验证只能访问授权的DHCP服务器。在实现之后,DHCP
snooping就会丢弃来自未可信DHCP服务器的DHCP消息。
使用DHCP snooping防止ARP缓存污染
DHCP
snooping还可以跟踪主机的物理位置,从而可以防御(ARP)缓存污染攻击。它在防御这些攻击的过程中发挥重要作用,因为您可以使用DHCP
snooping技术丢弃一些来源与目标MAC地址不符合已定义规则的DHCP消息。管理会收到通过DHCP
snooping警报通知的违规行为。当DHCP snooping服务检测到违规行为时,它会在系统日志服务器上记录一条消息“DHCP
Snooping”。
DHCP snooping是实现2层协议流量安全性的第一步。恶意DHCP服务器不仅会导致网络问题,它们还可以被攻击者用于转发敏感流量和发起中间人攻击。如果还没有做好这些措施,那么一定要考虑实现这些防御措施,保证网络基础架构的安全性。
DHCP饿死攻击
通过利用伪造gobbler攻击软件的 MAC 地址来广播 DHCP 请求gobbler攻击软件的方式来进行。利用诸如 gobbler 之类的攻击工具就可以很容易地造成这种情况。如果所发出的请求足够多的话gobbler攻击软件,网络攻击者就可以在一段时间内耗竭向 DHCP 服务器所提供的地址空间。结果当合法用户请求一个 DHCP IP 地址的时候也会被拒绝,并因此而不能访问网络。
发布于 2022-09-30 21:38:57 回复
发布于 2022-10-01 05:18:47 回复