0

是否可以检测某些 TCP 或 UDP 流量是由 Android 手机本身直接生成和处理,还是被绑定到不同的机器?

使用 HTTP,检测相对简单——只需查看User-Agent请求中的字符串,就很有可能看到某种揭示模式。

诸如 https、ssh、IPsec、OpenVPN 等隐蔽协议呢?是否可以根据 TCP/UDP 标头或内容检测发起方操作系统?

如何伪装流量以避免通过加密协议的被动指纹识别来检测?

例如,如果手机运行的是 Android 2.2,并且连接到 OS X 或 OpenBSD,哪些 TCP/UDP 和 https/ssh/IPsec/OpenVPN 参数会显示非 Android 操作系统?

4

2 回答 2

1

你可以根据TTL、TCP ISN等进行分析。 http://www.cse.sc.edu/~wyxu/papers/wisec66-schulz.pdf包含详细分析

于 2014-03-08T16:45:17.513 回答
0

您似乎正在寻找TCP/IP 堆栈指纹识别软件。

P0f代表“被动操作系统指纹”,在 TCP 级别观察数据包并根据网络堆栈实现对操作系统做出假设。P0f 被动地执行此操作,这意味着它不需要与客户端交互。

p0f 站点有一个示例,您可以使用该示例检查自己的指纹。请注意,许多移动网络提供商通过代理运行,这往往意味着代理是指纹而不是客户端。

另请参阅 EFF 的Panopticlick项目,该项目表明几乎每个 Web 浏览器都是唯一可指纹识别的,即使在阻止 cookie 时也是如此。请不要滥用指纹来侵犯用户隐私。

于 2014-05-15T07:33:59.347 回答