基于人工智能的内网资产识别与蜜罐生成方法与系统与流程
本发明涉及网络安全,特别是基于人工智能的内网资产识别与蜜罐生成方法与系统。
背景技术:
1、目前,内网资产识别主要采用以下三类方案:手动资产盘点、基于规则的资产扫描和基于机器学习的资产分类。手动资产盘点指管理员通过人工方式登记包括ip、设备类型、用途等内网设备信息,此方案严重依赖人工经验,无法应对具有数千ip的大型网络的快速变化。基于规则的资产扫描指使用nmap等工具进行端口扫描,通过预定义的端口-设备映射表进行资产分类,端口-设备映射表如"端口3306→mysql数据库",此方案仅能识别常见端口组合,对复杂设备或非标端口配置无效,且无法利用历史扫描数据提升识别准确率,每次扫描独立进行,没有知识积累机制,导致准确率不稳定。基于机器学习的资产分类指将端口开放情况作为特征向量,使用随机森林或xgboost等模型进行设备类型分类,此方案依赖大量标注训练数据且模型训练后固定不变,在内网环境下训练数据难以获取,也无法适应新设备类型或者网络拓扑的变化,还仅依赖端口特征,忽略了banner、os指纹等丰富的语义信息。再者,现有的蜜罐部署主要采用静态模板,如cowrie ssh蜜罐、dionaea多协议蜜罐,无法根据历史扫描数据动态调整仿真策略,导致蜜罐与真实网络环境的设备画像脱节,容易被有经验的攻击者通过指纹识别绕过。
技术实现思路
1、本发明的主要目的是提出一种基于人工智能的内网资产识别与蜜罐生成方法与系统,能够体提升内网资产识别准确率和蜜罐仿真逼真度。
2、本发明通过以下技术方案实现:
3、基于人工智能的内网资产识别与蜜罐生成方法,包括如下步骤:
4、步骤s1、对目标内网网段进行扫描,获取各活跃设备的ip地址、mac地址、开放端口列表、banner服务信息及操作系统指纹;
5、步骤s2、对于各活跃设备,均基于其开放端口列表进行多层递进式分类,得到设备类型和置信度,其中,多层递进式分类采用优先级策略,依次执行规则引擎分类、机器学习模型分类和启发式兜底分类;
6、步骤s3、将多层递进式分类得到的设备类型映射至知识图谱进行验证,知识图谱的各节点分别存储其对应设备类型的端口签名集合、banner服务信息、操作系统指纹;获取与步骤s2所得到的设备类型所对应的节点,基于活跃设备的开放端口列表与对应节点存储的端口签名集合计算端口特征相似度、根据活跃设备的banner服务信息、操作系统指纹与对应节点存储的对应信息计算语义特征相似度,以判断对应的节点是否为活跃设备的匹配节点,若是,对匹配节点进行设备指纹合并并更新设备知识图谱,并将活跃设备及其设备类型、置信度录入资产库,否则,创建新的候选节点并根据置信度决定是否进入人工标注任务;
7、步骤s4、为某一设备类型生成蜜罐时,以知识图谱中该设备类型对应的各节点为起点执行图遍历以获取相邻节点,聚合各节点以及相邻节点存储的端口签名集合、banner服务信息、操作系统指纹,合并至蜜罐模板中以生成蜜罐。
8、进一步的,所述步骤s1具体为:对目标内网网段进行arp扫描,获取活跃设备的ip地址、mac地址列表,对每个活跃设备进行多端口并发扫描,获取开放端口列表、各开放端口的banner服务信息以及操作系统指纹。
9、进一步的,所述步骤s1中,所述操作系统指纹由banner正则匹配结果、ttl值推测结果和mac oui厂商匹配结果去重后拼接得到;其中:banner正则匹配具体包括:利用预置的规则库中的正则表达式对banner服务信息进行文本特征匹配,将匹配成功的正则表达式所对应的操作系统描述作为banner正则匹配结果,其中,规则库中包含正则表达式与操作系统描述的映射关系;ttl值推测具体包括:获取活跃设备响应扫描请求时返回的数据包,提取数据包中的ttl字段值,将ttl字段值对应的操作系统描述作为ttl值推测结果;macoui厂商匹配具体包括:通过mac地址前3字节查询预置的厂商映射库,将匹配得到的设备制造商信息作为mac oui厂商匹配结果。
10、进一步的,所述步骤s2中,所述多层递进式分类具体包括:首先执行规则引擎分类:当活跃设备的开放端口列表同时满足预置的设备指纹规则的正向存在约束且未触发反向排除约束时,则判定该活跃设备匹配规则成功,将该设备指纹规则所定义的设备类型以及置信度作为分类结果,随后执行步骤s3,若活跃设备匹配规则失败,则执行机器学习模型分类:将基于活跃设备的扫描结果提取的特征向量输入xgboost机器学习模型,获取各活跃设备类型的概率分布,当最大概率超过设定阈值时,将对应的设备类型作为分类结果,随后执行步骤s3,否则,执行启发式兜底分类:基于预置的基础端口组合规则对开放端口列表进行匹配,以输出分类结果,其中,特征向量包括开放端口列表中各关键端口的二值存在性特征、总开放端口数、web端口占比和数据库端口存在标志。
11、进一步的,所述步骤s3中,所述端口特征相似度根据计算,其中,为预定义的关键端口总数量,i表示第i个关键端口的索引,表示所述开放端口列表中第i个关键端口的二值存在性特征值,表示所述对应节点的端口签名集合中第i个关键端口的二值存在性特征值,表示预置的第i个关键端口的权重,高特异性的关键端口赋予高权重,高通用性的关键端口赋予低权重。进一步的,所述步骤s3中,所述语义特征相似度的计算过程包括:对于活跃设备和对应节点,均将其banner服务信息与操作系统指纹组合成语义文档,利用字符级n-gram tf-idf算法将语义文档转为256维嵌入向量,将两嵌入向量的余弦相似度作为语义特征相似度。
12、进一步的,所述步骤s3中,获取所述256维嵌入向量具体包括:利用字符级n-gramtf-idf算法对语义文档的字符串进行切分,提取单字符片段和双字符片段,选取频率最高的256个字符片段构建特征空间;计算特征空间中各字符片段的tf-idf权重,以形成256维嵌入向量。
13、进一步的,所述步骤s3中,根据计算加权相似度,若加权相似度不小于第一预设阈值则判定对应的节点为活跃设备的匹配节点,将活跃设备的开放端口列表合并至匹配节点的端口签名集合,并更新匹配节点的置信度和样本数量;若加权相似度小于第一预设阈值,则创建新的候选节点,并扫描知识图谱中与该候选节点的设备类型相同的同类型节点,对加权相似度不小于第二预设阈值的同类型节点自动创建语义相似关系边,对样本数量不小于第三预设阈值的同类型节点自动创建共现关系边,其中,和为加权权重系数,第一预设阈值大于第二预设阈值。
14、进一步的,所述步骤s3中,当判定对应节点不是活跃设备的匹配节点,且活跃设备的多层递进式分类得到的置信度低于第四预设阈值时,创建人工标注任务以得到人工标注样本,然后按照标注任务的优先级和状态对人工标注样本进行分类管理,当人工标注样本数量大于设定数量阈值或者知识图谱中节点增长率大于增长阈值时,触发对机器学习模型的增量重训练,其中,人工标注任务包括:活跃设备的扫描结果、所述机器学习模型分类得到的设备类型及置信度以及所述机器学习模型输出的其他候选设备类型及概率分布,状态包括待标注、已标注、已审核和已退回,增量重训练包括:将资产库中置信度不低于第五预设阈值的资产数据与人工标注样本混合以构建新的训练集,利用训练集对当前版本的机器学习模型进行增量训练,以生成新版本的机器学习模型。
15、本发明还通过以下技术方案实现:
16、基于人工智能的内网资产识别与蜜罐生成系统,用于实现如上任一所述的基于人工智能的内网资产识别与蜜罐生成方法,包括扫描模块、资产分类模块、蜜罐部署模块、人工标注模块和自学习管道模块;
17、扫描模块用于对目标内网网段进行扫描,获取各活跃设备的ip地址、mac地址、开放端口列表、banner服务信息及操作系统指纹;
18、资产分类模块基于活跃设备的开放端口列表进行多层递进式分类,得到设备类型和置信度,并利用知识图谱引擎进行匹配验证得到资产分类结果,其中,多层递进式分类采用优先级策略,依次执行规则引擎分类、机器学习模型分类和启发式兜底分类;
19、知识图谱引擎用于获取与资产分类模块所得到的设备类型所对应的节点,基于活跃设备的开放端口列表与对应节点存储的端口签名集合计算端口特征相似度、根据活跃设备的banner服务信息、操作系统指纹与对应节点存储的对应信息计算语义特征相似度,以判断对应的节点是否为活跃设备的匹配节点,若是,对匹配节点进行设备指纹合并并更新设备知识图谱,并将活跃设备及其设备类型、置信度录入资产库,否则,创建新的候选节点并根据置信度决定是否创建人工标注任务;
20、蜜罐部署模块用于以知识图谱中该设备类型对应的各节点为起点执行图遍历以获取相邻节点,聚合各节点以及相邻节点存储的端口签名集合、banner服务信息、操作系统指纹,合并至蜜罐模板中以生成蜜罐;
21、人工标注模块用于进行人工标注任务,人工标注任务包括将活跃设备的扫描结果、机器学习模型分类得到的设备类型及置信度以及机器学习模型输出的其他候选设备类型及概率分布,其中,状态包括待标注、已标注、已审核和已退回;
22、自学习管道模块用于在人工标注样本数量大于设定数量阈值或者知识图谱中节点增长率大于增长阈值时,将资产库中置信度不低于第五预设阈值的资产数据与人工标注样本混合以构建新的训练集,利用训练集对当前版本的机器学习模型进行增量训练,以生成新版本的机器学习模型。
23、由上述对本发明的描述可知,与现有技术相比,本发明具有如下有益效果:
24、1、本发明首先对目标内网网段进行扫描,获取各活跃设备的ip地址、mac地址、开放端口列表、banner服务信息及操作系统指纹,然后对于各活跃设备,均基于其开放端口列表进行多层递进式分类,得到设备类型和置信度,多层递进式分类采用优先级策略,依次执行规则引擎分类、机器学习模型分类和启发式兜底分类,如此保证在任意输入下都能输出有效分类结果,不会因规则/miss而返回空值;接着将多层递进式分类得到的设备类型映射至知识图谱进行验证,获取与所得到的设备类型所对应的节点,基于活跃设备的开放端口列表与对应节点存储的端口签名集合计算端口特征相似度、根据活跃设备的banner服务信息、操作系统指纹与对应节点存储的对应信息计算语义特征相似度,以判断对应的节点是否为活跃设备的匹配节点,若是,对匹配节点进行设备指纹合并并更新设备知识图谱,并将活跃设备及其设备类型、置信度录入资产库,否则,创建新的候选节点并根据置信度决定是否创建人工标注任务,通过多层递进式分类与知识图谱协同,在初始无训练数据时依赖规则和启发式即可达到40%+分类准确率,随着知识图谱积累和人工标注反馈,分类准确率能持续提升至99%+;为某一设备类型生成蜜罐时,以知识图谱中该设备类型对应的各节点为起点执行图遍历以获取相邻节点,聚合各节点以及相邻节点存储的端口签名集合、banner服务信息、操作系统指纹,合并至蜜罐模板中以生成蜜罐,如此能够使蜜罐服务配置与真实网络环境的设备画像动态一致,端口聚合随扫描次数增加而更加完整,banner随知识图谱积累而更加多样化;综上所述,本发明能够适用于大型企业内网(1000+ ip)的自动化资产盘点与威胁感知、适用于工业控制网络的被动资产发现与攻击检测以及适用于物联网环境的设备识别与异常行为告警。
25、2、本发明的自学习管道模块在人工标注样本数量大于设定数量阈值或者知识图谱中节点增长率大于增长阈值时,将资产库中置信度不低于第五预设阈值的资产数据与人工标注样本混合以构建新的训练集,利用训练集对当前版本的机器学习模型进行增量训练,以生成新版本的机器学习模型,实现自动监控标注样本积累和知识图谱增长,无需人工干预即可完成机器学习模型的增量训练和部署,实现扫描越多、标注越多、模型越准的正向飞轮效应。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com