好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

端口扫描原理CSNA论坛.ppt

22页
  • 卖家[上传人]:工****
  • 文档编号:589176231
  • 上传时间:2024-09-10
  • 文档格式:PPT
  • 文档大小:938.50KB
  • / 22 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 端口扫描原理1 端口扫描p 端口扫描是通过与目标系统的TCP/IP端口连接,查看该系统处于监听或运行状态的服务p 一项自动探测本地和远程系统端口开放情况的策略及方法,它使系统用户了解系统目前向外界提供了哪些服务,从而为管理或攻击提供了一种手段 2 端口扫描p 原理1)向目标主机的TCP/IP服务端口发送探测数据包,记录目标主机的响应2)分析响应,判断服务端口是打开还是关闭,得知端口提供的服务或信息p 端口扫描也可以通过捕获本地主机或服务器的流入流出IP数据包对本地主机的运行情况进行监视,查找内在弱点3 端口扫描1、TCP概述2、TCP扫描1)全连接扫描2)半连接扫描(TCP SYN扫描)3)TCP FIN扫描(秘密扫描)4)TCP Xmas和TCP null5)间接扫描3、UDP扫描4、防范4 TCP 协议概述 源端口和目的端口字段——各占2 字节端口是运输层与应用层的服务接口运输层的复用和分用功能都要通过端口才能实现序号字段——占4 字节TCP 连接中传送的数据流中的每一个字节都编上一个序号序号字段的值则指的是本报文段所发送的数据的第一个字节的序号确认号字段——占4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号。

      数据偏移——占4 bit,它指出TCP 报文段的数据起始处距离TCP 报文段的起始处有多远数据偏移”的单位不是字节而是32 bit 字(4 字节为计算单位)保留字段——占6 bit,保留为今后使用,但目前应置为0 紧急比特URG ——当URG =1 时,表明紧急指针字段有效它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)确认比特ACK ——只有当ACK =1 时确认号字段才有效当ACK =0 时,确认号无效推送比特PSH (PuSH) ——接收TCP 收到推送比特置1 的报文段,就尽快地交付给接收应用进程,而不再等到整个缓存都填满了后再向上交付复位比特RST (ReSeT) ——当RST =1 时,表明TCP 连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接同步比特SYN ——同步比特SYN 置为1,就表示这是一个连接请求或连接接受报文终止比特FIN (FINal) ——用来释放一个连接当FIN =1 时,表明此报文段的发送端的数据已发送完毕,并要求释放运输连接窗口字段——占2 字节窗口字段用来控制对方发送的数据量,单位为字节TCP 连接的一端根据设置的缓存空间大小确定自己的接收窗口大小,然后通知对方以确定对方的发送窗口的上限。

      检验和——占2 字节检验和字段检验的范围包括首部和数据这两部分在计算检验和时,要在TCP 报文段的前面加上12 字节的伪首部紧急指针字段——占16 bit紧急指针指出在本报文段中的紧急数据的最后一个字节的序号选项字段——长度可变TCP 只规定了一种选项,即最大报文段长度MSS (Maximum Segment Size)MSS 告诉对方TCP:“我的缓存所能接收的报文段的数据字段的最大长度是MSS 个字节MSS 是TCP 报文段中的数据字段的最大长度数据字段加上TCP 首部才等于整个的TCP 报文段填充字段——这是为了使整个首部长度是4 字节的整数倍 用三次握手建立用三次握手建立TCPTCP连接连接 • A A 的的TCP TCP 向向B B 发出连接请求报文段,其首部中的同步发出连接请求报文段,其首部中的同步比特比特SYN SYN 应置为应置为1 1,并选择序号,并选择序号x x,表明传送数据时的,表明传送数据时的第一个数据字节的序号是第一个数据字节的序号是x x• B B 的的TCP TCP 收到连接请求报文段后,如同意,则发回确收到连接请求报文段后,如同意,则发回确认• B B 在确认报文段中应将在确认报文段中应将SYN SYN 置为置为1 1,其确认号应为,其确认号应为x x +1+1,同时也为自己选择序号,同时也为自己选择序号y y。

      • A A 收到此报文段后,向收到此报文段后,向B B 给出确认,其确认号应为给出确认,其确认号应为y y +1+1• A A 的的TCP TCP 通知上层应用进程,连接已经建立通知上层应用进程,连接已经建立• 当运行服务器进程的主机当运行服务器进程的主机B B 的的TCP TCP 收到主机收到主机A A 的确认的确认后,也通知其上层应用进程,连接已经建立后,也通知其上层应用进程,连接已经建立建立建立TCP TCP 连接连接 从A 到B 的连接就释放了,连接处于半关闭状态相当于A 向B 说:“我已经没有数据要发送了但你如果还发送数据,我仍接收释放释放TCPTCP连接连接 TCP扫描思路:通过穷举法,依次判断哪些端口在开放依次判1-1024端口是否开放客户客户端端服务服务器端器端SYNSYNSYN/ACKSYN/ACKACKACKSYNSYNRST/ACKRST/ACKRSTRST端口开放端口开放客户客户端端服务服务器端器端端口关闭端口关闭12 TCP扫描1)全连接扫描是TCP端口扫描的基础,通过完整的三次握手与目标主机的指定端口建立一次完整的连接客户客户端端服务服务器端器端SYNSYNSYN/ACKSYN/ACKACKACKSYNSYNRST/ACKRST/ACKRSTRST端口开放端口开放客户客户端端服务服务器端器端端口关闭端口关闭13 TCP扫描2)半连接扫描(TCP SYN扫描)两次握手客户客户端端服务服务器端器端SYNSYNSYN/ACKSYN/ACKSYNSYNRST/ACKRST/ACK端口开放端口开放客户客户端端服务服务器端器端端口关闭端口关闭14 TCP扫描3)TCP FIN(秘密扫描)针对Unix系统客户客户端端服务服务器端器端FINFINFINFINRSTRST端口开放端口开放客户客户端端服务服务器端器端端口关闭端口关闭15 TCP扫描4)TCP Xmas和TCP null针对Unix系统,是TCP FIN的变种;TCP Xmas扫描打开FIN、URG、PUSH标记NULL扫描则关闭所有标记。

      目的是防止包被过滤16 TCP扫描5)间接扫描攻击主机借用第三方IP(欺骗、伪装主机IP)扫描目标主机攻攻击击主主机机伪伪装装主主机机第三第三方主方主机机目目标标主主机机使用伪装主机使用伪装主机IP给目标主机发包给目标主机发包根据端口状态,发根据端口状态,发回应包给伪装主机回应包给伪装主机发回应包给目标主机发回应包给目标主机监控伪装主机的监控伪装主机的行为,分析目标行为,分析目标主机状态主机状态17 UDP扫描UDP概述18 UDP扫描为何UDP扫描不容易实现? 1)UDP ICMP端口不可达扫描数据包数据包ICMP_PORT_UNREICMP_PORT_UNREACHEDACHED客户客户端端服务服务器端器端端口关闭端口关闭19 UDP扫描1)UDP ICMP端口不可达扫描问题:丢包、限定ICMP差错分组的发送频率;需root权限数据包数据包ICMP_PORT_UNREICMP_PORT_UNREACHEDACHED客户客户端端服务服务器端器端RFC1812RFC181220 UDP扫描2)UDP recvfrom()和write() 扫描对非root用户不能直接读取“端口不可达”错误,Linux能间接地在它们到达时通知用户:对一个关闭的端口的第二次调用write()将失败在非阻塞的UDP套接字上调用recvfrom()时,如果ICMP出错还没有到达时回返回EAGAIN-重试。

      如果ICMP到达时,返回ECONNREFUSED-连接被拒绝,用来查看端口是否打开21 端口扫描的防范1)确定SYN包中伪造IP,通过防火墙、路由器拒绝其进入2)基于状态的防火墙防护3)进行出口过滤,防止有伪造IP的包的流出22 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.