• 操作系统识别


    1、操作系统指纹

    操作系统的识别有很多方法,大多跟TCP/IP协议有关。操作系统对TCP/IP的实现,都是严格遵循RFC标准的,问题RFC标准仅描述了TCP/IP的基本要求,并没有对所有内容形成统一的行业标准,于是各操作系统厂商在实现了TCP/IP协议栈的时候,或多或少的保留了一些独特的痕迹,很多人把这种痕迹形象地称为“操作系统指纹”。
    在这里插入图片描述

    2、识别类型

    操作系统识别可以分为主动识别和被动识别。

    2.1 主动识别技术

    主动识别是指主动往目标主机发送数据包,并对响应数据进行分析的过程。最典型的分析方法是TTL分析。

    TTL分析

    TTL是IPv4数据包头部的一个字段,是P数据包可以转发的最大跳数,每转1跳TTL值减1。TTL是由发送主机设置的,不同操作系统有不同的TTL初始值。
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    上图ttl是255,所以我们可以推测是UNIX系统。

    Nmap探测

    使用命令非常简单,在启动nmap时,增加-O参数,就可以启动系统识别功能。
    在这里插入图片描述
    在这里插入图片描述
    Nmap使用的技术有FIN探测、ISN探测、Don’t Fragment位探测、TCP初始窗口的大小探测、ACK值探测、ICMP出错消息抑制、ICMP出错消息回射完整性等。
    在这里插入图片描述
    在这里插入图片描述

    2.2 被动识别技术

    从不主动发送数据包,只是被动的捕获远程主机返回的包,来分析其OS类型版本。
    被动识别技术特性:通用性更强、准确性更低。
    被动识别使用的技术有TTL值判断、TCP窗口大小判断、DF标志位判断、TOS操作系统服务类型分析。

    banner技术

    banner技术通过主机提供的各种服务进行分析,也称为“Banner识别技术”。
    在这里插入图片描述

    人工识别技术

    人工判定主要依据经验,比如目标服务器上运行了一个ASP.net语言编写的网站,那么可以推断目标主机的操作系统是Windows server系列的操作系统,而且版本会在2003之后。

    3、防护策略

    (1)可以部署防火墙和主侵防御系统,确保外部主机无法直接扫描内部主机。
    (2)banner抓取比较防御,可以修改操作系统的配置文件,屏蔽或删除某些具有特征的信息。

  • 相关阅读:
    企业级磁盘阵列存储系统由硬到软全析
    Rasa 多轮对话机器人
    软件设计模式
    【LeetCode:2736. 最大和查询 | 贪心 + 二分 + 单调栈】
    redis 技术分享
    java和vue开发的电子书系统自动检测敏感词小说网站
    记一次gateway微服务启动报错
    《Python趣味工具》——ppt的操作(刷题版)
    Linux环境基础开发工具使用
    Go语言 context包源码学习
  • 原文地址:https://blog.csdn.net/weixin_42374938/article/details/126190357