• 端口扫描技术


    端口

    “端口”在计算机和网络领域中是个非常重要的概念。它是指网络中的TCP协议、UDP协议的通信接口,端口号的范围从0到65535,分为系统默认端口号和一半端口号。
    在这里插入图片描述
    在这里插入图片描述

    端口扫描

    1、概念

    对某一段端口或某个指定端口进行扫描。

    2、原理

    原理是使用TCP/IP协议,向远程目标主机的某一端口提出连接请求,并分析目标主机的应答状态,从而判断出目标系统端口的开关状态。

    3、端口扫描的种类

    在这里插入图片描述

    在通常建立TCP连接之前需要进行三次握手和四次挥手,如下图:
    在这里插入图片描述

    在这里插入图片描述

    3.1 全连接扫描

    在这里插入图片描述
    在这里插入图片描述
    如上图,在进行全连接扫描时首先发送SYN,如果端口开启则返回SYN/ACK,可以正常建立连接,如果端口关闭则会返回一个RST命令。

    全连接扫描优点:
    (1)实现简单,对权限没有严格要求。
    (2)系统中的任何用户都有权利使用。
    (3)是得到banners信息的唯一方法。
    (4)扫描速度快。
    缺点:
    (1)在日志文件中留下大量记录,容易被发现。
    (2)容易被防火墙和IDS检测、过滤。

    3.2 半连接扫描

    在这里插入图片描述

    在这里插入图片描述
    如上图所示,当端口开启传回SYN/ACK时,客户端不会回传ACK建立连接,而是会返回RST。
    优点:
    (1)未建立TCP连接。
    (2)不会被记录到系统日志中,扫描隐蔽。
    缺点:
    (1)需要攻击者拥有客户机的root权限。
    (2)可以被防火墙检测和过滤。

    3.3 隐蔽扫描

    在这里插入图片描述
    在这里插入图片描述
    当端口开放时无响应但当端口关闭时服务器端会回传一个RST命令。
    还有如下操作:
    在这里插入图片描述
    在这里插入图片描述

    优点:
    (1)隐蔽性高,能穿透一班防火墙或者IDS系统。
    (2)目标主机上也不会留下痕迹。
    缺点:
    (1)数据包容易被丢弃。
    (2)精确度偏低。
    (3)不适用于windows系统。

  • 相关阅读:
    SSM学习——springboot整合ssm(15)
    二叉树题目:二叉树剪枝
    Hive学习(待续)
    无缝集成的艺术:iCloud与Apple TV的协同之旅
    手把手教你在Ubuntu22.04 上安装 Vivado、HLS、Vitis 2022.2版本
    android gradle 开发与应用(一) : Gradle基础
    自动化测试框架 —— pytest框架入门篇
    深入理解Kafka核心设计及原理(三):消费者
    Redis篇(3)——事件循环与io模型
    Dropdown 下拉菜单实现标签页的相关操作
  • 原文地址:https://blog.csdn.net/weixin_42374938/article/details/126187338