操作系统侦测

简介: 操作系统侦测

操作系统侦测

  • 目标:识别目标主机操作系统的类型
  • 侦测方法:网络协议栈指纹识别技术


常用的网络协议栈指纹识别方法

TTL(存活时间)

TTL:Time To Live,即数据包的“存活时间”,表示一个数据包在被丢弃之前可以通过多少跃点(Hop)。不同操作系统的缺省TTL值往往是不同的。


常见操作系统的TTL值

  • Windows 9x/NT/2000 Intel TTL=128
  • Digital Unix 4.0 Alpha TTL= 60
  • Linux 2.2.x Intel TTL= 64
  • Netware 4.11 Intel TTL= 128
  • AIX 4.3.x IBM/RS6000 TTL= 60
  • Cisco 12.0 2514 TTL= 255
  • Solaris 8 Intel/Sparc TTL= 64


Windows系统修改TTL值的方法

打开注册表,在“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Par
ameters”
新建一个“DefaultTTL”Dword键值进行自定义


DF位

DF(不分段)位识别:不同OS对DF位有不同的处理方式,有些OS设置DF位,有些不设置DF位;还有一些OS在特定场合设置DF位,在其它场合不设置DF位。


Window Size

  • Window Size:TCP接收(发送)窗口大小。它决定了接收信息的机器在收到多少数据包后发送ACK包。
  • 特定操作系统的缺省Window Size基本是常数,例如AIX 用0x3F25,Windows、OpenBSD 、FreeBSD用0x402E。
  • 一般地,UNIXd的Window Size较大。Windows、路由器、交换机等的较小。


ACK 序号

不同的OS处理ACK序号时是不同的。如果发送一个FIN+PSH+URG的数据包到一个关闭的TCP端口,大多数OS会把回应ACK包的序号设置为发送的包的初始序号,Windows和一些打印机则会发送序号为初始序号加1的ACK包。


对FIN包的响应

发送一个只有FIN标志位的TCP数据包给一个打开的端口,Linux等系统不响应;有些系统如 Windows、CISCO、HP/UX等,发回一个RST。


ISN (初始化序列号)

  • 不同的OS在选择TCP ISN时采用不同的方法:一些UNIX系统采用传统的64K递增方法;
  • 较新的Solaris、IRIX、FreeBSD、Digital Unix、Cray等系统采用随机增量的方法;
  • Linux 2.0、OpenVMS、AIX等系统采用真随机方法;
  • Windows系统采用一种时间相关的模型;
  • 还有一些系统使用常数,如3Com集线器使用0x803,Apple LaserWriter,打印机使用0xC7001。


主机使用的端口

一些OS会开放特殊的端口,如Windows的137、139;一些网络设备,如入侵检测系统、防火墙等也开放自己特殊的端口。


操作系统的侦测

nmap-os-db(操作系统数据库文件)
  • 该数据库包含了超过2600种操作系统的指纹信息,Nmap把TCP和UDP报文发送到目标机器上,然后将检查结果和nmap-os-db数据库进行比对
  • 默认路径:/usr/share/nmap/nmap-os-db

操作系统侦测相关的命令选项

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
1天前
|
安全 算法 调度
探索操作系统的心脏:内核
【6月更文挑战第14天】在数字世界的庞大机器中,操作系统扮演着不可或缺的角色。它如同计算机系统的灵魂,协调着软硬件之间的复杂交互。本文将深入探讨操作系统的核心——内核,揭示其如何管理硬件资源、提供系统服务以及保障系统安全。我们将通过一个独特的视角,即内核的内部运作机制,来理解操作系统的复杂性和重要性。
|
10天前
|
存储 算法 网络安全
操作系统的心脏:内核
本文深入探讨了操作系统中最为关键的组成部分——内核。我们将通过一个独特的视角,即内核作为操作系统的“心脏”,来分析其功能、结构以及它如何与系统的其他部分协同工作。不同于常规的技术文章摘要,我们不列出关键点或总结,而是邀请读者跟随我们的思考脉络,一起揭开内核的神秘面纱。
|
12天前
|
存储 安全 数据安全/隐私保护
探索操作系统的心脏:内核与用户空间
【6月更文挑战第4天】本文将深入探讨操作系统的两个核心组成部分:内核和用户空间。我们将分析它们各自的功能、交互方式以及在现代计算环境中的重要性。通过比较单核与微内核设计,我们还将讨论不同内核架构对系统性能和安全性的影响。
8 0
|
1月前
【操作系统】实验九 写一个设备驱动程序
【操作系统】实验九 写一个设备驱动程序
11 1
|
1月前
|
Linux Android开发 iOS开发
操作系统的作用与常见操作系统介绍
操作系统的作用与常见操作系统介绍
|
1月前
|
开发者
操作系统相关问题——软件是如何访问硬件的
硬件是各种各样的,发展速度还是非常快的。每个硬件都有自己的个性,操作系统不可能及时更新各种硬件的驱动方法(不可能刚出某个新硬件,OS开发者就开始为其编写驱动,这显然不现实)。 因此便出现了各种硬件适配器,这就是IO接口。接口其实就是标准,大家生产生出来的硬件按照这个标准工作就实现了通用。硬件在输入输出上大体分为串行和并行,相应的接口也就是串行接口和并行接口。
|
1月前
|
存储 编译器 Linux
操作系统相关问题——应用程序和操作系统怎么配合
应用程序和操作系统都是软件, CPU会将它们一视同仁,甚至CPU不知道自己在执行的程序是操作系统还是一般应用软件。CPU只知道去cs:ip寄存器中指向的内存取出指令并执行,它不知道什么是操作系统。
|
6月前
|
C++
【操作系统】—操作系统的四个特征
【操作系统】—操作系统的四个特征
|
11月前
|
人机交互
操作系统进行设备控制的常见方式
基于上一篇博客,对操作系统进行常见设备控制的方式介绍,并知识拓展。
210 2
操作系统进行设备控制的常见方式
|
存储 资源调度 监控
【操作系统】操作系统硬件组成和进程
【操作系统】操作系统硬件组成和进程
【操作系统】操作系统硬件组成和进程

热门文章

最新文章