像美团这种网站怎么做的,三只松鼠口碑营销案例,网络营销方式多样,沈阳网络公司官网网络协议分析 网络协议分析概述用IP实现异构网络互联网络协议的分层TCP/IP的分层模型协议分析协议分析应用协议分析任务 常见网络协议PPP协议报文选项IPCP认证协议PAP安全缺陷认证协议CHAPPPPoE协议流程 地址解析协议ARPARP的思想和步骤ARP报文格式及封装 移动IP移动IP的工作机… 网络协议分析 网络协议分析概述用IP实现异构网络互联网络协议的分层TCP/IP的分层模型协议分析协议分析应用协议分析任务 常见网络协议PPP协议报文选项IPCP认证协议PAP安全缺陷认证协议CHAPPPPoE协议流程 地址解析协议ARPARP的思想和步骤ARP报文格式及封装 移动IP移动IP的工作机制代理发现移动代理通告移动代理恳求移动主机判断自己的位置移动IP的工作机制注册移动IP的工作机制数据传送移动IP的三角路由问题隧道技术IP-in-IP封装最小封装通用路由封装 HTTP协议持久连接和长度HTTP协商及条件请求代理服务器和高速缓存HTTP报文格式HTTP面临的安全风险 电子邮件系统三大部件系统结构和基本功能邮箱地址及电子邮件格式简单邮件传输协议SMTPPOP协议IMAPPOP VS IMAP电子邮件系统面临的安全威胁 域名系统DNS域名解析原理域名解析原理高速缓存减少DNS报文长度的措施DNS面临的安全威胁 网络协议分析概述
InternetNetwork of Networks网络之网络异构网络互联技术Vinton Cerf每个网络内部使用各自的通信协议每个网络与其它网络通信时使用TCP/IP协议族。
用IP实现异构网络互联 实际操作层面用路由器互联 Internet的构成 TCP/IP协议族的引入简化问题分而治之。随后在此基础上构建各类应用。
网络协议的分层
分层将庞大而复杂的问题转化为若干较小的局部问题。最初的 ARPANET 设计时提出了分层的设计方法。1974 年IBM 按照分层的方法制定并提出系统网络体系结构 SNA (System NetworkArchitecture)。 通用的协议分层思想理论抽象。 TCP/IP的分层模型理论实现。 通用的协议分层思想
第 N N N层实体在实现自身定义的功能时只使用 N − 1 N-1 N−1层提供的服务 N N N层向 N 1 N1 N1层提供服务此服务不仅包括 N N N层本身所具备的功能还包括由下层服务提供的功能总和最底层只提供服务是提供服务的基础最高层只是用户是使用服务的最高层中间各层既是下一层的用户又是上一层服务的提供者仅在相邻层间有接口且下层服务的实现细节对上层完全透明
网络协议层间关系
TCP/IP的分层模型
建立在硬件层上的4个软件层 协议分层的原则第 n n n层所收到的数据就是源主机第 n n n层所发出的数据。 操作系统边界和协议地址边界 点到点和端到端IP层为间隔 协议依赖关系上层依赖下层 协议依赖关系沙漏模型 多路复用和多路分解多路复用 多路复用和多路分解多路分解
协议分析
协议分析也叫网络分析通过程序分析网络数据包的协议头和尾从而了解信息和相关的数据包在产生和传输过程中的行为包含该程序的软件和设备就是协议分析器。 本质上协议分析器是在窃听网络通信。协议分析器的本质是数据包嗅探观察正在运行的协议实体间交换报文的基本工具被称为数据包嗅探器packet sniffer又称分组捕获器。数据包嗅探器捕获计算机发送和接收的报文。网络嗅探工具通常用来进行协议分析和网络监控以便于进行故障诊断、性能分析和安全分析等黑客则用之进行安全敏感信息的监听和截取。 分组捕获器需要把网卡设置为“混杂模式” 这样当数据包从嗅探器所连接的网卡上进入系统时嗅探程序可以接收到整个以太网内的网络数据信息包括所有的广播、组播和单播数据包甚至错误的数据包从而实现数据包捕获。分组分析器的作用是分析协议报文并把报文中所有字段的内容直观地显示出来。其主要构成通常包括一个包过滤器、数据包缓冲区和解码部分。
协议分析应用
协议分析器通常用于诊断网络出现故障。协议分析器也可以用来测试网络。通常测试可以采用两种方式来进行一种是主动向网络中发送数据包来测试另一种是通过侦听不同寻常的通信这种被动方式来测试。协议分析器还可以用于搜集网络性能的趋势数据
协议分析任务
网络协议三要素语法、语意、同步。 语法常见网络协议的数据包格式语义数据包首部和尾部各个字段的含义和作用同步各个协议的工作过程
常见网络协议
PPP协议 PPP基础网络接口层协议数据链路层协议点到点数据帧的接收者就是固定对等端 经典协议的新应用 PPPoAPPP over ATMATM上的PPPPPPoEPPP over Ethernet以太网上的PPP PPP应用场景 PPP规定的内容 帧格式及成帧方法链路控制协议LCP用于建立、配置和测试PPP链路网络控制协议NCP用于建立和配置网络层协议 使用的认证协议: 口令认证协议PAPPassword Authentication Proto基于挑战的握手认证协议CHAPChallenge Handshake Authentication Protocol 协议流程 链路状态转换 PPP帧格式 LCP 链路配置
报文选项
最大接收单元MRUMaximum Receive Unit用以向对方通告可以接收的最大报文长度认证协议用以向对方通告使用的认证协议PAPC023CHAPC223质量协议用以向对方通告使用的链路质量监控协议LQRC025幻数用以防止环路协议域压缩PFCProtocol Field Compression用以通知对方可以接收“协议”字段经过压缩的PPP帧地址及控制域压缩 ACFC Address and Control FieldCompression 用以通知对方可以接收“地址”和“控制”字段经过压缩的PPP帧
链路终止 链路维护用于错误通告及链路状态检测
IPCP
基本思想 与LCP的配置协商过程类似定义的报文类型包括Configure-Request、Configure-Ack、Configure-Nak、Configure-Reject、Terminate-Request、Terminate-Ack和Code-Reject。定义的配置选项多个IP地址、IP压缩协议、IP地址。 IP压缩协议用以协商使用的压缩协议IPCP仅规定了“Van Jacobson002D”。IP地址发起方在Configure-Request中包含该选项请求回应方分配一个IP地址回应方在Configure-Nak包含该选项返回合法IP。
认证协议PAP 报文格式
安全缺陷
身份和口令信息明文传输无法防止窃听、重放和穷举攻击PPP仅在建立链路的阶段使用在数据传输过程中不能使用这意味着通信过程中不能再验证对等端身份
认证协议CHAP 报文格式
PPPoE
CSMA/CD
多点接入广播网络载波监听每台主机发送数据前都要监听信道以确定信道是否空闲碰撞检测主机“边发送边监听”当发现发生了冲突时立即停止数据发送 以太网高带宽PPP提供用户认证、控制、服务、记账等功能。PPPoE结合二者的优点。
协议流程
发现阶段获取AC的MAC地址从多个AC中选择一个生成会话ID 发起PADI PPPoE Active Discovery Initiation 客户端通过广播请求以获取可用的AC提供PPPoE Active Discovery OfferPADO在收到请求后若AC可以提供服务则返回该报文请求PPPoE Active Discovery Reques tPADR如果客户端收到来自多个AC的应答则必须从中选择一个并向该AC发出请求确认PPPoE Active Discovery Session-confirmationPADS收到请求的AC向客户端返回确认从而建立PPP连接及会话。 会话阶段为虚拟的PPP链路分配资源 利用LCP配置链路使用PAP或者CHAP验证身份使用IPCP等网络层控制协议配置相关参数 断开链路 可以用PPP实现也可以进入PPPoE定义的终止步骤PADT PPPoE报文格式与封装封装于以太网帧中发现阶段帧类型字段为0x8863否则为0x8864 会话阶段报文格式与封装
地址解析协议ARP
地址解析协议ARP解决IP地址到物理地址的映射问题 两种地址解析方式 空间较小且容易配置的地址空间巨大且固化的地址 两种地址解析方式 直接映射方法比如对于物理地址长度为1字节且不固定的情况可以用IP地址的最后一个字节作为物理地址动态解析方法物理地址长度大于IP地址长度且固化此时使用ARPAddress Resolution Protocol地址解析协议
ARP的思想和步骤
思想广播询问单播回应“谁的IP地址是IPB请把你的物理地址MACB告诉我”
发送方主机发送一个ARP请求报文该报文以广播方式发送其中包含了接收方的IP地址网络上所有的主机都会收到这个请求它们把请求中包含的接收方IP地址与自身的IP地址相比较 如果相等则向发送方回应回应中包含了自己的物理地址否则不作回应。 跨网转发时ARP的使用方法ARP请求使用物理广播方式投递而物理广播帧不能跨越路由器转发
A在把数据报投递给R之前首先利用ARP获取I1的物理地址MAC1。A把数据报投递给R的I1接口。此时数据报的目的IP地址为IPB但封装该数据报的物理帧将目的物理地址设置为MAC1。R把数据报从I2接口转发出去转发前利用ARP获取主机B的物理地址。R之后把数据报投递给B。此时数据报的源IP地址是IPA但相应物理帧的源物理地址为MAC2 跨网转发时ARP的使用方法
代理ARPR代理主机D向A发送ARP应答作用无缝添加路由器使得子网的变化对主机透明
ARP报文格式及封装 物理网络类型/物理地址长度物理网络的类型及相应的地址长度协议类型/协议地址长度上层协议的类型及相应地址的长度报文字段设置
请求报文发送方在前两个字段填写自己的IP和MAC地址体现了捎带的思想发送方也会在目标IP地址字段写明所请求目标的IP地址。应答报文目标硬件地址字段填写应答方的物理地址交换发送方地址区和目标地址区的内容并返回给发送方
封装ARP报文的帧类型字段设置为0806h
移动IP
主机在变换网络后仍能以原来的IP地址与Internet上的其它主机进行通信。具有以下特点
透明性对于应用程序、传输层协议以及变动中未涉及的路由器移动性是透明的即它们不知道主机已经变换网络。互操作性使用移动IP的主机简称为移动主机MHMobile Host它既可以与固定主机进行互操作也可以与其它MH进行互操作且不需要进行特殊编址分配给MH的地址与分配给固定主机的地址没有不同。安全性移动IP提供认证机制确保报文的完整性防止其它主机假冒MH。宏移动性移动IP不会试图处理快速的网络变换而是重点关注持续时间较长的移动性问题。 移动主机拥有两个IP地址家乡地址和转交地址。
家乡地址家乡网络给MH分配的固定地址在移动过程中保持不变被主机的应用程序和传输层使用转交地址外地网络给MH分配的临时地址随MH的移动而改变 合作定位转交地址co-located care-of address通过DHCP或手工配置等方式分配给MH外地代理转交地址foreign agent care-of address外地代理将自己的IP地址提供给MH使用
MH把转交地址发送给家乡代理。家乡代理截取所有目的地为MH家乡地址的数据报将转交地址作为新的目的地以隧道方式传送给MH。当MH回到原始位置即家乡网络时使用家乡地址。
移动IP的工作机制代理发现
移动代理通告
移动代理通告对ICMP的路由器通告报文进行扩展 类型16长度报文长度字节为单位 生命期代理接受注册请求所允许的最大时间间隔以秒为单位全1为无限长 转交地址提供了MH可使用的转交地址列表 前缀长度扩展位于移动代理通告扩展之后对应路由器通告报文中的“路由器地址/优先级”对了便于移动主机判断自己所处的网络 一字节填充扩展保持报文按字节数偶数对齐 完整的ICMP代理通告报文代码字段0或16。0普通路由器16行使移动代理功能地址数字段可以设置为0。 报文封装封装于IP数据报随后封装于物理帧帧目的地址为代理的源MAC地址IP数据报首部TTL为1目的地址可设置为224.0.0.1或255.255.255.255。
移动代理恳求
与路由器肯定报文相同要求IP数据报首部TTL为1
移动主机判断自己的位置
根据路由器通告MH可以判断自己是否在外地网络比较网络前缀根据路由器通告MH还可判断自己是否更换了网络
移动IP的工作机制注册
作用 通过注册得到外地代理的路由服务通知家乡代理它当前的转交地址可以使一个即将过期的注册重新生效MH回到家乡网络后通过注册实现注销。 家乡代理根据接收到的注册报文可以创建或更改MH的移动绑定信息。每个绑定信息包括MH的家乡地址、当前的转交地址等内容。 移动主机登记过程 注册报文UDP报文目的端口号434生命期以秒为单位的注册时间0表示立即取消注册全1表示无穷大。家乡地址、家乡代理、转交地址核心 注册应答报文代理返回应答
移动IP的工作机制数据传送
单播数据传送 向MH发送数据向MH发送的数据报先被家乡代理截获家乡代理查找注册信息取出MH当前的转交地址然后使用隧道技术将数据报封装发往MH的转交地址如果是合作定位转交地址则由MH解封如果是外地代理转交地址则由外地代理先解封再交给MH。MH发送数据在外地网络的MH通常选择外地代理作为默认路由器。MH将需要发送的数据报直接交给外地代理由外地代理负责将数据报路由到相应目的地。此时无需使用隧道技术。 广播数据传送 接收广播数据MH如果希望接收家乡网络的广播报文在登记时必须向家乡代理声明。家乡代理收到广播报文后要根据MH使用的转交地址类型进行相应转发。对于合作定位转交地址家乡代理使用隧道直接将广播报文发送给MH对于外地代理转交地址家乡代理通过隧道将广播报文发给外地代理后者收到后先进行解封装再发送给MH。发送广播数据MH发送广播报文时如果目的地是外地网络则可以直接广播如果目的地是家乡网络或某个特定网络则使用隧道发送给家乡代理。后者收到后先进行解封装再转发。 组播数据传送 接收组播数据MH要接收组播数据须先加入组播组加入方式有两种。一种是向外地网络中的组播路由器申请加入另一种是通过隧道向家乡代理申请加入。这要求家乡代理是一个组播路由器。对于第一种加入方式组播路由器收到组播报文后将转发给MH所在的外地网络对于第二种加入方式家乡代理收到组播报文后使用隧道转发给MH。发送组播数据MH发送组播报文也有两种方式一种是直接在外地网络上发送二是通过隧道发送给家乡代理。由于组播路由器转发组播报文时要根据其源地址采取反向路径转反策略进行因此如果MH直接在外地网络上组播则使用的地址必须是合作定位转交地址。当通过隧道转发组播报文时也必须将内外两个IP首部的源地址设为MH的家乡地址。
移动IP的三角路由问题 解决MH向通信节点发送地址绑定信息家乡IP地址转交地址对。通信节点通过查找缓存中MH的地址绑定信息获得转交地址然后直接通过隧道将数据报发送到转交地址。问题当MH较多时会有较大负担绑定地址无认证的话容易受到DoS。
隧道技术
问题传送数据报时经过不能直接传送它的网络 解决使用隧道技术 隧道入口为数据报添加一个能够在隧道中路由的首部称为封装 隧道出口要去掉所添加的首部称为解封。 移动IP使用三种隧道技术
IP-in-IP封装IP-in-IP Encapsulation最小封装Minimal Encapsulation通用路由封装GREGeneric Routing Encapsulation。
IP-in-IP封装 新IP首部 协议类型字段设置为4版本字段和服务类型字段拷贝原首部中的值源地址和目的地址分别设置为隧道的入口和出口点标识字段设置为唯一标识新数据报的值TTL要设置足够大使其能穿越隧道标志字段和片偏移字段要根据是否对原始数据报进行了分片而设置选项字段根据需要设置首部长度、总长度以及与校验和要重新计算。在入口和出口处均要将原IP首部的TTL减1。要防止递归封装
最小封装 新IP首部 协议类型字段设置为55版本字段和服务类型字段拷贝原首部中的值源地址和目的地址分别设置为隧道的入口和出口点如果隧道入口将原来的数据报从某个端口路由到了隧道端口那么生存时间字段要相应减小如果隧道入口就是原来数据报的源IP地址那么生存时间不减小首部长度字段、总长度字段和校验和字段要重新计算。 最小转发首部 协议类型原数据报的协议类型。原目的地址原数据报的目的IP地址。S比特和原源IP地址字段如果隧道入口与原数据的源IP地址相同则S字段置0无原源地址字段否则S置1原源地址字段置为原数据的源IP地址。校验和设置最小转发首部的校验和。
通用路由封装 “递归”Recur提供了允许的封装次数不为0才能继续封装并将值减1版本和标记字段0。协议字段描述了被封装的数据对应的协议类型。CRKSs5比特前4比特描述了可选部分中校验和、路由、密钥、序号字段的有无。最后1比特表示严格源路由。 可选部分
校验和2字节针对GRE首部和被封装的数据计算偏移2字节路由字段中从第一个字节开始到包含严格源路由信息之间的字节数密钥4字节封装者插入用于认证提供了允许的封装次数不为0才能继续封装并将值减1序号4字节每个被封装的报文都有1个编号CRKSs5比特前4比特描述了可选部分中校验和、路由、密钥、序号字段的有无。最后1比特表示严格源路由。路由字段变长包含源路由信息 路由字段变长包含源路由信息 地址族指明了地址格式比如IPv4或IPv6地址SRESource Routing Entry偏移从“路由信息”的第一个字节开始到源路由信息之间的字节数SRE长度源路由信息的长度
HTTP协议
客户端/服务器模型。页面存储于服务器客户端通过HTTP向服务器请求页面。HTTPHyperText Transfer Protocol超文本传输协议基于TCP80端口。通信过程客户端请求服务器应答。HTTP特点无状态、双向传输、协商能力、高速缓存、支持中介HTTP请求方式
持久连接和长度
非持久连接客户端与服务器建立连接获取页面之后关闭连接。建立TCP连接-请求-响应-关闭连接持久连接一旦客户端与服务器建立了TCP连接就可以在这个请求上发送多次请求并接收响应等所有请求都发送完成后再关闭连接。建立TCP连接-请求-响应-请求-响应…-关闭连接流水线技术在响应到来之前就可以发送下一个请求
HTTP协商及条件请求
客户端与服务器协商的内容访问是否需要认证、接受的文件类型、语言类型以及一系列控制信息。服务器驱动协商方式浏览器首先发出协商请求指定一系列选项值及URL服务器收到请求后从中选取满足浏览器需求的一项。如果有多项符合条件则服务器选取优先级最高的一项。浏览器驱动协商方式浏览器向服务器发送请求询问可用的内容。服务器返回可能的内容列表。浏览器之后从中选取一项发送第二个请求获得该数据项。服务器驱动示例Accept: text/html, text/plain; q0.5, text/x-dvi; q0.8条件请求浏览器在发送请求时可以指定响应满足的条件。比如If-Modified-Since01 Jan. 2017 00:00:00 GMT
代理服务器和高速缓存
代理服务器浏览器和服务器的中介提高通信效率减轻服务器负担。浏览器使用代理服务器可以绕过某些限制。高速缓存代理服务器设置缓存页面不必每次都到服务器取 代理服务器标准明确规定了代理服务器如何处理请求、浏览器如何与代理服务器协商等内容客户端高速缓存提高通信效率。
HTTP报文格式
HTTP报文就是字符串包括开始行、首部行、实体主体 开始行请求报文的是请求行响应报文的是状态行
请求行请求方式GET、POST等URL指明所要获取页面对应的URLHTTP版本比如HTTP1.1。3项内容时间用空格间隔。状态行HTTP版本状态码3位数字字符表示操作的状态解释字符串对状态码含义的进一步解释 首部行数据长度、协商选项、请求条件、高速缓存控制信息等。每个首部格式“首部名称首部字符串” 。每个首部之间回车换行分隔 实体主体数据部分。首部和实体之间要间隔一个空行
HTTP面临的安全风险
HTTP协议明文传输数据攻击者嗅探获取敏感隐私数据HTTP协议缺乏消息完整性检测易遭受中间人攻击
增强HTTP安全性 使用HTTPS HTTP over SSLSecure Socket Layer安全套接层基于SSL安全协议对HTTP进行封装。URL形式为“https://”
HTTP协议首部解析二义性不同HTTP实现在解析和处理Host首部时存在不一致。带有多个Host首部的HTTP请求下游与上游设备可能理解成不同的Host地址。
攻击原理利用不一致性通过精心构造报文实现污染ISP缓存、CDN缓存、绕过WAF Web Application FirewallWeb应用防火墙。
电子邮件系统
三大部件
用户代理电邮系统与用户直接交互的图形界面。用户可以通过这个界面编写邮件、读取邮件以及管理邮箱。邮件传送代理相当于邮政系统中的邮局基本功能是发送和接收邮件。此外还会设置缓冲区相当于邮筒来存放待发送的邮件。邮箱相当于邮政系统中的信箱。用户使用电邮系统时必须申请邮箱这样发给用户的邮件首先保存在用户邮箱里供用户随时读取
系统结构和基本功能 5项基本功能
撰写让用户能够方便地撰写邮件传输将邮件发送到接收方用户邮箱中报告向发信者反馈发信成功与否显示让接收方能够方便地读取邮件处理让接收方能够方便地处理邮件群发一次性向一组接收者发送邮件
邮箱地址及电子邮件格式
邮箱地址邮箱名邮箱所在主机的域名每个域名内邮箱唯一电子邮件格式 信封信封供邮件传送代理使用。首部供用户代理使用可以包含多个字段每个首部字段的形式字段名字段值。以“X-”开头的字段是用户定义的字段其余则是标准字段。正文邮件的内容部分是NVTNetwork Virtual Terminal网络虚拟终端ASCII文本行
发送邮件先发首部再跟一个空行之后是正文 解决的问题如何让邮件可以发送各种格式的附件解决方案MIMEMultipurpose Internet Mail Extensions多用途互联网邮件扩充。定义的3项内容 加入5个新的邮件首部字段提供了邮件主体相关信息定义了传送编码可将任意格式的数据转化为SACII码。定义了许多邮件内容格式对多媒体电子邮件的表示方法进行了标准化。
简单邮件传输协议SMTP
发送邮件的协议。没有规定邮件的格式和存储方式等内容仅仅给出了相互通信的两个SMTP进程之间如何交换信息。使用客户端/服务器模型。发送邮件的进程是客户端接收邮件的进程是服务器。基于TCP使用知名端口号25。定义了14条命令21种应答。每条命令都是一个4字符的串后面带上相应的参数每种应答都由一个3字符数字开始后面跟上简单的文字说明
POP协议
POPPost Office Protocol用于接收邮件目前广泛使用的是POP3。使用客户端/服务器模型基于TCP使用知名端口号110。POP服务器仅仅在用户身份得到认证后才允许对邮箱的操作认证使用用户名和口令。定义的内容用户登录、退出、读取信件和删除信件的命令。特点用户从邮箱中读取邮件时会把邮件下载到本地保存之后服务器会把邮件删除掉
IMAP
IMAP Internet Mail Access Protocol用于接收邮件。使用客户端/服务器模型基于TCP使用知名端口号143与POP相比对远程邮箱的管理和操作功能更强大且用IMAP读邮件时本地并不保存该邮件在用户明确地发出删除命令之前服务器都不会删除这个邮件。
POP VS IMAP
POP是邮件传输模型IMAP是联机访问模型POP只是简单第传输文件IMAP是客户端登录服务器后进行远程访问IMAP用户可先查看首部可根据需要创建文件夹并移动邮件可选择收取邮件的一部分用户使用IMAP时相当于在邮件传送代理的机器上为自己开了个存储空间邮箱就相当于自己的“网络硬盘” 用户代理软件 OutlookFoxmail 等在后台实现了SMTP、POP、IMAP等协议。
电子邮件系统面临的安全威胁
SMTP面临的安全威胁:
RCPT命令用来定义邮件的接收地址当邮件接收者不是本地用户时SMTP服务器返回特定的信息码黑客可以据此来发现服务器上的真实用户账号。VRFY命令用来判断一个SMTP服务器是否能将邮件发送到特定的接收者如果是本地用户则返回用户的完整地址否则返回给客户否定的答复或表明他愿意转发任何发送到远程用户的邮件。该命令可以使黑客检测到服务器上的用户的邮件地址或被垃圾邮件发送者利用来转发垃圾邮件。EXPN命令用来向SMTP服务器查询邮件列表和别名。黑客可以用它来获取敏感信息。TRUN命令允许两台计算机在一个TCP连接中进行双向邮件传输。通过允许服务器转换同客户机的角色将目的地是客户机域名的邮件发给客户机服务器只根据客户机自称的名字进行应答。若黑客冒用别人的域名那么邮件服务器会将所有应发往合法用户的邮件发给黑客
数据明文传输问题口令易被获取数据无完整性机密性保护机制. 解决方法对SMTP进行认证扩展用SSL保护相关协议比如基于SSL的SMTPS SMTP over SSL等用PGP进行安全处理引入数字签名和加密算法处理邮件 系统设置和应用时面临的安全问题
邮件服务器被攻击邮件是明文方式保存在邮件服务器的用户邮箱中所以只要能够进入用户的邮箱就可以看到发给用户的原始文件甚至更改邮件的内容邮件的接收者无法知道所接收的邮件是否真实电子邮件病毒电子邮件传播病毒通常是把自己作为附件发送给被攻击者。如果接收到该邮件的用户不小心打开了附件病毒即会感染机器并且自动打开地址薄使电子邮件病毒能够大面积传播。垃圾邮件向新闻组或他人电子信箱发送的未经用户准许、不受用户欢迎的难以退掉的电子邮件或电子邮件列表叫做垃圾邮件Spam。目前还没有能够百分之百精确的垃圾邮件检测技术。
域名系统DNS
Internet通信节点的标识——IP地址不便于记忆。DNS给Internet上的主机起个便于记忆的名字同时解决名字到IP地址的映射问。DNS定义的两个要素 抽象要素指明名字语法和名字的授权管理规则具体要素指明将名字映射到IP地址的具体方法 顶级域名划分以用途或国家地区为准引入域名树描述层次结构。域每个独立管理的子树。域名系统这个层次型的命名管理系统域名树根节点未命名第二层是顶级域TLDs 树型结构优点便于管理维护保证了名字的唯一性域名命名树中每个节点都有唯一的一个名字节点的名字是由该节点回溯到根节点的一条路径比如搜狐Web服务器域名“www.sohu.com”。标号每个域名都是由‘.’分隔的字符串组成的其中每个字符串称为一个“标号”label。每个域名任意后缀也构成了一个域名。每个标号最长63字符一个域名最长255字符。
域名解析原理
基本思想设置域名服务器保存域名和IP地址的映射关系查询服务器即可获得域名对应的IP地址。服务器设置引入多个服务器每个服务器负责部分域名。它们分布于不同的位置互相协作最后构成了一个大型的分布式域名服务系统提供全球域名的解析服务。服务器组织树型结构最高层为根服务器全球共13个。每个根服务器都有多个镜像服务器全球共574台服务器
域名解析原理
域名解析过程客户端/服务器模型 域名查询步骤
域名解析器向域名服务器发出查询请求其中包含需要解析的域名域名服务器收到请求后在本地数据库中查询找到域名对应的IP地址域名服务器把查询获得的结果返回给域名解析器 解析类型分为递归解析和迭代解析
递归解析客户端的默认域名服务器将代理客户完成查询工作如果自身数据库中不包含所请求的记录它将继续实施递归查询以获取结果迭代解析根服务器不接受递归解析请求当它收到一个查询请求且自身数据库中不包含请求的记录时它将向请求服务器指示可能包含该记录的服务器以便请求服务器进行进一步查询
高速缓存
思想设置缓存保存最近解析的域名和IP地址的映射关系避免每次都重新解析由此提高效率。客户端的二步解析法
需要解析某个域名时首先在本地缓存中查找如果有则直接使用如果没有走第二步向域名服务器发送域名解析请求。 服务器缓存存放最近解析的名字以及从何处获取该名字相关的记录。收到请求后首先确认自己是否被授权如果没授权查缓存把缓存记录告诉客户端把信息来源也告诉之把信息标记为“非授权绑定”。
缓存记录保存时间授权域名服务器响应一个请求时会给出TTL值
减少DNS报文长度的措施
域名缩写
思想同一单位内部的只要拨分机同一城市的不必加区号。比如在xxgc.edu.cn域内请求该域的服务器解析kouxiaorui.xxgc.edu.cn域名则仅填入kouxiaorui即可
域名压缩
思想压缩同一个查询中不同域名相同的字段。比如jun.xxgc.edu.cn和cs.pku.edu.cn只要存储一个edu.cn并用指针指明复用的位置 DNS既可以基于TCP也可以基于UDP服务器则使用知名端口53.核心数据传输量少可靠性要求低的时候用UDP否则用TCP.
DNS面临的安全威胁
DNS欺骗恶意攻击者改变DNS响应并把解析结果指向自己可控的主机。信任服务器背叛用户配置的可信服务器被黑客控制。数据窃听及篡改破坏机密性和完整性。DNS数据未作安全处理因此攻击者很容易利用嗅探等方式获取并篡改数据。名字连锁攻击伪造描述别名的CNAME或NS记录通过响应的管理机构区和附加信息区返回给查询者从而导向恶意链接。否认域名存在攻击者返回查询失败应答或将某个资源记录删除