
1. TCP / IP的工作原理
TCP / JP协议是一组协议,包括:
TCP / IP协议分为应用程序层,传输层,网络层和数据链路层4个层.
其中
工作原理:
源主机应用程序层将一堆应用程序数据流传输到传输层. 传输层将其分为几类,添加TCP标头以形成TCP段并将其发送到网络层. 网络层将源主机和源主机添加到TCP段. 目的主机的IP地址的IP头产生一个IP数据包,并将其发送到数据链路层;数据链路层将IP数据包安装在其MAC帧的数据部分中,再加上源主机和目标主机的MAC地址以及帧头,然后根据其目标MAC地址将MAC帧发送到目标主机或IP路由器. 目的主机的数据链路层删除MAC帧的报头并将IP数据包发送到网络层: 网络层检查IP报头,如果报头中的校验和与计算结果不一致,则IP数据包被丢弃. 如果一致,则删除IP标头并将TCP段发送到传输层;传输层检查序列号以确定它是否是正确的TCP数据包,然后检查TCP头数据. 如果正确,它将确认消息发送到源主机. 如果数据包丢失,则要求将信息重新发送到源主机. 传输层删除TCP标头,然后将排序后的数据包发送到应用程序数据流. 这样,目标主机接收到的字节流就好像直接来自源主机一样.
2. 每层安全性分析

2.1数据链路层
数据链路层是TCP / IP协议的底层. 它主要实现诸如上层数据(IP或ARP)的物理帧的封装和解包以及硬件寻址和管理等功能. 在以太网中,由于通道是共享的,因此数据以“帧”为单位在网络上传输,因此任何主机发送的每个以太网帧都将到达同一网段上所有主机的以太网接口. 当数字信号到达主机的网络接口时,根据CSMA / CD协议,网络接口会在正常情况下检查读取的数据. 如果数据帧中携带的物理地址是其自己的或物理地址是广播地址,则该数据帧将被移交给IP层软件. 当数据帧不属于自己时,请忽略它. 但是,Internet上目前有一些称为嗅探器的软件,例如NeXRay,Sniffit,IPMan等. 攻击者进行了一些细微的设置或修改,以使网卡在监视模式下工作,从而可以达到非法窃取其他设备的目的. 人们的信息(例如用户帐户,密码等).
注意事项:
(1)安装检测软件,以检查网络中是否正在运行嗅探器,以防止在其发生之前阻止它.
(2)加密的数据传输,使对方无法正确恢复被盗的数据,并压缩传输的数据以提高传输速度.
(3)切换到交换式网络拓扑,以便仅将数据发送到目标地址的网卡您当前的网络存在链路层劫持,而其他网卡不能接收数据包. 这种方法的缺点是切换成本太高.
2.2网络层

2.2.1 IP欺骗
在TCP / IP协议中,IP地址用作网络节点的唯一标志. IP协议根据IP标头中的目标地址发送IP数据包. 通过IP路由IP数据包时,不检查IP头中提供的源地址,并且IP头中的源地址被视为发送该数据包的计算机的IP地址. 这样,攻击者可以直接修改节点的IP地址,模拟可信任节点,攻击或程序的IP地址(例如RawSocket),并实现IP地址的伪装,即所谓的IP欺骗. 攻击者可以使用IP欺骗来绕过网络防火墙. 此外,对于某些使用IP地址作为安全权限分配基础的网络应用程序,攻击者很容易使用IP欺骗来获取特权,这可能会给被攻击者造成严重损失.
注意事项:
(1)放弃基于地址的信任策略.
(2)使用加密技术,并且在通信过程中需要加密的传输和验证.
(3)执行数据包过滤. 如果网络通过路由器连接到Internet,则该路由器可用于数据包过滤. 确保仅内部IAN可以使用信任关系,并且内部LAN上的主机应谨慎处理LAN外部的主机. 路由器可以过滤掉所有要与内部建立连接的外部请求.
2.2.2 ICMP漏洞

ICMP在网络层运行. 它用于传输IP控制信息,例如网络本身,网络是否不可达,主机是否可达以及路由是否可用. 常用的Ping命令是使用ICMP协议. Ping程序通过发送ICMP Echo请求消息并接收ICMP响应来测试主机的连接性. 几乎所有基于TCP / IP的计算机都将响应ICMP Echo请求. 因此,如果敌对主机同时运行许多Ping命令,并向服务器发送超出其处理能力的ICMP Echo请求,它将使服务器不堪重负以拒绝其他服务. 即,向主机发起“死亡之屏”(Ping of Death)攻击. 死亡是相对原始的拒绝服务攻击.
更成熟的对策:
(1)修补程序可以应用于操作系统.
(2)设置主机上ICMP数据包的处理规则. 最好设置为拒绝所有ICMP数据包.
(3)使用防火墙阻止Ping. 但是同时它将阻止某些合法的应用程序. 只能阻止分段的Ping. 使得大多数系统仅允许一般合法的64Byte Ping通过,以便可以阻止长度大于MTU(最大传输单元)的ICMP数据包,以防止此类攻击.
2.3 TCP三向握手期间的传输层-TCP会话劫持
TCP是基于连接的. 为了在主机A和主机B之间传输TCP数据,必须通过三向握手机制建立连接. 连接过程如下: A→B: A向B发送SYN,初始序列号为ISNI; B→A: B向A发送SYN,初始序列号为ISN2,同时确认ISNI. A→B: A向B发送ISN2的确认. 建立连接后,滑动窗口机制主要用于验证对方发送的数据. 如果另一方发送的数据不在其自己的接收窗口中您当前的网络存在链路层劫持,则该数据将被丢弃. 发送序列号不在对方的接收窗口中的这种状态称为异步状态. 由于TCP协议不对数据包进行加密和身份验证,因此确认数据包的主要依据是确定序列号是否正确. 这样,当通信双方进入异步状态时,攻击者可以在有效接收窗口中伪造带有发送序列号的消息,或者拦截消息,篡改内容,然后修改发送序列号,并且接收方将认为该数据为有效数据意味着TCP会话劫持. 当前有一些可以劫持TCP会话的软件,例如Hunt.

注意事项:
(1)在传输层加密数据.
(2)使用安全协议来加密通信和会话,例如使用SSI代替telnet和ftp.
(3)使用某些入侵检测软件(IDS)或审核工具来检查和分析您的系统是否受到攻击.
2.4应用层------ DNS欺骗
应用程序层的常见攻击方法是DNS欺骗. 攻击者伪造计算机名称和网络信息. 当主机需要将域名转换为IP地址时,它将向DNS服务器发送查询请求. 同样,将IP地址转换为域名时,可以发送计数器查询请求. 如果服务器在执行DNS查询时人为地提供了攻击者自己的响应信息,则会发生DNS欺骗. 由于网络上的所有主机都信任DNS服务器,因此,受到破坏的DNS服务器可以将客户端定向到非法服务器,从而欺骗地址.
注意事项:
(1)使用IP直接访问重要服务,以避免DNS欺骗攻击.
(2)加密所有外部数据流.
在服务器端,尝试使用具有加密支持的协议,例如SSH;
在客户端,使用PGP等软件对发送到网络的数据进行加密.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-286265-1.html
然后就宣布十二海里领海权