入輸出格式的轉(zhuǎn)換。
[0030]整個(gè)非均衡任務(wù)分配分布式漏洞挖掘系統(tǒng)的實(shí)現(xiàn)步驟如下:
[0031](I)開啟服務(wù)器端。
[0032](2)客戶端連接到服務(wù)器端。
[0033](3)開始進(jìn)行測(cè)試任務(wù),系統(tǒng)將動(dòng)態(tài)生成的子任務(wù)放到任務(wù)池中。
[0034](4)服務(wù)器端從任務(wù)池讀取任務(wù),根據(jù)非均衡任務(wù)分配調(diào)度策略將子任務(wù)分配給合適的客戶端。
[0035](5)客戶端在收到相應(yīng)的測(cè)試任務(wù)的時(shí)候,開啟新的線程執(zhí)行子任務(wù),執(zhí)行結(jié)束之后將結(jié)果反饋給服務(wù)器端。
[0036]本發(fā)明的非均衡任務(wù)分配策略算法如圖2所示,主要描述服務(wù)器端子任務(wù)生成和分配調(diào)度策略。服務(wù)器端主要負(fù)責(zé)管理功能,貫穿整個(gè)測(cè)試過程中。首先,服務(wù)器端需要提供被測(cè)試二進(jìn)制程序和種子測(cè)試用例作為輸入,啟動(dòng)服務(wù)器端。然后,每一個(gè)客戶端連接到服務(wù)器端,同時(shí)提供自己的配置信息,包括內(nèi)存容量,主頻等性能因素。最終,服務(wù)器端會(huì)形成一個(gè)已連接的客戶端性能列表,分別保存每個(gè)客戶端的配置信息。開始啟動(dòng)整個(gè)測(cè)試過程,服務(wù)器端主要負(fù)責(zé)管理模塊的功能,需要執(zhí)行其他任務(wù)模塊的功能時(shí),服務(wù)器端則會(huì)根據(jù)客戶端性能列表尋找合適的客戶端分配子任務(wù),并等待接收反饋信息。
[0037]本發(fā)明的客戶端執(zhí)行非均衡任務(wù)分配流程圖如圖3所示,主要描述客戶端與服務(wù)器端的交互及子任務(wù)的執(zhí)行過程。客戶端在連接到服務(wù)端的過程中,需要提供自己的配置信息,然后等待任務(wù)的分配。服務(wù)器端在所有客戶端都連接成功之后開啟整個(gè)測(cè)試任務(wù),向客戶端分配子任務(wù),客戶端則根據(jù)子任務(wù)類型執(zhí)行相應(yīng)的任務(wù)模塊,并最終反饋執(zhí)行結(jié)果。
[0038]本發(fā)明未詳細(xì)闡述部分屬于本領(lǐng)域技術(shù)人員的公知技術(shù)。
[0039]以上所述,僅為本發(fā)明中的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉該技術(shù)的人在本發(fā)明所揭露的技術(shù)范圍內(nèi),可理解想到的變換或替換,都應(yīng)涵蓋在本發(fā)明的包含范圍之內(nèi),因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求書的保護(hù)范圍為準(zhǔn)。
【主權(quán)項(xiàng)】
1.一種支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘系統(tǒng),其特征在于,包括任務(wù)池、服務(wù)器端和客戶端;所述任務(wù)池存放動(dòng)態(tài)漏洞挖掘的若干個(gè)子任務(wù),所述服務(wù)器端從任務(wù)池讀取子任務(wù),根據(jù)非均衡任務(wù)分配調(diào)度策略將子任務(wù)分配給合適的客戶端,實(shí)現(xiàn)子任務(wù)的分配和調(diào)度;所述客戶端執(zhí)行分配到的子任務(wù),并將執(zhí)行結(jié)果反饋給服務(wù)器端。2.根據(jù)權(quán)利要求1所述的支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘系統(tǒng),其特征在于:所述非均衡任務(wù)分配調(diào)度策略,是指服務(wù)器端根據(jù)子任務(wù)的特點(diǎn)和客戶端機(jī)器的性能決定客戶端需要執(zhí)行的子任務(wù),實(shí)現(xiàn)子任務(wù)的非均衡分布式分配。3.根據(jù)權(quán)利要求1所述的支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘系統(tǒng),其特征在于:所述服務(wù)器端部署管理模塊,負(fù)責(zé)控制和協(xié)調(diào)子任務(wù)的生成和分配調(diào)度過程;所述客戶端部署動(dòng)態(tài)污點(diǎn)分析模塊、約束求解模塊、用例選擇模塊;所述子任務(wù)是在系統(tǒng)執(zhí)行過程中動(dòng)態(tài)生成,分別由所述客戶端的各個(gè)功能模塊完成子任務(wù)。4.根據(jù)權(quán)利要求3所述的支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘系統(tǒng),其特征在于:所述動(dòng)態(tài)污點(diǎn)分析模塊基于動(dòng)態(tài)二進(jìn)制插粧技術(shù)實(shí)現(xiàn),在運(yùn)行程序的過程中進(jìn)行插粧操作,輸出輸入數(shù)據(jù)在二進(jìn)制程序中的傳播軌跡;所述約束求解模塊根據(jù)動(dòng)態(tài)污點(diǎn)分析模塊得到的輸入數(shù)據(jù)的傳播軌跡,提取相應(yīng)分支點(diǎn)的約束條件集合,進(jìn)行約束求解操作,從而生成遍歷其他分支路徑的測(cè)試用例;所述用例選擇模塊為每一個(gè)測(cè)試用例打分,得分高的測(cè)試用例優(yōu)先執(zhí)行;所述管理模塊協(xié)調(diào)客戶端中各個(gè)模塊之間的交互和進(jìn)行各模塊間輸入輸出格式的轉(zhuǎn)換。5.根據(jù)權(quán)利要求1所述的支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘系統(tǒng),其特征在于:所述服務(wù)器端保存一個(gè)已連接的客戶端性能列表,該客戶端性能列表保存每個(gè)客戶端的配置信息;當(dāng)外部提供被測(cè)試程序和種子測(cè)試用例時(shí),開啟服務(wù)器端,服務(wù)器端根據(jù)該客戶端性能列表尋找合適的客戶端分配任務(wù),并接收客戶端的反饋信息;所述客戶端連接到服務(wù)器端之后,將配置信息發(fā)送給服務(wù)器端,供服務(wù)器段形成客戶端性能列表。6.—種采用權(quán)利要求1所述系統(tǒng)的支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘方法,其特征在于,實(shí)現(xiàn)步驟如下: 1)開啟服務(wù)器端,并將客戶端連接到服務(wù)器端; 2)開始進(jìn)行動(dòng)態(tài)漏洞挖掘任務(wù),在運(yùn)行的過程中動(dòng)態(tài)生成子任務(wù),存放到任務(wù)池中; 3)服務(wù)器端從任務(wù)池讀取子任務(wù),根據(jù)非均衡任務(wù)分配調(diào)度策略將子任務(wù)分配給合適的客戶端; 4)客戶端在收到相應(yīng)的子任務(wù)時(shí),開啟新的線程執(zhí)行子任務(wù),執(zhí)行結(jié)束之后將結(jié)果反饋給服務(wù)器端。7.根據(jù)權(quán)利要求6所述的支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘方法,其特征在于:所述非均衡任務(wù)分配調(diào)度策略,是指服務(wù)器端根據(jù)子任務(wù)的特點(diǎn)和客戶端機(jī)器的性能決定客戶端需要執(zhí)行的子任務(wù),實(shí)現(xiàn)子任務(wù)的非均衡分布式分配。8.根據(jù)權(quán)利要求6所述的支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘方法,其特征在于:所述服務(wù)器端部署管理模塊,負(fù)責(zé)控制和協(xié)調(diào)子任務(wù)的生成和分配調(diào)度過程;所述客戶端部署動(dòng)態(tài)污點(diǎn)分析模塊、約束求解模塊、用例選擇模塊;所述子任務(wù)是在系統(tǒng)執(zhí)行過程中動(dòng)態(tài)生成,分別由所述客戶端的各個(gè)功能模塊完成子任務(wù)。9.根據(jù)權(quán)利要求8所述的支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘方法,其特征在于:所述動(dòng)態(tài)污點(diǎn)分析模塊基于動(dòng)態(tài)二進(jìn)制插粧技術(shù)實(shí)現(xiàn),在運(yùn)行程序的過程中進(jìn)行插粧操作,輸出輸入數(shù)據(jù)在二進(jìn)制程序中的傳播軌跡;所述約束求解模塊根據(jù)動(dòng)態(tài)污點(diǎn)分析模塊得到的輸入數(shù)據(jù)的傳播軌跡,提取相應(yīng)分支點(diǎn)的約束條件集合,進(jìn)行約束求解操作,從而生成遍歷其他分支路徑的測(cè)試用例;所述用例選擇模塊為每一個(gè)測(cè)試用例打分,得分高的測(cè)試用例優(yōu)先執(zhí)行;所述管理模塊協(xié)調(diào)客戶端中各個(gè)模塊之間的交互和進(jìn)行各模塊間輸入輸出格式的轉(zhuǎn)換。10.根據(jù)權(quán)利要求6所述的支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘方法,其特征在于:所述服務(wù)器端保存一個(gè)已連接的客戶端性能列表,該客戶端性能列表保存每個(gè)客戶端的配置信息;當(dāng)外部提供被測(cè)試程序和種子測(cè)試用例時(shí),開啟服務(wù)器端,服務(wù)器端根據(jù)該客戶端性能列表尋找合適的客戶端分配任務(wù),并接收客戶端的反饋信息;所述客戶端連接到服務(wù)器端之后,將配置信息發(fā)送給服務(wù)器端,供服務(wù)器段形成客戶端性能列表。
【專利摘要】本發(fā)明涉及一種支持非均衡任務(wù)分配的動(dòng)態(tài)漏洞挖掘系統(tǒng)和方法,它基于動(dòng)態(tài)漏洞挖掘系統(tǒng)集成機(jī)理和方法,將系統(tǒng)劃分成子任務(wù)模塊,然后設(shè)計(jì)非均衡任務(wù)分配策略,實(shí)現(xiàn)子任務(wù)的調(diào)度。在此動(dòng)態(tài)漏洞挖掘系統(tǒng)中,采用分布式思想,服務(wù)器端實(shí)施非均衡任務(wù)分配策略,負(fù)責(zé)控制協(xié)調(diào)整個(gè)測(cè)試過程,客戶端則負(fù)責(zé)執(zhí)行相應(yīng)的子任務(wù)。本發(fā)明在設(shè)計(jì)分布式系統(tǒng)的過程中考慮各個(gè)機(jī)器性能的不同,依據(jù)機(jī)器的性能分配不同的子任務(wù),更高效的完成整個(gè)測(cè)試任務(wù)。
【IPC分類】G06F9/48, G06F9/50
【公開號(hào)】CN105589745
【申請(qǐng)?zhí)枴緾N201510958710
【發(fā)明人】馬恒太, 王雪飛, 楊克, 李小鳳
【申請(qǐng)人】中國科學(xué)院軟件研究所
【公開日】2016年5月18日
【申請(qǐng)日】2015年12月18日