本技术涉及网络安全,具体而言,涉及一种恶意加密流量的检测方法、装置、存储介质及电子设备。
背景技术:
1、随着个人和企业对网络安全风险防范意识的不断增强,越来越多的互联网应用采用加密技术来保护产品隐私数据的安全。然而恶意软件采用加密流量传输信息以躲避恶意流量检测。在加密流量检测中,恶意软件产生的加密流量是隐蔽且具有危险性的流量,其中隐藏了许多已知或未知的威胁,因此对加密的恶意流量进行检测刻不容缓,对提升网络安全防护能力具有重大意义。
2、相关技术中,基于机器学习的恶意加密流量检测是常用的检测技术,使用该方法对恶意加密流量检测时,首先需要抽取流量会话中的多维度特征,将特征向量输入到机器学习模型中,然后模型输出检测结果。模型在进行结果判定时,通常会根据默认的固定阈值(threshold,例如该阈值为0.5)进行判定,大于0.5则为正类(恶意流量),小于0.5为负类(正常流量)。然而,在很多业务场景中,固定的阈值并不是最优的恶意流量的判定临界线,因此如何找到合适的阈值显得尤为重要。
3、针对相关技术中固定阈值的恶意流量检测模型在不同流量应用场景的适用性差的问题,目前尚未提出有效的解决方案。
技术实现思路
1、本技术的主要目的在于提供一种恶意加密流量的检测方法、装置、存储介质及电子设备,以解决相关技术中固定阈值的恶意流量检测模型在不同流量应用场景的适用性差的问题。
2、为了实现上述目的,根据本技术的一个方面,提供了一种恶意加密流量的检测方法。该方法包括:获取待检测加密流量,并从待检测加密流量中提取出目标流量特征;将目标流量特征输入目标模型,得到待检测加密流量的预测概率,其中,目标模型由多组训练样本训练得到,每组训练样本包括历史加密流量的流量特征和用于表征所述历史加密流量是否为恶意加密流量的流量标签;确定待检测加密流量的目标流量应用场景,并确定目标流量应用场景的分类评估指标,其中,分类评估指标至少包括误报率和正确检出率;基于分类评估指标确定恶意加密流量的目标判定阈值,并判断预测概率是否大于等于目标判定阈值;在预测概率大于等于目标判定阈值的情况下,将待检测加密流量确定为恶意加密流量。
3、可选地,目标模型由以下方式得到:获取标注有流量标签的多个历史加密流量,并从每个历史加密流量中提取历史加密流量的流量特征;将每个历史加密流量的流量特征和流量标签确定为一组训练样本,得到多组训练样本;基于多组训练样本训练预设模型,得到目标模型。
4、可选地,从待检测加密流量中提取出目标流量特征包括:从待检测加密流量中获取目标流数据,其中,目标流数据为应用预设加密协议的流数据;从目标流数据中提取握手协议特征和统计类特征;将握手协议特征和统计类特征确定为目标流量特征。
5、可选地,基于分类评估指标确定恶意加密流量的目标判定阈值包括:获取多组测试样本,其中,每组测试样本包括测试加密流量和用于表征所述测试加密流量是否为恶意加密流量的测试流量标签;确定一组预设阈值,对于一组预设阈值中的每个预设阈值,基于每个预设阈值计算多组测试样本的正确检出率和误报率;判断正确检出率是否大于等于分类评估指标中的预设正确检出率,并判断误报率是否小于等于分类评估指标中的预设误报率;在正确检出率大于等于预设正确检出率,并且误报率小于等于预设误报率的情况下,将预设阈值确定为判定阈值;从一组预设阈值中的判定阈值中确定目标判定阈值。
6、可选地,基于每个预设阈值计算多组测试样本的正确检出率和误报率包括:通过预设阈值和目标模型确定每组测试样本的预测结果,并根据每组测试样本的测试流量标签确定测试加密流量的实际结果,其中,预测结果为恶意加密流量或非恶意加密流量,实际结果为恶意加密流量或非恶意加密流量;确定预测结果和实际结果均为恶意加密流量的测试样本的数量,得到第一数量;确定预测结果和实际结果均为非恶意加密流量的测试样本的数量,得到第二数量;确定预测结果为非恶意流量并且实际结果为恶意加密流量的测试样本的数量,得到第三数量;确定预测结果为恶意流量并且实际结果为非恶意加密流量的测试样本的数量,得到第四数量;计算第一数量与第三数量的和,得到第一和值,并计算第一数量与第一和值的比值,得到正确检出率;计算第四数量与第二数量的和,得到第二和值,并计算第四数量与第二和值的比值,得到误报率。
7、可选地,通过预设阈值和目标模型确定每组测试样本的预测结果包括:对于每组测试样本,将测试样本中的测试加密流量的目标流量特征输入目标模型进行预测,从目标模型中提取出预测测试样本是否为恶意加密流量的测试概率,并判断测试概率是否大于等于预设阈值;在测试概率大于等于预设阈值的情况下,将测试样本的预测结果确定为恶意加密流量;在测试概率小于预设阈值的情况下,将测试样本的预测结果确定为非恶意加密流量。
8、可选地,从一组预设阈值中的判定阈值中确定目标判定阈值包括:在判定阈值仅有一个的情况下,将判定阈值确定为目标判定阈值;在判定阈值存在多个的情况下,确定每个判定阈值对应的正确检出率和误报率;对于每个判定阈值,计算正确检出率和误报率的差值,得到多个判定阈值的一组差值;确定一组差值中的最大差值,并确定最大差值对应的至少一个判定阈值;在最大差值对应的判定阈值仅有一个的情况下,将判定阈值确定为目标判定阈值;在最大差值对应的判定阈值存在多个的情况下,计算用于表征所述多个判定阈值的集中趋势的统计值,得到目标判定阈值。
9、为了实现上述目的,根据本技术的另一方面,提供了一种恶意加密流量的检测装置。该装置包括:获取单元,用于获取待检测加密流量,并从待检测加密流量中提取出目标流量特征;输入单元,用于将目标流量特征输入目标模型,得到待检测加密流量的预测概率,其中,目标模型由多组训练样本训练得到,每组训练样本包括历史加密流量的流量特征和用于表征所述历史加密流量是否为恶意加密流量的流量标签;第一确定单元,用于确定待检测加密流量的目标流量应用场景,并确定目标流量应用场景的分类评估指标,其中,分类评估指标至少包括误报率和正确检出率;第二确定单元,用于基于分类评估指标确定恶意加密流量的目标判定阈值,并判断预测概率是否大于等于目标判定阈值;第三确定单元,用于在预测概率大于等于目标判定阈值的情况下,将待检测加密流量确定为恶意加密流量。
10、为了实现上述目的,根据本技术的另一方面,提供了一种非易失性存储介质,所述非易失性存储介质包括存储的程序,其中,所述程序运行时控制所述非易失性存储介质所在的设备执行前述实施例任意一项所述的网络安全检测方法
11、为了实现上述目的,根据本技术的另一方面,提供了一种电子设备,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现前述实施例任意一项所述的网络安全检测方法。
12、通过本技术,采用以下步骤:获取待检测加密流量,并从待检测加密流量中提取出目标流量特征;将目标流量特征输入目标模型,得到待检测加密流量的预测概率,其中,目标模型由多组训练样本训练得到,每组训练样本包括历史加密流量的流量特征和用于表征所述历史加密流量是否为恶意加密流量的流量标签;确定待检测加密流量的目标流量应用场景,并确定目标流量应用场景的分类评估指标,其中,分类评估指标至少包括误报率和正确检出率;基于分类评估指标确定恶意加密流量的目标判定阈值,并判断预测概率是否大于等于目标判定阈值;在预测概率大于等于目标判定阈值的情况下,将待检测加密流量确定为恶意加密流量,解决了相关技术中固定阈值的恶意流量检测模型在不同流量应用场景的适用性差的问题。通过针对不同的流量应用场景选择不同的目标判定阈值,进而达到了提高恶意流量检测模型的适用性的效果。