- 1、本文档共141页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 网络扫描与监听一、网络扫描 翟光群 iegqzhai@ 安全层次 TCP/IP基础 网络体系架构 重要协议的数据包格式 IP、ICMP TCP、UDP TCP连接 一些上层协议 网络体系架构 OSI参考模型 TCP/IP协议栈 协议栈各层数据包结构 IP数据包格式 IP首部说明 版本号,目前取值4 首部长度,4个字节为单位,取值范围5--15 服务类型,指定传输的优先级、传输速度、可靠性和吞吐量等 报文总长度,最大长度为65535字节 报文标识,唯一标识一个数据报,如果数据报分段,则每个分段的标识都一样 标志,最高位未使用,定义为0,其余两位为DF(不分段)和MF(更多分段) 段偏移量,以8个字节为单位,指出该分段的第一个数据字在原始数据报中的偏移位置 IP首部说明(续) 生存时间,取值0--255,以秒为单位,每经过一个路由节点减1,为0时被丢弃 协议,指明该数据报的协议类型,1为ICMP,4为IP,6为TCP,17为UDP等 首部校验和,每通过一次网关都要重新计算该值,用于保证IP首部的完整性 选项,长度可变,提供某些场合下需要的控制功能,IP首部的长度必须是4个字节的整数倍,如果选项长度不是4的整数倍,必须填充数据 IP地址 保留地址,只用于内部通信: - 55 - 55 - 55 特殊意义的IP地址 全0的IP地址表示本机 以0作网络号的IP地址表示当前的网络 32比特全为1的IP地址表示局域网的广播地址 127.xx.yy.zz保留做回路(loopback)测试 ICMP协议 Internet Control Message Protocol,本身是IP的一部分,用途 网关或者目标机器利用ICMP与源通讯,当出现问题时,提供反馈信息 用于报告错误 在IP协议栈中必须实现 特点: 其控制能力并不用于保证传输的可靠性 它本身也不是可靠传输的 并不用来反映ICMP报文的传输情况 ICMP数据包 ICMP数据包直接包含在IP数据包的净荷数据中,IP头中协议类型为1 ICMP数据的第一个字节代表ICMP报文的类型,它决定了后续数据的格式 ICMP报文类型 0 Echo Reply 3 Destination Unreachable 4 Source Quench 5 Redirect 8 Echo 11 Time Exceeded 12 Parameter Problem ICMP报文分类 ICMP差错报文 目的不可达报文(类型3) 超时报文(类型11) 参数出错报文(类型12) ICMP控制报文 报源抑制报文(类型4) 重定向(类型5) ICMP请求/应答报文 回送请求和响应报文(类型0和8) 时间戳请求和响应报文(类型13和14) 地址掩码请求和响应报文(类型17和18) 其他 ICMP Echo报文 类型:0表示Echo Reply,8表示Echo 代码:0 标识符:标识一个会话,例如,用进程ID 序号:可能这样用:每个请求增1 选项数据:回显 ICMP Time Exceeded报文 类型:11 代码:0表示传输过程中时间到,1表示分片装配过程中时间到 出错的IP包IP首部+原始IP数据包中前8个字节 ICMP Destination Unreachable报文 类型:3 代码:0表示网络不可达,1表示主机不可达;2表示协议不可达;3表示端口不可达;等等 出错的IP包的IP首部+原始IP数据包中前8个字节 TCP数据包格式 TCP首部说明 源端口号和目的端口号:源和目的主机的IP地址加上端口号构成一个TCP连接 序号和确认号:序号为该TCP数据包的第一个数据字在所发送的数据流中的偏移量;确认号为希望接收的下一个数据字的序号; 首部长度,以4个字节为单位,通常为20个字节 6个标志位: URG:如果使用了紧急指针,URG置1,紧急指针为当前序号到紧急数据位置的偏移量 ACK:为1表示确认号有效,为0表示该TCP数据包不包含确认信息 PSH:表示是带有PUSH标志的数据,接收到数据后不必等缓冲区满再发送 TCP首部说明(续) RST:用于连接复位,也可用于拒绝非法的数据或拒绝连接请求 SYN:用于建立连接,连接请求时SYN=1,ACK=0;响应连接请求时SYN=1,ACK=1 FIN:用于释放连接,表示发送方已经没有供发送的数据 窗口大小:表示在确认字节后还可以发送字节数,用于流量控制 校验和:覆盖了整个数据包,包括对数据包的首部和数据 选项:常见的选项是MSS(Maximum Segment Size) UDP数据包格式 TCP连接的建立和终止 TCP连接若干要点 TCP/IP的一些实现原则 当一个SYN或者FIN数据包到达一个关闭的端口,TCP丢弃数据包同时发送一个RST数据包 当一
文档评论(0)