技术解析

Linux 系统指纹(OS Fingerprinting)有办法修改吗
0
2021-06-28 01:18:46
idczone
事情的起因是发现了这样一个网站: https://browserleaks.com/ip
我挂了 SS 打开页面,
其中有一项:TCP/IP OS Fingerprinting,基本准确的检测到我是 Linux 3.xx 系统。

Google 了半天没看到什么现成的方案,测试发现不是用 7 层协议判断的,应该是直接从 TCP/IP 的握手包( Passive, SYN )判断的。
那么问题来了,有可能伪造成 Windows 吗?
我记得 linux ttl 和 windows 的不一致,修改这个应该差不解决。

wiki 里面有解释,ttl 只是最基础的。
https://en.wikipedia.org/wiki/TCP/IP_stack_fingerprinting

试过修改 TTL 没用的

你浏览器打开的么?那首先你浏览器就泄漏你的 OS 信息了。

no

这不是通过浏览器的 header 来判断的吗,怎么跟 tcp 扯上关系了

这个基本没有好办法,考虑使用前置代理

很明显不是用 UA 等 header 来判断的,你试试就知道了

Linux 这检测挺准,但是后面的 Linux 2.2.x-3.x 就是纯属唬人了。我换了 N 个代理,2.x, 3.x, 4.x 都给我显示这个。。。

我 macOS 上去也显示 Linux 2.x-3.x

可以参考一下 nmap 的 OS detecting 功能是怎么实现的,每个 OS 的 TCP/IP 协议栈在收发包特征有一些细微的区别,比如 TTL 值这是最简单的,还有其他的比如如何排列 IP Option 或者 TCP Option 等等。

Linux 3.11 and newer
我是 4.11

Linux 2.2.x-3.x
我是 Android 5.1+Firefox

Android7.0 通过 ss 代理访问,ss 服务器是 Windows server 2016。
Windows 7 or newer | Language: Unknown | Link: Unknown | MTU: 1488 | Distance: 18 Hops

Linux 还是 Windows 系列 还是蛮准的

ssr 访问...直接不显示

估计你安装锐速之类的加速了吧?修改了底层的东西

可能是数据比较老了,2.2.x-3.x 也包括了 4.x

是啊,加了锐速
数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服