欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    [精选]因特网与TCPIP安全.pptx

    • 资源ID:87830794       资源大小:1.69MB        全文页数:235页
    • 资源格式: PPTX        下载积分:25金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要25金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    [精选]因特网与TCPIP安全.pptx

    因特网与因特网与TCP/IP安全安全 5.1 TCP/IP协议栈协议栈 5.2 互联网地址互联网地址 5.3 协议封装协议封装 5.4 IP协议协议 5.5 TCP协议协议 5.6 UDP协议协议 5.7 ARP/RARP协议协议 5.8 ICMP协议协议 5.9 网络效劳的安全性网络效劳的安全性 5.1 TCP/IP协议栈协议栈 因特网Internet依赖于一组称为TCP/IP的协议组。TCP/IP是一组通信协议集的缩写,它包含了一组互补和合作的协议。所有这些协议共同工作,以便在因特网上传输信息。我们知道,ISO/OSI模型将网络表示为一个垂直的模块或分层协议栈,每层完成特定的功能。TCP/IP协议栈只是许多支持ISO/OSI分层模型的协议栈的一种。TCP/IP通常被认为是一个四层协议系统,如图5-1所示。ISO/OSI参考模型将网络设方案分成七个功能层,但此模型只起到一个指导作用它本身并不是一个标准。例如,TCP/IP网络只使用ISO/OSI模型的五层。图5-2显示了一个简单的五层网络模型,其中每层都采用了TCP/IP协议。网络层和相应的协议层组成了该模型,数据通过此模型在应用程序和网络硬件之间进行传递。图5-2中,有箭头的线表示不同的网络软件和硬件之间可能的通信信道。例如,为了和传输层通信,应用程序必须与用户数据报协议UDP或传输控制协议TCP模块对话;为了和网络层通信,应用程序必须与互联网控制报文协议ICMP或者互联网协议IP模块对话。但是,不管数据通过什么路径从应用层到网络层,数据都必须经过IP模块才能到达网络硬件。图5-1ISO/OSI模型与TCP/IP协议栈图5-2TCP/IP协议栈各相关协议在TCP/IP协议体系结构中,每层负责不同的网络通信功能:1链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆或其它任何传输媒介的物理接口细节以及数据帧Frame的组装。2网络层,有时也称作互联网层,处理分组Packet在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络层协议包括IP协议、ICMP协议以及IGMP协议因特网组管理协议。3传输层主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个互不相同的传输协议:TCP传输控制协议和UDP用户数据报协议。TCP为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成适宜的小块段:Segment交给下面的网络层、确认接收到的分组报文、设置发送的最后确认分组的超时时钟等。由于传输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。另一方面,UDP则为应用层提供一种非常简单的效劳。它只是把称作数据报Datagram的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必要的可靠性必须由应用层自己负责提供。这两种传输层协议在不同的应用程序中分别有不同的用途,这一点将在后面看到。4应用层负责处理特定的应用程序细节。几乎各种不同的TCP/IP实现都会提供下面这些通用的应用程序:Telnet远程登录FTP文件传输协议SMTP简单邮件传输协议SNMP简单网络管理协议5.2 互互 联联 网网 地地 址址互联网上的每个接口必须有一个惟一的互联网地址也称作IP地址,长32比特。互联网地址并不采用平面形式的地址空间,如1、2、3等,它具有一定的层次结构。五类不同的互联网地址格式如图5-3所示。图5-3五类互联网地址图5-4各类IP地址的范围这些32位的地址通常写成四个十进制的数,其中每个整数对应一个字节。这种表示方法称作“点分十进制表示法DottedDecimalNotation。例如,作者的系统就是一个B类地址,它表示为:140.252.13.33。区分各类地址的最简单方法是看它的第一个十进制整数。图5-4列出了各类地址的起止范围,其中第一个十进制整数用加黑字体表示。需要注意的是,多接口主机例如路由器具有多个IP地址,其中每个接口都对应一个IP地址。5.3 协协 议议 封封 装装当应用程序用TCP/IP传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些头部信息有时还要增加尾部信息,该过程如图5-5所示。TCP传给IP的数据单元称作TCP报文段或简称为TCP段TCPSegment。IP传给网络接口层的数据单元称作IP分组IPDatagram。通过以太网传输的比特流称作帧Frame。图5-5中帧头和帧尾下面所标注的数字是典型以太网帧头部的字节长度。以太网数据帧的物理特性是其长度必须在461500字节之间。有些TCP/IP协议文献也使用octet这个术语来表示字节。更准确地说,图5-5中IP和网络接口层之间传送的数据单元应该是包Packet。包既可以是一个IP数据报,也可以是IP数据报的一个片Fragment。我们将在下一节讨论IP数据报分片的详细情况。图5-5在以太网上使用TCP进行数据封装UDP数据与TCP数据基本一致。惟一的不同是UDP传 给 IP的 信 息 单 元 称 作 UDP数 据 报 UDPDatagram,而且UDP的首部长为8字节。回想前面的图5-2,由于TCP、UDP、ICMP和IGMP都要向IP传送数据,因此IP必须在生成的IP首部中参加某种标识,以说明数据属于哪一层。为此,IP在首部中存入一个长度为8比特的字段,称作协议域。1表示为ICMP协议,2表示为IGMP协议,6表示为TCP协议,17表示为UDP协议。类似地,许多应用程序都可以使用TCP或UDP来传送数据。传输层协议在生成报文首部时要存入一个应用程序的标识符。TCP和UDP都用一个16比特的端口号来表示不同的应用程序。TCP和UDP把源端口号和目的端口号分别存入传输层报文首部中。网络接口分别要发送和接收IP、ARP和RARP数据,因此也必须在以太网的帧首部中参加某种形式的标识,以指明生成数据的网络层协议。为此,以太网的帧首部也有一个16比特的帧类型域。以下简单介绍TCP/IP中的各协议具备的功能及其工作原理。5.4 IP 协协 议议网际协议IP是TCP/IP的核心,也是网络层中最重要的协议。IP层接收由更低层网络接口层,例如以太网设备驱动程序发来的数据包,并把该数据包发送到更高层TCP或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP协议是不可靠的协议,因为IP并没有做任何事情来确认数据包是否按顺序发送或者有没有被破坏。IP数据包中含有发送它的主机的IP地址源地址和接收它的主机的IP地址目的地址。IP数据包的格式如图5-6所示。普通的IP首部字段包含20个字节,除非含有选项局部。分析图5-6中的首部。最高位在左边,记为第0比特;最低位在右边,记为第31比特。四个字节的32比特值以下面的次序传输:首先是07比特,其次是815比特,然后是1623比特,最后是2431比特。这种传输次序称作大字节BigEndian顺序。由于TCP/IP首部中所有的二进制整数在网络中传输时都要求以这种次序,因此它又称作网络字节序。以其它形式存储二进制整数的机器,如小字节LittleEndian格式,则必须在传输数据之前把首部转换成网络字节序。图5-6IP数据包格式及首部中的各字段目前的协议版本号Version是4,因此IP有时也称作IPv4。首部长度HeaderLength指的是首部以32比特为单位的长度,其中包括任何选项。由于它是一个4比特字段,因此首部最长为60个字节。普通IP数据报没有任何选择项字段的值是5。总长度TotalLength字段是指整个IP数据报的长度,以字节为单位。利用首部长度字段和总长度字段,就可以知道IP数据报中数据内容的起始位置和长度。由于该字段长16比特,所以IP数据包最长可达65535字节。总长度字段是IP首部中必需的内容,因为一些数据链路如以太网需要填充一些数据以到达最小长度。尽管以太网的最小帧长为46字节见图5-5,但是IP数据可能会更短,如果没有总长度字段,那么IP层就不知道46字节中有多少是IP数据报的内容。标识Identifier字段惟一地标识主机发送的每一份数据报。TTLTimeToLive,生存时间字段设置了数据报可以经过的最多路由器数。它指定了数据包的生存时间。TTL的初始值由源主机设置通常为128或64,一旦经过一个处理它的路由器,它的值就减去1。当该字段的值为0时,数据包就被丢弃,并发送ICMP报文通知源主机。常用的网络工具Traceroute就是利用的该字段。高层的TCP和UDP效劳在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP地址形成了许多效劳的认证基础,这些效劳相信数据包是从一个有效的主机发送来的。IP协议包含一个选项,叫作IP源路由选项SourceRouting,可以用来指定一条源地址和目的地址之间的直接路径。对于一些TCP和UDP的效劳来说,使用了该选项的IP包好象是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。这个选项是为了测试而设计的,利用该选项可以欺骗系统,使之放行那些通常是被禁止的网络连接。因此,许多依靠IP源地址进行身份认证的效劳将会产生安全问题以至被非法入侵。在我们深入讨论各种基于IP的攻击之前,将首先介绍一个很关键的概念欺骗Spoofing。也就是说,伪造一个假的源IP地址的包是非常容易的,当另外的主机接收到这个包时,会以为包来自假冒的发送者,这个过程称为欺骗目标机器。使用欺骗技术的原因很多,但是最为重要的要数获得匿名性,通过对包的欺骗,攻击看起来是来自其它地方。同样,当攻击者发现某机器的身份具有访问某些资源的特权时,也会使用欺骗技术。IP协议存在的安全问题不少,下面我们选择一些比较典型的攻击案例来分析其安全性。1死亡之pingpingofdeath最简单的基于IP的攻击可能要数著名的死亡之pingpingofdeath,这种攻击主要是由于单个包的长度超过了IP协议标准所规定的包长度。产生这样的包很容易,事实上,许多操作系统都提供了称为ping的网络工具。在WIN98中,开一个DOS窗口,输入ping-l65510the.target.ip.addr就可到达该目的。UNIX系统也有类似情况。死亡之ping是如何工作的呢?首先是因为以太网帧长度有限,IP包必须被分片。当一个IP包的长度超过以太网帧的最大尺寸以太网头部和尾部除外时,包就会被分片,作为多个帧来发送。接收端的机器提取各个分片,并重组为一个完整的IP包。在正常情况下,IP头包含整个IP包的长度。当一个IP包被分片以后,头只包含各个分片的长度。分片并不包含整个IP包的长度信息,因此IP包一旦被分片,重组后的整个IP包的总的长度只有在所有的分片都接收完毕之后才能确定。在IP协议标准中规定了一个IP包的最大尺寸,而大多数的包处理程序又假设包的长度超过这个最大尺寸这种情况是不会出现的。因此,包的重组代码所分配的内存区域也最大不超过这个最大尺寸。这样,超大的包一旦出现,包当中的额外数据就会被写入其它正常内存区域。这很容易导致系统进入非稳定状态,是一种典型的缓存溢出BufferOverflow攻击。在防火墙一级对这种攻击进行检测是相当难的,因为每个分片包看起来都很正常。由于使用ping工具很容易完成这种攻击,以至于它也成了这种攻击的首选武器,这也是这种攻击名字的由来。当然,还有很多程序都可以做到这一点,因此仅仅阻塞ping的使用并不能够完全解决这个漏洞。预防死亡之ping的最好方法是对操作系统进行补丁,这样,内核将不再对超过规定长度的包进行重组。2泪滴Teardrop攻击Teardrop攻击同死亡之ping有些类似,在这儿,一个大IP包的各个分片包并非首尾相连,而是存在重叠Overlap现象。在图5-7中,分片1的偏移等于0,长度等于15,分片2的偏移为5,这意味着分片2是从分片1的中间位置开始的,即存在10字节的重叠。系统内核将试图消除这种重叠,但是如果存在重叠段的分片包长度小于重叠局部长度如图5-8所示,内核将无法进行正常处理。图5-7正常的两个包重叠处理图5-8分片2没有足够的数据来覆盖重叠区3源路由SourceRouting实际中,黑客从来不会直接从自己的机器向目标机器发送一个数据包,这很容易被跟踪。相反,它们会利用其它网络中已经获得非授权使用的机器来进行攻击。这样,对攻击的跟踪将变得困难。另外,通过利用IP协议的某些额外选项可以让黑客的攻击锦上添花,那就是IP源路由选项允许发送者指定包的路由。它有两种形式:1严格的Strict源路由选项。发送端指明IP数据报所必须采用确实切路由。如果一个路由器发现源路由所指定的下一个路由器不在其直接连接的网络上,那么它就返回一个“源站路由失败的ICMP过失报文。2宽松的Loose源站选路。发送端指明了一个数据报经过的IP地址清单,但是数据报在清单上指明的任意两个地址之间可以通过其它路由器。源路由选项允许黑客伪装成其它的可信任机器,这使得黑客攻击变得难于跟踪。幸运的是,大多数的主要效劳都不使用源路由选项,我们可以使用防火墙来过滤掉任何的源路由选项数据包。5.5 TCP 协协 议议 如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向“上传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包含序列号和应答号,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。TCP将它的信息送到更高层的应用程序,例如Telnet的效劳程序和客户程序。应用程序轮流将信息送回TCP层,TCP层将它们向下传送到IP层、设备驱动程序和物理介质,最后到接收方。面向连接的效劳例如Telnet、FTP、rlogin、XWindows和SMTP需要高度的可靠性,所以它们使用了TCP。DNS在某些情况下使用TCP发送和接收域名数据库,但通常使用UDP传送有关单个主机的信息。图5-9所示是TCP首部的数据格式,如果没有任选字段,其长度是20个字节。图5-9TCP首部每个TCP段都包含源端和目的端的端口号,用于定位发端和收端的应用进程。这两个值加上IP首部的源IP地址和目的IP地址可以惟一确定一条TCP连接。在TCP首部中有6个标志比特,它们中的多个可同时被设置为1。在此只给出各个比特的功能说明在随后的章节会有更详细介绍:URG紧急指针有效ACK确认序列号有效PSH接收方应当尽快将这个报文交给应用层RST连接复位SYN同步序列号用来发起一个连接FIN发送端完成发送任务TCP要处理的另外一个问题是当多个效劳器同时运行在一个IP地址上时会出现什么问题?许多应用程序使用TCP来提供可靠数据传输。例如同时提供Web效劳器、邮件效劳器、XWindows效劳器等等。所有这些都使用TCP协议来接收其它计算机的连接请求。那么计算机如何确定一个客户想要连接的是什么效劳呢?5.5.1端口号IP头包含了目标机器的IP地址,但是包当中没有任何可以说明某个特定应用的信息。由于一个IP地址可以同许多效劳相绑定,因此需要额外的头信息。解决方法就是所谓的TCP端口号,TCP端口提供运行在某机器上每个应用效劳的地址。当一个应用效劳器启动时,它必须告诉机器它所使用的TCP端口号。通过使用TCP端口号可以标识一台机器上的多个目的进程。每个端口都被赋予一个小的整数端口号以便识别。客户机上的客户端在翻开一个TCP连接时TCP连接称为Socket也被绑定到一个特定的端口上。客户的端口号和IP地址同样都包含在每个TCP包中发送的和接收的。客户端使用的端口号很少被标准化,效劳器可以通过查看TCP头的源端口域来获得。有两种方式获得端口号:1事先设计,硬编码在小型客户效劳器专用软件包内。2标准效劳,如FTP效劳器运行在21号端口。TCP使用连接而不是协议端口作为基本的抽象概念;连接是用一对端点来标识。那么,一个连接的端点究竟是什么呢?我们往往认为一个连接是由两个应用程序之间的虚电路组成的,所以把应用程序当作端点的想法很自然。然而这种看法是不正确的。实际情况中,TCP把端点endpoint定义为一对整数,即host,port,其中,host是主机的IP地址,而port则是主机上的TCP端口号。例如,端点128.10.2.3,25表示的是IP地址为128.10.2.3的主机上的25号TCP端口。5.5.2TCP安全缺陷LAND攻击是最简单的一种TCP攻击方法:将TCP包的源地址和目的地址,源端口和目的端口都设置成相同即可。其中,地址字段都设置为目标机器的IP地址。需要注意的是,对应的端口所提供的效劳器必须是激活的。LAND攻击可以非常有效地使目标机器重新启动或者死机。这种攻击能够奏效的原因在于TCP连接的可靠特性。为了使连接可靠,TCP完成两个关键的任务:1初始化连接:也就是在客户和效劳器之间进行三次握手Three-wayHandshake。三次握手协议完成两个重要功能:确保连接双方做好数据传输准备而且他们知道对方准备好了,而且使得双方统一了初始序列号。序列号可以帮助TCP确认包的顺序以及包是否丧失。2应答每个接收到的数据包。如果在规定时间内应答没有被接收到,包被重传。LAND攻击利用TCP初始连接建立期间的应答方式存在的问题,攻击的关键在于效劳器端和客户端有各自的序列号。例如,效劳器端的序列号可以是1,2,3,4,而客户端的序列号可能是1001,1002,1003,。对于每一次数据传输,接收端都必须发送一个应答包,其中包含期望从发送端所接收的下一个包的序列号。例如,发送端说“我正在给你发送1000个字节,序列号为5000。接收端则应答:“好,我收到了,我正在等待序列号为6001的字节5000+1000+1。攻击从发送一个包含随机序列号的数据包作为第一次握手开始。目标计算机说,OK,这是我的序列号,然后对其序列号加1在此没有数据传送进行应答,并送回给攻击者。这是第二次握手。如果是正常握手过程,攻击者应当能够收到这个包,并且对目标机器的序列号加1进行应答,并发还给目标机器,从而完成第三次握手。这样的话,双方机器都知道了对方的序列号,可以进行数据传输了。图5-10给出了一次典型的三次握手过程。图5-10正常TCP三次握手过程此过程的问题在于目标机器把包发送给了自己源和目的IP地址是相同的。目标机器等待自己的序列号得到应答,而这个应答却是它自己刚刚刚发送出去的,而且其应答序列号是攻击者的序列号1002。由于这个序列号同目标机器所期望的序列号差异太大不在接收窗口范围内,TCP认为这个包有问题,被丢弃。这样目标机器再次重发数据包。这对于TCP来说,意味着“那不是我所期望的包,请重发。这将导致无限循环:目标机器一直给自己发送错误应答,并希望能够看到具有正确序列号的应答返回。图5-11形象地描绘了此情景。图5-11LAND攻击示意图由于TCP是具有高优先权的内核级进程,这也就意味着TCP相对其它非内核应用程序具有更高的权限。基本上,它将中断其它的正常系统操作以声明更多的内核资源来处理进入的数据。这样,无限循环很快会消耗完系统资源,引起大多数系统死机。只有少数系统在内核资源耗尽情况下还可以继续稳定运行。LAND攻击相对容易。下面让我们深入探讨TCP问题的另一个严重问题。在前面我们已经对TCP连接初始化过程有了大致的了解。我们同样也提到了TCP在成功进行数据收发以后如何进行应答。或许你已经注意到,在此过程当中没有任何的认证机制。TCP假定只要接收到的数据包包含正确的序列号就认为数据是可以接受的。一旦连接建立,效劳器无法确定进入的数据包确实是来自真正的客户机器的而不是来自某一台假冒的机器的。让我们考虑下述情形:一个客户程序通过TCP正在与一台效劳器进行通信。攻击者使用ARP技术后面详述来截获和重定向客户与效劳器之间的数据流,使之经过攻击者的机器。攻击者可以采取被动攻击以免引起注意,即客户的所有命令保持原样被发送到效劳器,效劳器的响应也不加修改的发送给客户。对于客户和效劳器来说,它们都认为是在直接进行通信。由于攻击者可以看到序列号,有必要的话,它可以把伪造的数据包放到TCP流中。这将允许攻击者以被欺骗的客户具有的特权来访问效劳器。攻击者同样也可以查看所有同攻击相关的输出,而且不把它们送往客户机。这样的攻击是透明的。在这种情况下,攻击者甚至于不需要知道访问机器所需的口令,攻击者只需简单地等待用户登陆到效劳器,然后劫持Hijack会话数据流即可。图5-12显示了攻击者是如何劫持一个TCP会话的。图5-12TCP会话劫持这种攻击的关键在于攻击者可以把自己的机器置于数据通信流的中间正如本章后续章节所表达的,这并不是很难。在众多的TCP/IP实现中存在发动这类攻击的安全漏洞,而TCP协议本身也允许进行类似的假冒。下面我们将讨论一种可以用于TCP会话劫持的攻击技术,称为去同步技术Desynchronization。首先,让我们再讨论一下三次握手模型:握手1:客户给效劳器发送同步包SYN,序列号为CLT_SEQ。客户等待效劳器应答。握手2:效劳器发送应答ACK,其中应答序列号为CLT_SEQ+1,自己的序列号为SVR_SEQ。此时客户处于连接建立状态,而效劳器还必须等待来自客户端的应答包,也就是握手3的完成。在完成握手2以后,攻击者跳了出来,他以客户身份向效劳器发送连接复位RST包。效劳器接收到这个包以后,会认为握手过程出错从而断开同客户端的连接,并侦听新的连接请求。但同时真正的客户端却向效劳器发送了握手3的应答包,由于攻击者关闭了连接,这个应答包将被效劳器所忽略。现在我们看一下客户和效劳器所处的状态。客户一旦发送握手3的应答包即已经认为连接已经建立,他无需再从效劳器得到进一步的应答。客户端也认为效劳器是激活的事实上不是,所以客户端认为连接处于建立状态。对于效劳器,他认为客户端出了什么问题,连接被复位以至于关闭,但事实上客户端并没有关闭连接。攻击者现在可以假冒客户端的身份同效劳器进行三次握手过程。握手1:攻击者假冒客户机身份向效劳器启动连接请求,使用的序列号为Attack_SEQ。握手2:效劳器向真正的客户端发送应答:应答序列号为Attack_SEQ+1,自身序列为New_SVR_SEQ。由于应答序列号不符,应答包被客户端忽略。握手3:攻击者再次假冒客户端进行应答,应答序列号为New_SVR_SEQ+1。到此为止,效劳器也处于连接建立状态。但是由于客户和效劳器之间的序列号无法一致,它们之间并不能真正进行通信,各自发往对方的数据包都将被忽略。1去同步状态首先定义以下术语:SVR_SEQ效劳器将要发送的下一个字节的序列号SVR_ACK效劳器将要接收的下一个字节所接收到的最后字节的序列号加1SVR_WIND效劳器的接收窗口CLT_SEQ客户将要发送的下一个字节的序列号CLT_ACK客户将要接收的下一个字节CLT_WIND客户的接收窗口SEG_SEQ包序列号SEG_ACK包应答号术语“去同步状态指双方都处于连接建立Established状态,还没有数据要发送稳定状态和SVR_SEQ!=CLT_ACKCLT_SEQ!=SVR_ACK此状态只要没有数据发送就是稳定的。如果有数据要发送,可能有两种情况:1如果CLT_SEQSVR_ACK包是可接收的,数据也将被存储以备后用依赖于实现,但不发送给用户,因为数据流的开始局部从序列号SVR_ACK开始丧失了。2如果CLT_SEQSVR_ACK+SVR_WIND或CLT_SEQconnectvictim.tftpget/etc/passwd/tmp/passwd.victimtftpquit6RCP在本地站点内,可以用RCPRemoteCopy,远程拷贝在UNIX系统间传输文件。RCP是个文件拷贝程序,很像UNIX中CP命令在多主机间的扩展版本。在因特网上使用它是不适宜的,因为它使用的是信任主机鉴别模式。它不是在远程机上进行用户认证,而是检查发出请求主机的IP地址。就像BSD的其它r命令如rlogin和rsh一样,RCP会带来很多安全风险,最好是禁止使用RCP。5.9.3域名系统DNS我们知道,因特网是基于TCP/IP协议的,要进行通信必须获得对方的IP地址,这是通过DNS效劳器来实现的。域名系统DNS是一种用于TCP/IP应用程序的分布式数据库,它提供主机名字和IP地址之间的转换及有关电子邮件的选路信息。DNS是因特网上其它效劳的基础。没有DNS,也就不会存在sun.,microsoft.和myserver.等网址。它处理DNS客户机的请求:把名字翻译成IP地址;把IP地址翻译成名字;提供特定主机的其它已公布信息如MX记录。它将因特网中计算机列表存放到一个文件,通常为/etc/hostsUNIX系统,在没有域名效劳器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的IP地址。该文件包括了计算机名与IP地址的对应表格,如下:1DNS基础DNS的名字空间和UNIX的文件系统相似,也具有层次结构。图5-28显示了这种层次的组织形式。每个节点图5-28中的圆圈有一个至多63个字符长的标识。这颗树的树根是没有任何标识的特殊节点。命名标识中一律不区分大写和小写。命名树上任何一个节点的域名就是将从该节点到最高层的域名串连起来,中间使用一个点“.分隔这些域名注意,这和UNIX文件系统路径的形成不同,文件路径是由树根依次向下形成的。域名树中同一个父节点下的每个节点必须有一个惟一的域名,但域名树中的不同节点可使用相同的标识。图5-28DNS的层次组织以点“.结尾的域名称为绝对域名或完全合格的域名FQDNFullQualifiedDomainName,例如sun.tuc.noao.edu.。如果一个域名不以点结尾,则认为该域名是不完全的。域名的完整依赖于所使用的DNS软件。如果不完整的域名由两个或两个以上的标号组成,则认为它是完整的;或者在该域名的右边参加一个局部后缀。例如,域名sun通过加上局部后缀.tuc.noao.edu.构成完整的域名。顶级域名被分为三个局部:1arpa是一个用作IP地址到名字转换的特殊域。2七个3字符长的普通域。有些书也将这些域称为组织域。3所有2字符长的域均是基于ISO316定义的国家代码,这些域被称为国家域,或地理域。一个独立管理的DNS子树称为一个区域zone。一个常见的区域是一个二级域,如noao.edu。许多二级域将它们的区域划分成更小的区域。例如,大学可能根据不同的系来划分区域,公司可能根据不同的部门来划分区域。如果你熟悉UNIX的文件系统,会注意到DNS树中区域的划分同一个逻辑UNIX文件系统到物理磁盘分区的划分很相似。一旦一个区域的授权机构被委派后,由它负责向该区域提供多个名字效劳器。当一个新系统参加到一个区域中,该区域的DNS管理者为该新系统申请一个域名和一个IP地址,并将它们加到名字效劳器的数据库中。这就是授权机构存在的必要性。例如,在一个小规模的大学,一个人就能完成每次新系统的参加,但对一个规模较大的大学来说,这一工作必须被专门委派的机构可能是网络中心来完成,因为一个人已无法维持这一工作。一个名字效劳器负责一个或多个区域。一个区域的管理者必须为该区域提供一个主名字效劳器和至少一个辅助名字效劳器。主、辅名字效劳器必须是独立和冗余的,以便当某个名字效劳器发生故障时不会影响该区域的名字效劳。主、辅名字效劳器的主要区别在于主名字效劳器从磁盘文件中调入该区域的所有信息,而辅名字效劳器则从主效劳器调入所有信息。我们将辅名字效劳器从主效劳器调入信息称为区域传送。当一个新主机参加一个区域时,区域管理者将适当的信息最少包括名字和IP地址参加到运行在主名字效劳器上的一个磁盘文件中,然后通知主名字效劳器重新调入它的配置文件。辅名字效劳器定时通常是每隔3小时向主名字效劳器询问是否有新数据。如果有新数据,则通过区域传送方式获得新数据。当一个名字效劳器没有请求的信息时,它将如何处理?它必须与其它的名字效劳器联系。这正是DNS的分布特性。然而,并不是每个名字效劳器都知道如何同其它名字效劳器联系,相反,每个名字效劳器必须知道如何同根名字效劳器联系。截至1993年4月,有8个根名字效劳器,所有的主名字效劳器都必须知道根效劳器的IP地址,而不是它们的域名这些IP地址在主名字效劳器的配置文件中。根效劳器则知道所有二级域中的每个授权名字效劳器的名字和位置即IP地址。这意味着名字查询过程为:正在处理请求的名字效劳器与根效劳器联系,根效劳器告诉它与另一个名字效劳器联系,直到最终能解析该域名的名字效劳器为止。在本章的后面我们将通过一些例子来详细了解这一过程。你可以通过匿名的FTP获取当前的根效劳器清单。具体是从或nic.ddn.mil获取文件netinfo/root-servers.txt。DNS的一个基本特性是使用超高速缓存。即当一个名字效劳器收到有关映射的信息主机名字到IP地址时,它会将该信息存放在高速缓存中。这样,假设以后遇到相同的映射请求,就能直接使用缓存中的结果而无需通过其它效劳器查询。2DNS的报文格式DNS定义了一个用于查询和响应的报文格式。图5-29显示了这个报文的总体格式。有两种类型的DNS查询:A类型和PTR类型。A类型查询表示希望获得被查询域名的IP地址。一个PTR查询也称为指针查询则请求获得一个IP地址对应的域名。现在,Internet上存在的DNS效劳器绝大多数是用Bind来架设的,Bind有个特点,就是Bind会缓存Cache所有已经查询过的结果。图5-29DNS查询和响应的一般格式1DNS欺骗在DNS缓存还没有过期之前,对DNS缓存中已经存在的记录,一旦有客户查询,DNS效劳器将会直接返回缓存中的记录。下面我们来看一个例子,如图5-30所示。图5-30是一台运行着UNIX的Internet主机,并且提供rlogin效劳,它的IP地址为123.45.67.89,它使用的DNS效劳器即/etc/resolv.conf中指向的DNS效劳器的IP地址为98.76.54.32,某个客户端IP地址为38.222.74.2试图连接到UNIX主机的rlogin端口。假设UNIX主机的/etc/hosts.equiv文件中使用DNS名称来限制目标主机的访问,那么UNIX主时机向IP为98.76.54.32的DNS效劳器发出一个PTR记录的查询获得一个IP地址对应的域名图5-30中的:图5-30DNS欺骗例子123.45.67.89-98.76.54.32QueryNQY:1NAN:0NNS:0NAD:0QY:2.74.222.38.in-addr.arpaPTRIP为98.76.54.32的DNS效劳器中没有这个反向查询域的信息,经过一番查询,这个DNS效劳器找到38.222.74.2和38.222.74.10为74.222.38.in-addr.arpa.的权威DNS效劳器,所以它会向38.222.74.2发出PTR查询图5-30中的98.76.54.32-38.222.74.2QueryNQY:1NAN:0NNS:0NAD:0QY:2.74.222.38.in-addr.arpaPTR请注意,38.222.74.2是我们的客户端IP,也就是说,这台机子是完全掌握在我们手中的。我们可以更改它的DNS记录,让它返回我们所需要的结果图5-30中的:38.222.74.2-98.76.54.32AnswerNQY:1NAN:2NNS:2NAD:2QY:2.74.222.38.in-addr.arpaPTRAN:2.74.222.38.in-addr.arpaPTRtrusted.host.AN:trusted.host.A38.222.74.2NS:74.222.38.in-addr.arpaNSns.sventech.NS:74.222.38.in-addr.arpaNSns1.sventech.AD:ns.sventech.A38.222.74.2AD:ns1.sventech.A38.222.74.10当98.76.54.32的DNS效劳器收到这个应答后,会把结果转发给123.45.67.89,就是那台有rlogin效劳的UNIX主机也是我们的目标,并且,98.76.54.32这台DNS效劳器会把这次的查询结果缓存起来。这时,UNIX主机就认为IP地址为38.222.74.2的主机名为trusted.host.,然后UNIX主机查询本地的/etc/hosts.equiv文件,看这台主机是否被允许使用rlogin效劳,很显然,我们的欺骗目的到达了。在UNIX的环境中,有另外一种技术来防止这种欺骗的发生,就是查询PTR记录后,也查询PTR返回的主机名的A记录,然后比较两个IP地址是否相同:123.45.67.89-98.76.54.32QueryNQY:1NAN:0NNS:0NAD:0QY:trusted.host.A不过,在98.76.54.32的DNS效劳器不会去查询这个记录,而会直接返回在查询2.74.222.38.in-addr.arpa时得到的并且存在缓存中的信息:98.76.54.32-123.45.67.89QueryNQY:1NAN:1NNS:2NAD:2QY:trusted.host.AAN:trusted.host.A38.222.74.2NS:74.222.38.in-addr.arpaNSns.sventech.NS:74.222.38.in-addr.arpaNSns1.sventech.AD:ns.sventech.A38.222.74.2AD:ns1.sventech.A38.222.74.10那么,现在UNIX主机就认为38.222.74.2就是真正的trusted.host.了。我们的目的到达了!这种IP欺骗的条件是:你必须有一台Internet上的授权DNS效劳器,并且你能控制这台效劳器,至少要能修改这台效劳器的DNS记录,DNS欺骗攻击才能进行。2拒绝效劳攻击DenialofService还是上面的例子,如果我们更改位于38.222.74.2的记录,然后对位于98.76.54.32的DNS效劳器发出2.74.222.38.in-addr.arpa的查询,并使得查询结果如下:38.222.74.2-98.76.54.32AnswerNQY:1NAN:2NNS:2NAD:2QY:2.74.222.38.in-addr.arpaPTR下面是常用的几种可以累加和不能累加的记录:A可以NS可以MX可以PTR不可以CNAME不可以攻击者通过某种方法比方攻破DNS效劳器,DNS欺骗,控制路由器把目标机器域名对应的IP指到攻击者所控制的机器,这样,所有外界对目标机器的请求将涌向攻击者的机器,这时攻击者可以转发所有的请求到目标机器,让目标机器进行处理,再把处理结果发回到发出请求的客户机。实际上,就是把攻击者的机器设成目标机器的代理效劳器,这样,所有外界进入目标机器的数据流都在攻击者的监视之下了,攻击者可以任意窃听甚至修改数据流里的数据,收集到大量的信息。因此要保护一台域名效劳器的安全是非常必要的,以下几点安全建议是我们在运行域名效劳系统时必须注意的:1尽量使用最新版本的域名效劳器软件;2为防止拒绝效劳攻击,尽量防止在DNS基础设施中出现单点SinglePoint失效,例如防止把DNS效劳器放在单个路由器后面,或者使用备份域名效劳器;3以最低权限运行DNS效劳;4以最少效劳运行DNS效劳;5限制区域传输,以免黑客获得太多有用的信息。9、静夜四无邻,荒居旧业贫。4月-234月-23Monday,April17,202310、雨中黄叶树,灯下白头人。23:06:5923:06:5923:064/17/202311:06:59PM11、以我独沈久,愧君相见频。4月-2323:06:5923:06Apr-2317-Apr-2312、故人江海别,几度隔山川。23:06:5923:06:5923:06Monday,April17,202313、乍见翻疑梦,相悲各问年。4月-234月-2323:06:5923:06:59April17,202314、他乡

    注意事项

    本文([精选]因特网与TCPIP安全.pptx)为本站会员(茅****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开