在线刊号(2320-9801)印刷刊号(2320-9798)
Shreya Gangane, Vinit Kakade教授
|
有关文章载于Pubmed,谷歌学者 |
更多相关文章请访问国际计算机与通信工程创新研究杂志
TCP/IP协议是网络中非常重要的分层协议。每一层都建立在它下面的一层之上,添加新的功能。传输控制协议(TCP)和Internet协议IP协议是计算机网络中最重要的两种通信协议,其重要性一直在不断提高。在本文中,我们描述了TCP\IP协议套件的发展和基本功能,以及TCP、IP、UDP三个用于基本网络功能的基本协议。在本文中,我们将简要介绍tcp和IP的起源和演变,以及它们的结构、操作属性和报头格式。尽管这一非常重要的网络协议非常有用,但仍存在许多漏洞,并已识别出针对TCP/IP协议套件的相应攻击。这些攻击包括ip欺骗攻击、拒绝服务攻击、DNS欺骗攻击、连接劫持等。TCP/IP的设计缺陷可以通过在网络中应用一些安全机制来缓解。该协议套件的有用性引起了各种工具的设计来分析和识别TCP/IP套件中存在的这种漏洞的利用。本文还讨论了针对TCP/IP套件的防御机制,如防火墙、加密技术、入侵检测系统、协议分析器、嗅探器和漏洞扫描器等。
关键字 |
TCP/IP协议套件,OSI模型,SYN泛洪,IP地址欺骗,连接劫持,DNS欺骗。 |
我的介绍。 |
TCP和IP是OSI模型中最重要的两个网络协议,属于传输层,OSI模型是计算机通过网络进行通信的抽象模型。TCP协议也保证了不可靠网络上两台主机之间的可靠通信。IP为另一端的通信应用程序提供服务。该协议套是为社会学和技术目的而开发的,从1960年左右开始,军方与美国几所不同的大学合作,开始实施一个全球网络,目的是连接不同的地点,在不同的协议下工作,并与几种存储系统共享信息。 |
由于TCP被宣布为可靠的面向连接的端到端协议,并且它运行在IP协议之上,我们给出了TCP协议的一些基本功能以及它是如何工作的以及它的层格式。它将在网络上执行连接建立、连接释放和适当的数据传输,并为网络[3]中的一些其他层和协议提供重要的服务。所有最重要的协议,如TCP, IP, UDP的头格式将在后面的章节中给出。文中还介绍了tcp和IP的一些最新发现和实现。 |
TCP/IP协议套件是在OSI模型或TCP/IP网络层模型的不同层上运行的各种通信协议的集合。该协议也适用于其他专用通信网络。随着计算机网络的出现,为我们提供了许多传统网络系统难以甚至不可能实现的好处,但与此同时,随着网络的日益使用和在互联网上发送数据,也产生了许多安全漏洞。本文最后一节提到了可能发生的攻击。我们还为这里提到的所有类型的攻击提供了一些可能的解决方案[12]。通过增加安全机制的类型,我们应该使我们的网络模型更强大,更有用,使用时没有任何黑客问题。最后,对全文进行总结。 |
2文献调查 |
IP的诞生是为了满足美国国防部的通信需求。20世纪60年代的最后几年,高级研究计划局(ARPA),也就是现在的DARPA,开始与一些合作大学和企业研究社区共同开发标准协议的设计,并开始建立第一个多供应商网络。阿帕网是第一个分组交换网络,在1969年使用网络控制协议测试了四个节点。测试成功后,这个新生的网络变成了一个可操作的网络,称为ARPA Internet。1974年Vinton G.Cerf和RobertE。Kahn设计了TCP/IP协议。1980年1月,南加州大学信息科学研究所详细阐述了一份描述互联网协议哲学的参考文件[6]。它被设计用于计算机通信网络环境,面向它们之间相互连接的分组交换系统。 |
1985年,阿帕网开始出现拥塞,国家科学基金会发展了NSFNET来支持之前的网络,最终在1989年关闭。NSFNET是基于多个区域网络和对等网络,如NASA科学网络。到1986年,有一个网络架构连接校园和研究机构也连接到超级计算机设施。多年来,传输速度不得不提高,到1991年,骨干网转移到私人公司,开始对连接收费,像IBM这样的公司并行开发了ANSNET,这也不是为了让这些公司致富。随着计算机通信变得越来越重要,特别是对过去的军事而言。它使人们意识到需要一个健壮的通信标准来取代各种不同的本地网络协议。在[7]中首次描述了TCP的概念,其中提出了几个将解决的问题。TCP被宣布为可靠的面向连接的端到端协议。它是在ip协议[5]之上运行的。 |
3tcp / ip层 |
术语“协议栈”经常被用作“协议套件”的同义词,作为参考模型的实现。然而,协议套件正确地指的是在参考模型[4]中构成一层的所有协议的集合。TCP/IP参考模型是作为Internet或实例的Internet协议套件,TCP/IP协议栈在每一层实现一个或多个这些协议。 |
TCP/IP协议栈为网络和系统的一系列协议层建模,这对于允许用于通信的任何类型设备之间的通信非常有用。该层模型由五个独立但相关的层组成,如下面的图1所示。这五层非常重要,因为Internet协议套件就是基于它的。网络层、传输层和应用层是TCP/IP分层模型[15]中最重要的层。这些层定义了如何将网络层与数据链路和物理层连接起来,但这也不直接涉及到这两层。堆栈由通信和网络协议组成,而不是实际的实现,所以通过描述一个层或协议几乎没有说明这些东西是如何构建的。 |
TCP/IP层简介[14]: |
A.物理层: |
这一层包含了将位流/包通过物理介质从源传输到目的所需要的所有功能。以太网、PPP等。 |
B.数据链路层: |
在这一层中,位流重新组织成一个数据单元。这些数据单元也称为“帧”,这些帧被传送到相邻的系统。WiFi, SLIP等。 |
C.网络层: |
在这一层,数据以数据包的形式从源转换到目的,需要跨越尽可能多的链路。它还可以传输到非相邻系统。它负责在网络介质上发送和接收TCP/ ippacket。如。IP (IPv4, IPv6), ICMP, IGMP等。 |
D.传输层: |
这一层与流程到流程的信息传递有关。系统可以同时运行文件传输、电子邮件和其他网络进程。这一切都可以通过一个物理接口实现。TCP, UDP等。 |
E.应用层: |
为应用程序提供访问其他层服务的能力。新的协议和服务总是在这个类别中开发,这涉及到内部表示、用户界面和用户所需的任何其他方面的差异。HTTP, FTP, SMTP, SSH, POP3, TLS/SSL, DNS等。 |
四、基本组网协议概述 |
A. TCP(传输控制协议): |
传输控制协议是大多数Internet应用程序使用的传输层协议,如telnet、FTP和HTTP。它是面向连接的协议,提供了可靠性。由于它是可靠的协议,使用它的应用程序需要正确地接收它。TCP对报头和数据都使用校验和。当接收到数据时,TCP在一定的时间范围内向发送方发送确认。如果它没有收到确认,则重发数据。TCP使用IP以块(称为段)的形式发送数据。每个段包含20字节的头信息,IP头为[15]。TCP头以16位的源端口号和目的端口号字段开始,这些字段指定了已经发送和将要接收数据的应用层。 |
B. IP (Internet Protocol): |
IP协议是tcp /IP参考模型中用于在网络上传输数据的重要协议。通过任何TCP/ ip网络发送的每条消息和数据包都作为IP数据包发送。该协议的名称:internet协议是为了使数据能够在网络之间和网络之间传输。 |
IP协议的特点包括,因为它是一个无连接的协议,它没有作业或会话的概念。每个包都被视为单独的或唯一的。它的工作类似于分拣信件的邮政工作。该协议只是简单地将数据包一次一次地路由到下一个位置,以达到其交付路由中的目标。IP不考虑数据包是否到达正确的目的地,或者不检查数据包发送的原始顺序。当数据报发送时,包中没有信息可以将其识别为序列的一部分或特定任务的一部分。由于IP没有检查任何安全问题,它是一个不可靠的协议。 |
IP报文主要由IP头和IP数据组成,长度为20个字节,如下图3[15]所示。报头包括4位协议版本号、报头长度、16位总长度、一些控制字段、用于错误检查的报头校验和以及32位的源IP地址和目标IP地址。在IP头中,有一些重要的可用信息,如源IP地址,目的IP地址,这对于通过internet[8]在网络上路由数据包是很重要的。 |
C. UDP(用户数据报协议): |
用户数据报协议是一个非常简单的协议。这是一个不可靠的、无连接的协议,你不需要建立IP的基本功能。就像一个互联网协议,在用UDP交换数据之前与主机连接。没有机制来确保数据被正确接收,所以它是不可靠的。使用UDP发送的数据称为数据报。UDP增加了4个16位报头字段,其中包含诸如UDP长度字段、用于错误检查的校验和字段以及源和目的端口号等字段。Portnumber在这里只表示软件端口。端口号的概念在UDP和TCP协议中都很常见。 |
虽然UDP不可靠,但它仍然是应用程序的合适选择。它被用于实时应用程序,如网络音频和视频,如果数据丢失,最好不要这样做,而不是按顺序重新发送。它也被简单网络管理协议(SNMP)等协议所使用。 |
五、针对tcp / ip的一些攻击及其可能的防御方法 |
计算机网络的分布式特性使其容易受到潜在的攻击或黑客攻击,同时又很难对这些方法进行防御。在这里,我们给出了一些可能的攻击和他们的防御方法。 |
A. SYN泛洪攻击 |
所有新的TCP连接都是通过先向远端主机发送一个SYN段来建立的,即SYN标志位设置为[15]的报文。SYN泛洪是主机客户端程序用户对计算机服务器进行拒绝服务(DoS)攻击的一种方法。在SYN flood攻击中,攻击者使用假IP地址反复向服务器的每个端口发送SYN TCP段。服务器响应每个这样的尝试,从每个开放端口发送SYN+ACK段,从每个关闭端口发送RST段。 |
在SYN flood攻击中,主机客户端从不像正常的三次握手那样发送回预期的ACK段,客户端会为从服务器[16]接收到的每个SYN+ACK段返回一个ACKsegment。当给定端口的连接超时时,来自敌对端对同一端口的另一个SYN请求到达。当服务器上某个特定端口的连接进入接收无休止的SYN段流的状态时,入侵者就会与受害主机形成一种永久的半开连接。 |
当前的防火墙产品提供了一些额外的功能,如NAT(网络地址转换)和SYN泛洪保护。 |
B. IP地址欺骗 |
IP地址欺骗技术涉及使用其他IP地址作为源地址恶意创建TCP/IP数据包,以隐藏自己的身份或模拟IP地址所有者[10]的身份。通常情况下,路由器使用目的IP地址并将数据包转发给它,而接收方则使用源IP地址来回复该数据包。如果源地址被欺骗,收件人将回复被欺骗的地址。在这种情况下,报文将很难被追踪到攻击者。但是如果攻击者必须嗅探被欺骗地址的流量,如果他还想访问回复。接收者的这种行为可用于发起各种类型的攻击,例如: |
•拒绝服务攻击(DoS) [13] |
•破坏网络安全 |
•中间进攻的人 |
防范IP spoofingattack[9]可以采取以下措施: |
•在路由器中使用加密会话的好处是,只有受信任的主机才能安全地与本地主机通信,因为攻击者将无法读取加密的数据包。 |
•使用访问控制Listone可以应用安全策略,通过配置阻止来自内部IP地址的外部网络的任何流量,同样也可以阻止来自内部IP到外部网络的流量。通过使用这种技术,我们的IP地址只存在于网络内部。 |
•另一种技术是过滤数据包,阻止不符合安全策略标准的传入数据包,如来自网络外部的ping请求被过滤掉。对于发送的数据包,该方法基于源或目的端口/IP地址标准进行过滤。 |
•通过在上层整合防御机制,防止IP欺骗。如果在传输层的TCP中,如果我们使用序列号,那么攻击者在欺骗数据包之前也必须猜测序列号。 |
C.连接劫持 |
在连接建立的初始阶段,两台主机之间进行身份验证,后续阶段不需要身份验证。攻击者可以通过向客户端发送复位消息并终止客户端连接来利用这种身份验证机制。然后攻击者欺骗客户端,继续与服务器会话,源地址被欺骗为[12]。执行这类攻击的另一种方法是窃取存储在该机器上的cookie,或者通过嗅探未加密的网络流量来窃取cookie,并使用这些cookie与web服务器建立经过身份验证的会话。 |
防范连接劫持攻击的方法有:[9]: |
•使用加密方法可以使安全的流量流作为攻击者既不能读取数据包的内容,也不能使用它们进行会话劫持。 |
•使用重新认证技术。在一段指定的时间后将导致攻击者在一段时间后失去会话,即使他最初成功了,这将阻止他进一步访问。 |
•为了使被劫持的会话不被永久利用,会话超时也是一种在指定时间后强制重新验证的机制。 |
D. DNS欺骗攻击 |
DNS (Domain Name System)是TCP/IP协议套件应用层的一种服务,用于将IP地址映射到域名,或将IP地址映射到域名。通过毒害DNS缓存记录来欺骗域名,并将其与攻击者的IP地址绑定,从而发起DNS欺骗攻击。如果客户端使用域名来验证请求,那么它将受到威胁。 |
防范DNS Spoofing攻击的方法有:[11]: |
•不再使用域名认证,而是使用IP地址认证。 |
•如果域名系统(DNS)使用加密,可以防止他们轻易伪造。 |
六。结论 |
从历史上看,随着互联网的日益普及,一个巨大的进步已经证明了TCP协议可能会进化成一个更灵活的协议来完美地管理所有的网络过程。随着数字化的发展。网络演化的复杂性也在并行增长,因此为了适当地适应这种情况,TCP/IP与其他层和协议一起正确地执行其数据传输和所有网络活动的任务。也可以说,TCP/IP协议套件是支撑用户需求强劲增长和技术快速发展的必由之路。除了这些有用的特性外,TCP/IP协议套件的一些设计缺陷导致了Internet上的大多数攻击。因此,它总是要求将安全性作为TCP/IP套件的外部层应用。本文介绍了针对TCP/IP协议模型的各种攻击,如IP和DNS欺骗和SYN攻击。我们还提供了一些防御机制,以识别导致这些攻击的漏洞和减少它们的方法。网络中的攻击一直是一个大问题,TCP/IP协议套件在网络和互联网架构和协议组织领域的作用也是如此。 |