⬅返回
情感分析
文章导读
    各位跨境伙伴们大家好,今天为大家带来比较重要的网络环境因素:操作系统指纹识别。网络环境中有各式各样的指纹,如浏览器指纹、Canvas指纹、Webgl指纹等,操作系统指纹也是非常重要的,例如,检测到您正在使用的浏览器是Win10 64位的,操作系统却是一台linux,是不是很郁闷呢。

    各位跨境伙伴们大家好,今天为大家带来比较重要的网络环境因素:操作系统指纹识别。

    网络环境中有各式各样的指纹,如浏览器指纹、Canvas指纹、Webgl指纹等,操作系统指纹也是非常重要的,例如,检测到您正在使用的浏览器是Win10 64位的,操作系统却是一台linux,是不是很郁闷呢。

    今天就为大家带来几种小方法来找出自己正在使用的操作系统

    1、MTU

    通信术语 最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。windows:MTU一般都是1484。查看命令:netsh interface ipv4 show subinterfaces

    linux:MTU一般都是1500,查看命令:ifconfig

    MTU的值可以进行调整以更好的适应网络传输速度。所以这个值目前不太准确了。

    2、端口

    根据window或者linux一些常用端口进行识别。例如window远端桌面连接端口是3389,而linux的ssh端口是22。

    可以通过nmap工具检测系统开放端口

    3、数据包分析

    这种是最准确的识别方式,正确率也是非常高的,原理就是主动向目标主机发送请求,根据目标主机返回的数据信息来分析识别目标主机系统。

    (1)FIN探测识别

    发送一个 FIN 包给目标主机某一个打开的端口并等待回应。按照 RFC,正确的行为是不响应 ,但例如 MS Windows、BSDI、CISCO、HP/UX、MVS 和 IRIX 等都会发回一个 RESET从而暴露OS版本特征。

    (2) BOGUS 标记探测识别

    向目标主机发送一个含有未定义的TCP标记的TCP头的SYN包,某些操作系统的回应将包含这个未定义的标记,而其它一些系统收到SYN+BOGUS包将关闭连接,利用这些特性可以识别一些操作系统。

    (3) ISN采样探测识别

    这个方法是找出当响应一个连接请求时由 TCP 实现所选择的初始化序列数的式样,这样可以区分一些操作系统。 例如传统的 64K 、随机增量或真“随机”。Windows(和一些其他系统)则使用一个“时间相关”模型,每过一段时间 ISN 就被加上一个小的固定数。

    (4) ICMP 消息引用 探测识别

    RFC 规定 ICMP 错误消息可以引用一部分引起错误的源数据包。对于目标主机的某个端口不可达消息,几乎所有实现都只送回IP头及其后的8个字节。因此在对方没有开放端口的情况下也是可以探测到对方的系统类型。

    原文来自邦阅网 (52by.com) - www.52by.com/article/32259

    声明:该文观点仅代表作者本人,邦阅网系信息发布平台,仅提供信息存储空间服务,若存在侵权问题,请及时联系邦阅网或作者进行删除。

    评论
    登录 后参与评论
    发表你的高见