传说中的南邮 SS 嗅探算法

这就是传说中的南邮 SS 嗅探算法:

一种针对特定网站类别的网页指纹识别方法 CN 105281973 A(谷歌专利检索)

为了照顾没有梯子的同学,将其保存到内网一份:

PDF 格式下载

目前没有 GFW 何时更新的消息,并且这个算法也不一定被使用,不过防患于未然总是好的。

我简单扫了一眼:

[0047]在实际环境下应用该方法时,由于存在大量商业匿名通信工具和浏览器,本发明 选取shadowocks翻墙软件以及chrome浏览器进行说明。如图3所示,首先目标通过使用 shadowsocks翻墙工具访问浏览境外网站,shadowsocks工具连接到远端SOCKS代理服务 器,并使用chrome浏览器,此时shadowsocks工具在目标用户和远端代理服务器之间建立 了一个匿名加密通信信道,该信道通过某个监控者可控的交换设备,该交换设备被配置有 镜像端口,可由监控者抓取目标用户的流量数据,监控者通过从流量数据中提取出相应的 网页加载数据,并对其进行分析。其中,监控者与目标用户处于相同的通信链路环境,目标 所产生的流量数据可被监控方获取,流量数据载荷部分被加密。本发明基于该环境依据如 图1所示的方法流程进行工作,具体的分析步骤包括:

[0048] 步骤1:监控者通过利用可控交换设备使用数据采集工具进行数据收集,包括目 标数据收集和训练数据收集。目标数据收集主要是通过数据采集工具对目标浏览网站的流 量数据进行收集,并从流量中提取出网页加载流量。训练数据收集主要是监控者使用浏览 器访问目标可能会浏览的网站并在通信链路上收集并提取出相应网站的网页加载流量,其 中每个网站分别使用4种不同的浏览器操作方式对其进行访问,每种浏览器操作方式分别 收集10次指纹数据。指纹数据由数据采集工具导入至CSV文件中,在每个指纹数据记录了 一次网页加载过程中浏览器与远端Web服务器间所有的流量活动,这些指纹数据由一些系 列TCP数据包构成,由于加密技术的影响无法得到TCP数据包载荷部分的信息,其余TCP数 据包信息的数据结构包括:数据包序号、数据包传输时间、源IP地址、目的IP地址、数据包 大小以及数据包描述。

[0049] 步骤2:收集完指纹数据后,需要对其进行数据预处理操作。指纹数据中的TCP数 据中含有大量的协议控制数据,这些协议控制数据主要用于控制TCP数据的建立和断开, 除此之外原始的指纹数据中还包含有其它的冗余和噪音数据,包括:TCP重传数据包以及 TCP坏包。本案例将shadowsocks指纹数据中数据包大小小于70的数据包视为协议控制数 据包予以清除,并将数据包描述中含有”Retransmission”,”Dup”,”0ut-〇f-〇rder”描述字 段的数据包视为坏包和重传数据包予以清除。

可以看到它简单将包长度作为特征进行提取,这个在特征工程中是相当不可靠的,可以用混淆轻易绕过。

进一步的发现,以及反制措施,我研究透彻之后就会发布。