【技术实现步骤摘要】
代码夹带识别方法、装置、电子设备及介质
[0001]本公开涉及计算机
,可用于金融领域或其他领域,具体涉及一种代码夹带识别方法、装置、电子设备、介质和程序产品。
技术介绍
[0002]代码夹带是指通常在计算机正常的程序传播中,额外夹带着的一段代码。代码夹带容易对计算机的网络安全造成破坏。
[0003]目前,检测代码夹带的方法包括获取业务需求数据,根据历史需求数据和新版本需求数据对这些数据进行分词处理,得到多个关键词;根据关键词分别构建历史需求数据和新版本需求数据对应的关键词向量,计算历史需求数据和新版本需求数据之间的相似分数;确定新版本需求数据的需求类型,以及确定新版本需求数据中与需求类型关联的代码夹带风险等级。
[0004]但是,在实现本公开构思的过程中,申请人发现:(1)目前的方法存在多分支的特点,给每块待处理特性(新功能、优化等)单独分支,当分支完成开发,再合并到主干,需要消耗大量的时间和人力;(2)目前的方法存在特性开关,仍然在主干或者单分支上进行开发,利用特性开关来调试和发布,当需要发布但某特 ...
【技术保护点】
【技术特征摘要】
1.一种代码夹带识别方法,包括:获取代码数据库,所述代码数据库包括多个代码文件,所述多个代码文件为同一软件的不同开发版本;对每个代码文件标定不同文件层级的代码属性,确定每个文件层级对应的权重,根据所述不同文件层级的代码属性和所述权重,建立所述代码数据库的拓扑关系函数;对所述拓扑关系函数进行语义分析,确定所述代码数据库中是否存在语义混淆的字母;在确定所述代码数据库中不存在语义混淆的字母,且每个代码文件的函数内的变量未出错的情况下,使用图网络模型建立逻辑匹配函数;根据所述拓扑关系函数与所述逻辑匹配函数的计算结果,确定所述代码数据库的代码夹带状态。2.根据权利要求1所述的方法,其中,所述对每个代码文件标定不同文件层级的代码属性包括:为每个代码文件标记多个代码属性,所述代码属性包括文件名称、文件数量、每份文件的代码行号数、函数个数和引用关系;根据所述不同开发版本的业务逻辑关系,对每个代码属性所属的文件层级进行标定,所述文件层级依次包括文件夹、文件、项目程序、函数定义和函数引用关系。3.根据权利要求2所述的方法,其中,所述确定每个文件层级对应的权重包括:根据所述函数引用关系,统计每个文件层级的代码属性在所述代码数据中的引用数量;根据所述引用数量,确定该文件层级对应的权重,其中,所述引用数量越多,则该文件层级对应的权重越大。4.根据权利要求2所述的方法,其中,所述对每个代码属性所属的文件层级进行标定之前,还包括:根据所述业务逻辑关系,按照时间顺序更新所述代码数据库。5.根据权利要求1所述的方法,其中,按照以下方式确定所述代码数据库中存在语义混淆的字母:从所述拓扑关系函数中提取函数类别和函数名称,作为多个关键词;对多个关键词中任意两个关键词进行语义分析,得到所述两个关键词的语义相似度;在所述语义相似度高于相似度阈值的情况下,确定所述代码数据库中存在语义混淆的字母。6.根据权利要求2所述的方法,其中,所述图网络模型包括有向无环图模型,所述有向无环图模型包括多个节点和节点之间带有单向箭头的路径;所述逻辑匹配函数包括概率密度函数;所述使用图网络模型建立逻辑匹配函数包括:基于每个代码文件中的所述函数定义和函数引用关系,构建所述有向无环图模型;针对所述有向无环图模型,对每个所述路径涉及的两个节点进行语义分析,在确定所述两个节点的语义不通的情况下,根据所述两个节点的位置信息,联合先验概率计算后验概率;
基于所述后验概率,推导出所述概率密度函数。7.根据权利要求6所述的方法,其中,所...
【专利技术属性】
技术研发人员:杨飞雪,施阳,成汉平,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。