一种基于粒子群优化的云计算代码审计方法

文档序号:7782397阅读:402来源:国知局
一种基于粒子群优化的云计算代码审计方法
【专利摘要】本发明公开了一种基于粒子群优化的云计算代码审计方法,该方法包括:通过代码度量识别出程序中容易触发缺陷的代码块集合并生成程序控制流图(control?flow?graph,CFG)。初始化粒子群;测试路径,计算曼哈顿适应度函数值;根据CFG更新粒子的速度和位置;最终输出易发生缺陷的代码块位置。以实现快速准确实时对云计算代码漏洞缺陷多发区,热点代码的审计。
【专利说明】一种基于粒子群优化的云计算代码审计方法
【技术领域】
[0001]本发明属于云计算信息安全【技术领域】,特别涉及路径搜索、粒子群优化方法。
【背景技术】
[0002]云计算将IT相关的能力以服务的方式提供给用户.允许用户在不了解提供服务的技术、没有相关知识以及设备操作能力的情况下,通过internet获取需要服务。其本质是将数据和程序放在云中,由专门的服务商进行加密和维护,用户不再处理程序的维护、升级以及数据的存储,代码审计重心也由用户电脑和服务器变为云数据中心。当前程序测试研究表明代码安全缺陷聚集于热点代码,为了能够尽可能多的发现漏洞缺陷,云计算代码安全测试应更关心热点代码的执行情况。
[0003]粒子群算法(particle swarm optimization,PS0)是最近出现的一种模拟鸟群飞行的仿生算法,有着个体数目少、计算简单、鲁棒性好等优点,在各类多维连续空间优化问题上均取得非常好的效果。
[0004]综上所述,利用PSO算法进行云计算代码审计运行速度快,检测准确率高,可满足实时检测热点代码漏洞的需求。

【发明内容】

[0005]本发明实施例提供的一种基于粒子群优化的云计算代码审计方法,用以解决对云计算代码漏洞缺陷多发区,热点代码的审计问题。
[0006]通过代码度量识别出程序中容易触发缺陷的代码块集合并生成CFG。初始化粒子群;测试路径,计算适应度函数值;更新粒子的速度和位置;最终输出易发生缺陷的代码块位置。
[0007]本发明实施例可实现快速准确实时检测热点代码漏洞位置。
【专利附图】

【附图说明】
[0008]图1为本发明实施例提供的方法流程图;
【具体实施方式】
[0009]针对现有云计算代码安全缺陷多聚集于热点代码等问题,本发明实施例利用PSO算法计算简单、鲁棒性好等优势提高运算速度,以实现快速准确实时检测热点代码漏洞。
[0010]如图1所示,本发明实施例提供的基于粒子群优化的云计算代码审计方法包括下列步骤:
[0011]步骤101、通过代码度量识别出程序中容易触发缺陷的代码块集合
[0012]步骤102、生成 CFG;
[0013]步骤103、初始化粒子群;
[0014]步骤104、测试路径,计算曼哈顿适应度函数值;[0015]步骤105、判断是否为全局最优粒子gbest ;
[0016]步骤106、根据CFG更新粒子的速度和位置;
[0017]步骤107、输出热点代码漏洞位置。
[0018]从上述实施例中可以看出:本发明实施例针对云计算代码安全缺陷多聚集于热点代码,提出了基于粒子群优化的云计算代码审计方法。该方法能够实现快速准确实时检测热点代码漏洞。
[0019]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种基于粒子群优化的云计算代码审计方法,其特征在于,该方法包括: 通过代码度量识别出程序中容易触发缺陷的代码块集合并生成程序控制流图(control flow graph, CFG)。初始化粒子群;测试路径,计算适应度函数值;根据CFG更新粒子的速度和位置;最终输出易发生缺陷的代码块位置。
2.如权利要求1所述的方法,其特征在于,所述生成CFG的方法具体包括: CFG用四元组G= (N,E,Entry, Exit)表示,其中N是节点集合,每个节点是一个具有唯一出口和唯一入口的基本代码块,E是边的集合,每条边是一个有序节点对(Ni, Nj),表示从Ni到Nj,可能存在控制转移,Entry表示程序的入口节点,Exit表示出口节点。
3.如权利要求1所述的方法,其特征在于,所述在CFG上的热点代码最短路径搜索的方法具体包括: 1)分支语句与热点代码之间的最短路径搜索。对于程序执行路径r,在CFG上搜索条件路径r。=!^,c2,...,CiIi e N}中的分支语句与热点代码h之间的最短路径。 2)最短路径的约束条件。从程序入口到热点代码的完整路径W=Wtlci,Ci] U w[ci;h],由从程序入口到某分支语句的前段路径%=?[、,Ci]和分支语句到热点代码的后段路径ws=w[ci; h]两段路径组成。则通过符号执行方法计算完整的路径约束为Pw= % AR。
4.如权利要求1所述的方法,其特征在于,所述初始化粒子群的方法具体包括: 粒子的初速度设为O。每个个体局部极值Pbest的初值设为每个粒子自身。粒子的全局极值gbest初始值为第一代粒子群的最优值。
5.如权利要求1所述的方法,其特征在于,所述测试路径,计算适应度函数值方法具体包括: 适应度函数值计算采用曼哈顿算法,F(X)=I / D(X),其中,D (X) =abs( (D—(x)-D。urrent W ) +^bS ( (Ddestination (y) —D


current

(y))+l。
6.如权利要求1所述的方法,其特征在于,所述根据CFG更新粒子的速度和位置方法具体包括: 按照式1、式2更新粒子的速度和位置。
Vi (t+Ι) = ω ^Vi (t) + W (Pbest-Vi (t)) +c2*r2* Cgbest-Vi (t))(I) Xi (t+l)=Xi(t)+Vi (t+1)(2) 其中,Kt)是粒子的速度,Pbest为当前粒子的位置。(^和^为学习因子’^和巧为随机数,ω为惯性系数。
【文档编号】H04L29/08GK103699486SQ201310736882
【公开日】2014年4月2日 申请日期:2013年12月25日 优先权日:2013年12月25日
【发明者】谢康, 王立进, 张玲, 徐勤, 李伟, 李星, 仲镜学 申请人:北京安码科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1