【技术实现步骤摘要】
基于机器学习的代码敏感信息及硬编码检测方法及装置
[0001]本专利技术涉及信息安全
,具体而言,涉及一种基于机器学习的代码敏感信息及硬编码检测方法及装置。
技术介绍
[0002]金融监管系统是由金融监管机构使用的软件系统,用于对金融市场和金融机构进行监督管理,维护金融稳定和防范金融风险。这些系统涉及大量的敏感数据,如金融机构的资产负债、风险指标、违规行为、处罚措施等,如果这些数据被修改或删除,可能会造成金融监管的失效。现有的金融监管系统代码的敏感信息及硬编码主要通过人工审查的方式进行检测,具有效率低下的缺点。
[0003]针对现有技术的缺点,现亟需一种基于机器学习的代码敏感信息及硬编码检测方法。
技术实现思路
[0004]本专利技术的目的在于提供一种基于机器学习的代码敏感信息及硬编码检测方法及装置,以改善上述问题。为了实现上述目的,本专利技术采取的技术方案如下:一方面,本申请提供了一种基于机器学习的代码敏感信息及硬编码检测方法,包括:获取金融监管系统的代码样本和待检测代码,所述代码样本包括第一信息,所述第一信息为敏感信息及硬编码审计口令;将所述代码样本进行特征提取处理,得到向量表示;根据所述向量表示对预设的机器学习数学模型进行训练得到用于识别所述第一信息的分类器;将所述待检测代码进行语法解析处理,提取出语法树中的字符串常量和对应的变量名,并根据所述分类器对解析后的所述待检测代码进行分类处理,得到字符串常量和变量名的预测类别;将所述预测类别进行正则表达式匹配处理得到检测结果,所述检测结果 ...
【技术保护点】
【技术特征摘要】
1.一种基于机器学习的代码敏感信息及硬编码检测方法,其特征在于,包括:获取金融监管系统的代码样本和待检测代码,所述代码样本包括第一信息,所述第一信息为敏感信息及硬编码审计口令;将所述代码样本进行特征提取处理,得到向量表示;根据所述向量表示对预设的机器学习数学模型进行训练得到用于识别所述第一信息的分类器;将所述待检测代码进行语法解析处理,提取出语法树中的字符串常量和对应的变量名,并根据所述分类器对解析后的所述待检测代码进行分类处理,得到字符串常量和变量名的预测类别;将所述预测类别进行正则表达式匹配处理得到检测结果,所述检测结果包括文件名、位置和类别信息。2.根据权利要求1所述的基于机器学习的代码敏感信息及硬编码检测方法,其特征在于,将所述代码样本进行特征提取处理,得到向量表示,包括:将所述代码样本中的敏感元素进行N元语法处理,得到敏感元素特征,所述敏感元素包括审计口令、API密钥和数据库凭证;将所述代码样本中的专业名词进行词频
‑
逆文档频率处理,得到专业名词特征,所述专业名词包括风险指标和资产负债;将所述代码样本中的实体机构进行词向量处理,得到实体机构特征,所述实体机构包括金融机构和监管机构;将所述敏感元素特征、专业名词特征和实体机构特征进行融合处理得到综合特征,并将所述综合特征进行归一化处理得到向量表示。3.根据权利要求1所述的基于机器学习的代码敏感信息及硬编码检测方法,其特征在于,根据所述向量表示对预设的机器学习数学模型进行训练得到用于识别所述第一信息的分类器,包括:基于预设的分层抽样策略对所述向量表示进行划分处理得到数据集,所述数据集包括训练集和验证集;根据所述数据集对预设的注意力机制
‑
双向长短时记忆网络数学模型进行监督学习训练,通过捕捉金融监管领域的风险指标、资产负债等名词,得到初步识别模型;根据预设的评估指标对所述初步识别模型进行评估处理,得到评估结果;根据所述评估结果对所述初步别模型进行模型优化处理,得到优化识别模型;根据所述验证集对所述优化识别模型进行验证处理,得到用于识别敏感信息和硬编码审计口令的分类器。4.根据权利要求1所述的基于机器学习的代码敏感信息及硬编码检测方法,其特征在于,将所述待检测代码进行语法解析处理,提取出语法树中的字符串常量和对应的变量名,并根据所述分类器对解析后的所述待检测代码进行分类处理,得到字符串常量和变量名的预测类别,包括:将所述待检测代码进行语法解析处理,得到抽象语法树;将所述抽象语法树进行节点遍历处理得到代码元素,所述代码元素包括字符串常量及对应的变量名;
将所述代码元素进行特征转换处理,得到输入特征;根据所述分类器对所述输入特征进行分类处理,得到所述代码元素的预测类别。5.根据权利要求4所述的基于机器学习的代码敏感信息及硬编码检测方法,其特征在于,将所述抽象语法树进行节点遍历处理得到代码元素,包括:根据所述抽象语法树构建得到中序遍历数学模型,并将所述抽象语法树的根节点作为中序遍历数学模型的输入参数,得到遍历模型;根据所述抽象语法树中节点间的关系,逐个将所述抽象语法树中的代码节点添加到所述遍历模型的栈中,得到遍历的节点序列;根据所述节点序列对所述遍历模型进行提取处理,依次提取遍历中的当前节点,得到待分析代码节点;对所述待分析代码节点进行类型判断,并筛选出字符串常量及对应的变量名,得到代码元素。6.一种基于机器学习的代码敏感信息及硬编码检测装置...
【专利技术属性】
技术研发人员:付杰,高鹏,靳岩,
申请(专利权)人:上海比瓴科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。