本文提出了一种名为MPAF(Multi-Phase Attribute Fingerprint)的加密流量识别方法,旨在解决传统方法在复杂场景下准确率和效率下降的问题。MPAF将流量通信过程分为域名、握手元数据和消息序列三个阶段,利用各阶段的特征进行多层次分类。该方法通过叶节点掩码树和随机森林进行分类,确保高准确率和鲁棒性。实验表明,MPAF在多个数据集上均能达到99%以上的分类准确率,并且平均等待时间显著低于现有方法,显示出良好的实时性和泛化能力。
🚦 **多阶段分类策略**:MPAF方法将加密流量的识别过程分解为三个递进的阶段:域名阶段、握手元数据阶段和消息序列阶段。域名阶段利用早期提取的域名信息实现快速初步分类,旨在最大化分类效率。若流量在此阶段未能被准确识别,则进入握手元数据阶段,该阶段仅依赖TLS握手消息中的原始明文字节进行更精细的特征提取与分类。最终,对于仍无法判定的流量,消息序列阶段将依据TLS消息长度序列进行最终识别,确保所有流量都能得到处理。
🌳 **叶节点掩码树与随机森林**:MPAF在三个分类阶段统一采用了基于C4.5决策树的叶节点掩码树分类器。该分类器通过信息增益率进行节点划分,并将纯度不高(包含多个类别样本)的叶节点进行“掩码”,即不直接分类,而是将样本传递到下一阶段,从而逐步提高分类的准确性。为了解决单棵决策树的过拟合问题,MPAF在各阶段构建了由多棵掩码树组成的随机森林,并结合Bootstrap机制,通过多数投票来决定最终分类结果,增强了系统的鲁棒性。
🚀 **高效率与泛化能力**:实验结果显示,MPAF方法在多个数据集上取得了超过99%的总体分类准确率,并且平均等待时间(AWT)显著低于现有方法,尤其是在域名阶段,AWT可达0秒,极大地提升了流量分类的实时性。此外,MPAF在跨数据集测试中表现出良好的泛化能力,即使在面对未知或多样化的应用流量时,准确率仍能维持在较高水平,这得益于其基于域名和握手元数据等通用属性的设计,使其在实际部署中具有显著的实用价值。
📊 **阶段性能分析**:MPAF的三个阶段在性能上各有侧重。域名阶段准确率高但召回率略低,但其极低的AWT使其成为提升效率的关键。握手元数据阶段在准确率和召回率上均表现出色,能够处理大部分剩余流量。消息序列阶段虽然性能波动较大,准确率相对较低,但作为补充阶段,它确保了所有流量都能被最终分类,并对系统整体准确率有所贡献。
原创 宋坤书 2025-09-15 21:30 四川
本文提出一种多阶段属性指纹的流量识别方法,将加密流量通信过程分为域名阶段、握手元数据阶段和消息序列阶段三个阶段。


原文标题:MPAF: Encrypted Traffic Classification With Multi-Phase Attribute Fingerprint原文作者:Yige Chen, Yipeng Wang原文链接:https://doi.org/10.1109/TIFS.2024.3428839发表会议:TIFS笔记作者:宋坤书@安全学术圈主编:黄诚@安全学术圈编辑:张贝宁@安全学术圈
1、研究背景随着TLS等加密协议的广泛应用,传统基于端口或静态统计特征的加密流量分类方法难以同时保证分类的准确率和效率,尤其是在复杂或跨数据集场景中,其分类准确率会进一步下降。为此,本文提出了一种基于多阶段属性指纹(Multi-Phase Attribute Fingerprint, MPAF)的识别方法,通过执行多阶段流量分类来提高TLS流量的分类效率,同时确保较高的分类准确率。2、MPAF识别方法本文提出一种多阶段属性指纹的流量识别方法,将加密流量通信过程分为域名阶段(Domain Name Phase)、握手元数据阶段(Handshake Metadata Phase)和消息序列阶段(Message Sequence Phase)三个阶段,其架构如下图:
2.1 域名阶段域名阶段旨在利用域名信息在最早期对加密流量进行快速分类,从而提升分类效率。该阶段包括域名提取器、域名向量化器和域名分类器三个部件组成:域名提取器:根据IP地址和时间戳反向匹配DNS记录,提取每个流的关联域名。提取过程要求DNS记录中的IP包含目标流的地址,请求时间早于流的首包时间,并在多条记录中选取与流的时间戳最接近的DNS记录;域名向量化器:将离散域名编码为向量形式,构建嵌入矩阵,每个向量表示该域名在不同应用中的出现频率。在分类时,将提取到的域名映射为对应的向量,若域名未出现在训练集中,则将其映射为零向量;域名分类器:利用域名向量对加密流量进行分类,大量流量可以在此阶段被准确识别,其余未能分类的流将被送入下一阶段进一步处理。2.2 握手元数据阶段握手元数据阶段负责将第一阶段未能识别的加密流量进行进一步分类,该阶段仅依赖于TLS握手消息中的原始明文字节,由元数据提取器、元数据向量化器和元数据分类器三个部件组成: *元数据提取器:提取器以流的前L个握手数据包为输入,从每个数据包中取前B个字节组成字节序列。通过bi-gram编码生成token序列后,输入至基于Transformer的模型,该模型包含位置嵌入层、12层自注意力编码器和两个全连接层,用于从握手数据中学习区分性强的特征表示;元数据向量化器:当Transformer网络训练完成后,提取器输出的隐藏特征经过tanh激活函数进行处理,作为每个流的特征张量。随后采用与第一阶段相同的方式进行向量化,得到嵌入向量,用于后续分类器的输入;元数据分类器:分类器利用嵌入向量对剩余流量进行进一步分类。大部分未在第一阶段识别的流量在此阶段可被准确分类。对于仍无法判定的流量,将被送入第三阶段进行处理。分类算法逻辑与前一阶段相同,仅在输入特征和模型参数方面有所不同。2.3 消息序列阶段消息序列阶段是主要处理在前两个阶段中未成功分类的加密流量,该阶段依据每条流的TLS消息长度序列进行分类,旨在实现对所有剩余流的最终识别。消息长度提取器:由于TLS消息内容被加密,无法直接使用内容进行深度检测,因此本阶段利用TLS消息的长度作为分类依据。每个TLS消息长度反映其原始数据结构,多个消息组成的长度序列可反映应用流量特征。提取器从每条流中提取前H个消息长度,构成消息长度序列作为后续分类输入;序列分类器:分类器直接以消息长度序列作为输入,不进行嵌入编码。为保证输入一致性,分类器将长度序列统一为固定维度:过长序列被截断,过短序列用0补齐。随后,分类器输出最终分类结果,确保所有输入流量均被处理。该分类器结构与前两个阶段类似,仅在输入特征和模型参数方面有所不同。2.4 基于树的分类算法叶节点掩码树(Leaf-Node Masking Tree-Based)分类器是MPAF在三个阶段中统一采用的分类器,基于C4.5决策树构建,使用信息增益率进行节点划分。MPAF在前两个分类阶段中对纯度不高(包含多个类别样本)的叶节点进行“掩码”,即不直接分类,而是将样本传递到下一阶段;纯净节点则立即分类。最终阶段保留所有叶节点输出结果,实现完整分类。叶节点掩码树分类器结构如下图:
为了解决单棵决策树的过拟合问题,MPAF在各个阶段构建多个掩码树组成随机森林,采用Bootstrap机制对样本和特征进行有放回抽样。对于每个流量样本,若在棵树中有超过(是预设的阈值参数)的一致预测结果,则接受分类结果,否则就流入下一阶段,确保分类置信度和系统鲁棒性。3、实验设置为了评估MPAF方法的有效性,本文使用了四个加密流量分类数据集,包括两个自建数据集(手动采集和自动采集)以及两个公共跨平台数据集(Android和iOS)。手动采集采用真实用户操作记录高质量流量,自动采集则借助Monkeyrunner脚本模拟App行为,自动化程度更高但交互真实性较低。自建数据集中约25%-30%的流量缺乏域名,5%-10%同时缺失域名和证书。公共数据集则采用Van Ede等人发布的公开数据集[1],其中覆盖多个国家热门应用,存在明显长尾分布,因此只保留了样本数超过30的应用类别以保证实验可靠性。研究人员设计了参数选择实验和阶段性能分析实验,评估MPAF三阶段分类器在不同决策树数量和阈值下的分类准确率和分类效率。同时采用重复随机子采样进行交叉验证(按照7:3划分训练集和测试集)来降低随机误差。实验评估指标包括:Precision、Recall、Accuracy、F1-Macro和平均等待时间(Average Waiting Time, AWT),兼顾分类准确性与实时性表现。其中AWT衡量从流初始化到收集到足够信息用于分类所需时间,越小则表示分类的执行速度越快。4、实验结果MPAF通过网格搜索确定了叶节点掩码树分类器的最优参数组合为{K=30,P=0.6},在三个数据集上实现了高达99%以上的总体分类准确率。在前两个阶段可以分类约99%的流量,同时具有较高的准确率和较低的AWT,其中域名阶段的AWT为0秒,显著提升了流量分类的实时性。第三阶段被用于处理前两阶段残留的难分类流,虽然准确率较低(34.67%-76.52%),但仍对提升系统整体准确率有辅助作用。分类器参数选择的实验结果和各个阶段的分类性能如下表:通过阶段性能分析实验发现,各阶段性能差异明显,域名阶段准确率高但召回率略低,握手元数据阶段兼具高准确率与召回率,消息序列阶段性能波动较大,适合作为补充阶段。总体而言,MPAF的三阶段组合在手动采集数据集和Android平台数据集中表现尤为突出,而在iOS平台数据集中,尽管前两阶段精度略有波动,整体表现仍保持较高性能。单个MPAF阶段分类性能如下表:
4.1 与现有方法对比本文对MPAF方法进行了全面评估并与FS-Net、EBSNN、ET-BERT、ETC-PS、Input-Agnostic和AMUS这六种先进加密流量分类方法进行对比。实验在手工采集与跨平台(Android和iOS)数据集上进行,采用最优参数设置下进行多阶段特征提取和分类。分类有效性和分类效率的对比如下图:
由实验结果可以看出,MPAF在三个数据集上均取得超过96%的高准确率,并在手工采集数据集上优于所有对比方法。其AWT明显低于多数方法,说明其拥有最快的处理速度。在iOS数据集上,其识别效果虽稍逊于ET-BERT,但其处理效率提升近4倍,这主要得益于MPAF采用较少的包数进行判断,极大缩短了等待时间。在数据集规模变化测试中,MPAF表现出极强的鲁棒性,分类准确率在训练集比例从20%提升至80%时变化不大。跨数据集测试中,MPAF准确率仍能维持79%左右,远超其他方法大幅下滑的表现,说明其基于域名和握手元数据等通用属性的设计增强了模型的泛化能力。跨数据集分类性能如下表:
因此,MPAF不仅可以实现高效精准的加密流量分类,同时还展现出良好的数据适应性和跨环境鲁棒性,为实际部署中面对多样化和未知应用流量的识别提供了有力支持,具有显著的实用价值和推广前景。参考文献:[1] Van Ede T, Bortolameotti R, Continella A, et al. Flowprint: Semi-supervised mobile-app fingerprinting on encrypted network traffic[C]//Network and distributed system security symposium (NDSS). 2020, 27.安全学术圈招募队友-ing 有兴趣加入学术圈的请联系 secdr#qq.com
专题最新征文
阅读原文
跳转微信打开