国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

計(jì)量芯片后門(mén)測(cè)試用例生成方案*

2014-03-22 12:00陳炎明關(guān)靜雅
計(jì)量技術(shù) 2014年11期
關(guān)鍵詞:測(cè)試用例測(cè)試數(shù)據(jù)作弊

陳炎明 郭 謖 王 晶,3 關(guān)靜雅,3

(1.湖北省計(jì)量測(cè)試技術(shù)研究院,武漢 430223;2.北京出入境檢驗(yàn)檢疫局,北京 100026;3.武漢大學(xué)計(jì)算機(jī)學(xué)院,武漢 430072)

0 引言

隨著微電子技術(shù)和數(shù)字技術(shù)的廣泛運(yùn)用,以及電子計(jì)量器具日益普及,在計(jì)量器具中嵌入式計(jì)量軟件的元器件和部件或模塊的使用也越來(lái)越多,如加油機(jī)、電子秤、出租車(chē)計(jì)價(jià)器等[1]。與傳統(tǒng)的機(jī)械式計(jì)量器具相比,現(xiàn)代的計(jì)量器具仍存在計(jì)量作弊現(xiàn)象,并且作弊手段也趨于高科技化,從程序代碼層面對(duì)計(jì)量軟件進(jìn)行作弊更改[2],利用嵌入式計(jì)量軟件本身存在的設(shè)計(jì)漏洞修改計(jì)量程序或直接更換計(jì)量主板,來(lái)達(dá)到作弊的目的。

目前針對(duì)計(jì)量器具的作弊檢查大多為人工現(xiàn)場(chǎng)檢測(cè),針對(duì)嵌入式計(jì)量軟件作弊后門(mén)的軟件檢測(cè)方法研究較少。因此,研究一種適用于嵌入式計(jì)量軟件的自動(dòng)檢測(cè)后門(mén)方法有助于提高檢測(cè)力度及效率。

1 研究現(xiàn)狀

根據(jù)是否考慮和分析軟件的內(nèi)部邏輯結(jié)構(gòu)和程序算法設(shè)計(jì),一般的軟件測(cè)試方法可分為白盒測(cè)試、黑盒測(cè)試和灰盒測(cè)試三種類型。嵌入式軟件測(cè)試與一般軟件測(cè)試具有相同的目標(biāo),但是由于嵌入式系統(tǒng)的嵌入式特性,其測(cè)試策略有很大的不同[3]。嵌入式軟件不像一般的商用軟件和商用計(jì)算機(jī)系統(tǒng)具有很強(qiáng)的兼容性,嵌入式軟件只能運(yùn)行在特定的目標(biāo)系統(tǒng)上。嵌入式軟件與所屬計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)、I/O端口配置、相關(guān)聯(lián)外部設(shè)備以及這些設(shè)備的輸入輸出信號(hào)特性都有聯(lián)系。嵌入式軟件還通常具有很強(qiáng)的時(shí)序相關(guān)性,由于嵌入式系統(tǒng)的功能要求,必須在規(guī)定時(shí)間內(nèi)完成應(yīng)用功能,并且時(shí)間也是應(yīng)用處理的重要輸入輸出參數(shù),具有嚴(yán)格的處理時(shí)序。運(yùn)行平臺(tái)的特定要求、時(shí)序相關(guān)性以及測(cè)試環(huán)境的不同使嵌入式軟件的開(kāi)發(fā)和測(cè)試具有很大的困難。

2 測(cè)試命令生成

本文測(cè)試用例的生成方法借鑒模糊測(cè)試的原理,以已知作弊命令為種子命令,分析種子命令格式,確定可變命令字段,通過(guò)模糊種子命令可變字段的命令字來(lái)生成新的測(cè)試命令。模糊測(cè)試中采用的是生成半有效數(shù)據(jù),生成邊界值或非法值來(lái)創(chuàng)建測(cè)試用例,來(lái)引發(fā)目標(biāo)系統(tǒng)的崩潰或信息泄露等;本文的測(cè)試用例生成方法希望生成有效的測(cè)試命令,來(lái)觸發(fā)計(jì)量程序進(jìn)入作弊流程,不是依靠邊界值或非法值,而是選取命令字集合中的有效命令字來(lái)替換種子命令中相應(yīng)可變字段的命令字。通過(guò)控制種子命令的可變字段的數(shù)量可控制生成的測(cè)試命令數(shù)量,防止測(cè)試命令爆炸。

模糊測(cè)試技術(shù)是一種自動(dòng)化的軟件測(cè)試技術(shù)[4],它使用大量的半有效的測(cè)試用例為被測(cè)試的軟件或系統(tǒng)提供輸入數(shù)據(jù),通過(guò)不符合正常輸入的非預(yù)期數(shù)據(jù)輸入目標(biāo)程序并監(jiān)視所發(fā)生的異常執(zhí)行狀態(tài)和異常輸出來(lái)發(fā)現(xiàn)軟件的缺陷和錯(cuò)誤。半有效的測(cè)試數(shù)據(jù)是由大部分合法有效的數(shù)據(jù)和小部分變異、不合法的數(shù)據(jù)組成。目標(biāo)系統(tǒng)在接受這種類型的輸入數(shù)據(jù)后可能出現(xiàn)運(yùn)行或輸出錯(cuò)誤,根據(jù)這些錯(cuò)誤的發(fā)生情況和位置可分析軟件或系統(tǒng)存在的錯(cuò)誤和缺陷[5]。一般的邊界值生成用例流程為首先輸入正常值,通過(guò)給定合法值界定其邊界值,綜合考慮邊界內(nèi)的合法值和邊界以外非法值,進(jìn)一步生成測(cè)試數(shù)據(jù)。模糊測(cè)試除了一般的邊界值分析外,還考慮可能引發(fā)系統(tǒng)未定義的行為或存在安全隱患的行為的任何輸入[6]。

2.1 模糊測(cè)試的一般步驟

本文測(cè)試命令的具體生成步驟與模糊測(cè)試大體相同。模糊測(cè)試方法沒(méi)有絕對(duì)錯(cuò)誤和正確之分,但需要符合不同的目標(biāo)應(yīng)用程序,還要考慮被測(cè)數(shù)據(jù)所采用的數(shù)據(jù)格式或結(jié)構(gòu)。模糊測(cè)試的幾個(gè)基本階段有識(shí)別目標(biāo)、識(shí)別輸入、生成畸形測(cè)試數(shù)據(jù)、執(zhí)行測(cè)試數(shù)據(jù)、監(jiān)視異常、確定原因等[7]。測(cè)試命令生成流程如圖1所示。

圖1 測(cè)試命令生成流程

1)識(shí)別目標(biāo)。模糊測(cè)試的目標(biāo)是應(yīng)用軟件或系統(tǒng)及其接收的數(shù)據(jù),應(yīng)用軟件或系統(tǒng)能夠接收的任何通信數(shù)據(jù)都能成為模糊測(cè)試的目標(biāo)。模糊測(cè)試的效率很大程度上取決于測(cè)試目標(biāo)的選取。除了選取目標(biāo)應(yīng)用程序,還要從目標(biāo)應(yīng)用程序的文件或庫(kù)中選擇作為具體目標(biāo)的對(duì)象。由于這些目標(biāo)庫(kù)存在安全缺陷或漏洞的可能性相對(duì)較高[8],作為測(cè)試目標(biāo)能夠較大地提高測(cè)試效率。

2)識(shí)別輸入。應(yīng)用程序的輸入數(shù)據(jù)一般包括文件數(shù)據(jù)、網(wǎng)絡(luò)數(shù)據(jù)、環(huán)境變量和系統(tǒng)消息等。將所有輸入向量枚舉出來(lái)是模糊測(cè)試生成測(cè)試數(shù)據(jù)的重要步驟,這一步驟要求將所有存在的輸入源和預(yù)期的輸入值找出并定位,這一步驟的完成效果將大大影響模糊測(cè)試的效果。所有從客戶端輸入目標(biāo)應(yīng)用程序或目標(biāo)系統(tǒng)的數(shù)據(jù)包括消息頭信息、文件信息、環(huán)境變量以及注冊(cè)鍵值等信息都是輸入向量,這些輸入變量都是要作為模糊測(cè)試生成測(cè)試數(shù)據(jù)的輸入向量。

3)生成畸形測(cè)試數(shù)據(jù)。模糊測(cè)試數(shù)據(jù)在確定測(cè)試目標(biāo)之后生成,根據(jù)生成決策通過(guò)預(yù)定義的方式,或自動(dòng)生成方式,改變合法輸入數(shù)據(jù)的格式,改變合法數(shù)據(jù)來(lái)生成畸形數(shù)據(jù)作為模糊測(cè)試數(shù)據(jù)。生成過(guò)程應(yīng)由模糊器自動(dòng)化完成。

4)執(zhí)行測(cè)試數(shù)據(jù)。測(cè)試用例生成之后提交并被測(cè)試程序執(zhí)行,并且測(cè)試用例的生成和目標(biāo)程序運(yùn)行測(cè)試數(shù)據(jù)可以并行進(jìn)行,這樣可以達(dá)到提高漏洞挖掘的速度的效果。執(zhí)行測(cè)試數(shù)據(jù)自動(dòng)化是模糊測(cè)試的關(guān)鍵[9]。

5)監(jiān)視異常。監(jiān)視異常運(yùn)行結(jié)果在模糊測(cè)試過(guò)程中非常重要,但其重要性往往容易被忽視。監(jiān)視異常需要具備測(cè)試目標(biāo)程序無(wú)關(guān)性,并且與所使用的模糊測(cè)試方法無(wú)關(guān)。

6)確定原因。在監(jiān)視運(yùn)行結(jié)果的過(guò)程中如果發(fā)現(xiàn)異常運(yùn)行狀態(tài)或結(jié)果,在這一階段要對(duì)造成此異常運(yùn)行狀態(tài)和結(jié)果的原因作進(jìn)一步的分析。對(duì)異常運(yùn)行狀態(tài)和結(jié)果的原因的確定依靠人工分析,其效率取決于分析人員的專業(yè)知識(shí)和測(cè)試經(jīng)驗(yàn)。

2.2 測(cè)試命令生成方法

測(cè)試命令生成模塊通過(guò)模糊方法替換種子命令可變命令字段的鍵值形成新的模擬作弊命令。這些測(cè)試命令以不同類型的作弊命令作為種子命令來(lái)生成,可以覆蓋可能觸發(fā)篡改計(jì)量系數(shù)、計(jì)量單價(jià)等不同計(jì)量參數(shù)的作弊命令。

由于外接鍵盤(pán)鍵值有一定的數(shù)量,且輸入的命令由多個(gè)按鍵值組合而成,完全窮舉生成的測(cè)試命令數(shù)量會(huì)非常龐大,現(xiàn)有的測(cè)試資源和計(jì)算機(jī)運(yùn)算速度不能滿足,因此要設(shè)計(jì)一種精簡(jiǎn)地生成測(cè)試命令的算法,且生成的作弊后門(mén)的觸發(fā)指令具有針對(duì)性,減少無(wú)用指令的冗余度,減少后門(mén)檢測(cè)所消耗的資源和測(cè)試時(shí)間。本文采用啟發(fā)式的測(cè)試命令構(gòu)造來(lái)避免隨機(jī)生成指令造成的指令爆炸,將已知作弊命令作為不同類型的種子命令來(lái)生成測(cè)試命令,即根據(jù)種子命令的格式,構(gòu)建模糊某一格式的相應(yīng)格式段的命令字來(lái)形成這一類型的測(cè)試命令用例。這些測(cè)試命令針對(duì)性地通過(guò)已知類型的作弊后門(mén)指令為參考生成測(cè)試命令,極有可能篡改程序中的計(jì)量參數(shù),以此達(dá)到作弊目的。如圖1所示,測(cè)試命令模糊測(cè)試生成方法和過(guò)程為:

1)作弊命令的格式為功能鍵值和數(shù)字、符號(hào)的組合形式。通過(guò)分離功能鍵值,數(shù)字鍵和符號(hào)鍵,構(gòu)造功能鍵,數(shù)字鍵和符號(hào)鍵三個(gè)命令字集合,F(xiàn)={A,B,C,…},N={0,1,2,3,4,5,6,7,8,9},S={.};

2)選取一條已知作弊指令作為種子命令,分析并抽象種子命令格式;

3)根據(jù)種子命令格式,如F-F-NNNN-F,依次分析不同命令字段的命令字類型,判斷該字段是否可變,若是,將該命令字用模糊測(cè)試方法用該類型命令字集合中的其他命令字替換,生成新的命令即為測(cè)試命令。測(cè)試命令依次生成并存儲(chǔ),逐條送至后門(mén)檢測(cè)系統(tǒng)由目標(biāo)程序執(zhí)行。

3 總結(jié)

本文采用模糊測(cè)試的思想,設(shè)計(jì)出一種高效的測(cè)試命令生成方案,該方法既能通過(guò)已知作弊指令的格式及特征生成可能的測(cè)試命令集合并對(duì)其進(jìn)行模擬測(cè)試,又能有效地防止因生成集合過(guò)大而造成的命令爆炸,確保了該方案的有效性及可行性。

[1]侯婉輝.對(duì)燃油加油機(jī)作弊手段及防作弊系統(tǒng)功能的探討[J].中國(guó)科技信息,2011(5):045

[2]王林波,沈春磊,趙書(shū)展,等.如何治理加油機(jī)高科技計(jì)量作弊[J].上海計(jì)量測(cè)試,2007,34(3):47-49

[3]劉天泉.嵌入式系統(tǒng)軟件設(shè)計(jì)方法研究及應(yīng)用[D].杭州:浙江大學(xué)計(jì)算機(jī)系,2004

[4]Rieck K, Holz T, Willems C, et al.Learning and classification of malware behavior[M].Detection of Intrusions and Malware, and Vulnerability Assessment.Springer Berlin Heidelberg, 2008: 108-125

[5]梁斌,侯看看,石文昌.一種基于安全狀態(tài)跟蹤監(jiān)測(cè)的漏洞靜態(tài)檢測(cè)方法[J].計(jì)算機(jī)學(xué)報(bào),2009(5)

[6]Rieck K, Trinius P, Willems C, et al.Automatic analysis of malware behavior using machine learning[J].Journal of Computer Security,2011, 19(4): 639-668

[7]Chi Ruinan.Research on network data transmission and security using windows socket[J].Computer Engineering and Technology (ICCET), 2010(2):686

[8]Afanasyev M,Tsuwei Chen,Voelker G M,Snoeren A C.Usage Patterns in an Urban WiFi Network[J].Networking,2010(18): 1359

[9]Jones A, Ohlund J.Network Programming for Microsoft Windows[M].Microsoft Press.2000

猜你喜歡
測(cè)試用例測(cè)試數(shù)據(jù)作弊
作弊
基于SmartUnit的安全通信系統(tǒng)單元測(cè)試用例自動(dòng)生成
測(cè)試數(shù)據(jù)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
有人要你幫忙作弊怎么辦
基于混合遺傳算法的回歸測(cè)試用例集最小化研究
基于自適應(yīng)粒子群優(yōu)化算法的測(cè)試數(shù)據(jù)擴(kuò)增方法
空間co-location挖掘模式在學(xué)生體能測(cè)試數(shù)據(jù)中的應(yīng)用
沒(méi)作弊
基于依賴結(jié)構(gòu)的測(cè)試用例優(yōu)先級(jí)技術(shù)
影響《標(biāo)準(zhǔn)》測(cè)試數(shù)據(jù)真實(shí)性的因素及破解策略
巴东县| 蕉岭县| 玉田县| 额敏县| 静乐县| 徐闻县| 五寨县| 团风县| 蓝田县| 黑龙江省| 西吉县| 曲阜市| 吴忠市| 女性| 吴桥县| 南投县| 甘孜| 都安| 吴忠市| 金阳县| 原阳县| 安达市| 长子县| 汾阳市| 墨脱县| 德格县| 尚志市| 开远市| 余姚市| 琼结县| 南京市| 剑阁县| 凉城县| 宣汉县| 迁西县| 柘荣县| 呈贡县| 丰顺县| 林州市| 饶阳县| 安西县|