999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

論軟件測試在軟件工程中的作用

2013-12-31 00:00:00
中外企業文化 2013年12期

【文章摘要】

隨著軟件規模的日益增大,軟件的安全測試問題也日益突出,使得軟件安全測試也成為軟件開發中一個不可分割的重要部分。基于缺陷模式的軟件測試技術作為高可信軟件的重要保證,可以大大降低軟件的缺陷密度,提高軟件的可信性。

【關鍵詞】

軟件開發;白盒測試;黑盒測試

0 引言

軟件測試是屬于開發階段最后一段時間的主要工作。需要對軟件進行全方位的測試,以確保軟件在上線運營時不會出現影響正常功能使用上的問題。軟件測試時一項非常重要的工作,也是軟件工程中一個重要的環節。軟件測試是在軟件投入運行前,對軟件需求分析,設計規格說明和編碼的最終復審,是軟件質量保證的關鍵步驟。常見的測試方法有黑盒測試與白盒測試。

1 黑盒測試與白盒測試

軟件工程中的測試,必須要用正確的方法,才能提高效率并且行之有效的解決整個開發過程中的問題,并且能為后期的維護提供最大的便利。而我們最經常用到的測試方法就是黑盒測試與白盒測試。

例如我們在做web程序的黑盒子測試時會經常使用一些Fuzzing工具去進行一些壓力的測試,有時候也會進行一些安全性的比如跨站腳本攻擊的測試、SQL注入攻擊的測試、跨域提交漏洞的測試等等注入此類在不知道程序源代碼情況下的Fuzzing技術都屬于黑盒測試的范疇。用黑盒測試發現程序中的錯誤,必須在所有可能的輸入條件和輸出條件中確定測試數據,來檢查程序是否都能產生正確的輸出,但這是不可能的。

工作中大部分的黑盒測試都可以通過編寫代碼來實現全自動化的安全測試,這樣可以解放人的不斷重復性勞動,是一種在做黑盒測試中最常見的方式。

把測試對象看做一個透明的盒子,它允許測試人員利用程序內部的邏輯結構及有關信息,設計或選擇測試用例,對程序所有邏輯路徑進行測試。通過在不同點檢查程序的狀態,確定實際的狀態是否與預期的狀態一致,這就是白盒測試。白盒測試又稱為結構測試或邏輯驅動測試。軟件人員使用白盒測試方法,主要想對程序模塊進行如下的檢查:對程序模塊的所有獨立的執行路徑至少測試一次;對所有的邏輯判定,取“真”與取“假”的兩種情況都至少測試一次;在循環的邊界和運行界限內執行循環體;測試內部數據結構的有效性等。

白盒測試是一種比較容易找出軟件編碼中存在的嚴重問題的方式,他通過通讀源代碼,來發現整個工程中存在的一些邏輯漏洞,或者一些危險函數的利用。有時候也可以通過監測輸入數據與輸出數據的中間流程來發現是否存在輸入未過濾或者輸出不合法等問題。我們以PHP腳本語言問例,當前很多的WEB端軟件工程多是用PHP開發完成,而PHP語言存在的危險函數和危險變量則多達幾十個如果稍有使用不慎,就會造成較為嚴重的安全漏洞。

在PHP的設置中register_globals = Off,PHP在進程啟動時,會根據register_globals的設置,判斷是否將$_GET、$_POST、$_COOKIE、$_ENV、$_SERVER、$REQUEST等數組變量里的內容自動注冊為全局變量。

2 軟件測試在軟件工程中的意義

軟件的測試環節做的好與壞,決定了整個工程的成敗。從軟件測試和軟件可靠性理論入手,對現有的軟件可靠性技術進行研究分析從中發現一些問題就是軟件測試的主要目的。與此同時要總結出現有可靠性模型的特點并分析出現有可靠性模型所存在的局限性與不足,以方便后續開發程序中注意存在的問題。

而對于目前我國軟件產業的現狀,存在多個開源或者非開源項目均曾經爆出過較為嚴重的安全漏洞問題。如下是國內某著名開源軟件工程中存在的一個存儲型跨站腳本攻擊的代碼。

如下函數,解析轉化Iframe標簽(Iframe標簽本身就是個危險標簽,不知道要保留這個功能意義何在)如下

public static function parseIframe($message,$convertStatus = 1){

return preg_replace(\"/\[iframe\]([^\[\<\r\n\\"']+?)\[\/iframe\]/eis\",\"self::createIframe('\\1',\$convertStatus)\",$message,

self::$_cvtimes);

}

看正則/\[iframe\]([^\[\<\r\n\”’]+?)\[\/iframe\]/eis 知道,是匹配形如[iframe]任意非特殊字符[/iframe]。所以可見[iframe]標簽中間的內容是可以任意控制的。匹配后出來的值被放到createIframe中作為第一個參數做了處理,跟進

public static function createIframe($url,$convertStatus){

if($convertStatus){

$html = \"\";

} else {

$html = \"Iframe Close:$url\";

}

return self::_pushCode($html);

}

1)判斷convertStatus,該參數默認為1,生成的$html是將$url的值直接帶入src。所以問題出現了。構造javascript:alert(1)即可觸發該漏洞。我們可以看到生成的HTML代碼為,

當不知情者訪問后即可觸發跨站腳本漏洞

2)當傳遞的convertStatus的值為0時,生成的$html是將$url的值直接帶入href。所以問題同樣出現。構造javascript:alert(2)點擊即可觸發。我們可以看到生成的HTML代碼為,

javascript:alert(1)

點擊后仍能觸發跨站腳本漏洞

由于該款產品在國內用戶使用量大概在六百萬以上,所以這個問題剛開始爆出來的時候給很多的個人建站用戶造成了很大的影響,官方也在第二天及緊急發布安全補丁修復這個問題,但是仍然造成數以萬計的使用該程序的站長網站被利用。

3 結語

軟件測試最終的目的是為了發現軟件工程中存在的BUG以及安全漏洞等,從而有效的對整個軟件工程中潛在的風險進行改正。

【參考文獻】

陳汶斌.軟件測試技術基礎[M].北京:清華大學出版社,2008(19)

【作者簡介】

夏天(1982—),男,沈陽人,遼寧德康醫藥有限公司電子商務部經理,同濟大學軟件學院軟件工程碩士研究生。

主站蜘蛛池模板: 婷婷六月综合网| 一级爱做片免费观看久久| 亚洲AV无码一区二区三区牲色| 国产福利在线免费| 永久免费精品视频| 日本精品视频一区二区 | 日韩美一区二区| 精品无码一区二区在线观看| 国产成人无码Av在线播放无广告| 国产日韩精品欧美一区喷| 国产在线一二三区| 国产精品网址在线观看你懂的| 一级毛片在线播放免费| 国产91丝袜在线播放动漫| 一本视频精品中文字幕| 91精品综合| 午夜性刺激在线观看免费| 免费看的一级毛片| 2021国产在线视频| 久久这里只有精品免费| 成人毛片免费在线观看| 国产一区二区三区日韩精品| 农村乱人伦一区二区| 亚洲午夜天堂| 中国黄色一级视频| 国产精品人人做人人爽人人添| 亚洲AⅤ无码日韩AV无码网站| 蜜桃视频一区| 日韩视频精品在线| 99精品热视频这里只有精品7| 啪啪啪亚洲无码| 亚洲第一成人在线| 日韩美毛片| аv天堂最新中文在线| 国产三级毛片| 欧美亚洲激情| 中文无码影院| 亚洲日韩在线满18点击进入| 国产亚洲视频中文字幕视频| 欧美精品一区二区三区中文字幕| 天天激情综合| 亚洲日本一本dvd高清| 97成人在线视频| 国产无码网站在线观看| 欧美亚洲国产精品久久蜜芽| 视频二区亚洲精品| 久久这里只有精品23| 成人字幕网视频在线观看| 国产第一页屁屁影院| 四虎永久免费地址在线网站| 中文字幕免费视频| 中文字幕无码电影| 亚洲天堂网2014| 亚洲一区二区三区麻豆| 日韩精品成人网页视频在线| 亚洲国产欧美中日韩成人综合视频| 日本亚洲国产一区二区三区| 国产精品yjizz视频网一二区| 日韩成人午夜| 嫩草在线视频| 国产成人综合久久| 在线视频亚洲色图| 亚洲va视频| 欧美亚洲综合免费精品高清在线观看 | 国产成人麻豆精品| 中文字幕1区2区| 久久综合伊人 六十路| 亚洲va欧美ⅴa国产va影院| 久久www视频| 国产制服丝袜无码视频| 无码高潮喷水在线观看| 国产91线观看| 久久亚洲国产一区二区| 欧美爱爱网| 久久精品最新免费国产成人| 国产精品99r8在线观看| 91免费国产在线观看尤物| 2021国产精品自产拍在线观看| 欧美日韩成人| 91精品免费高清在线| 亚洲男人的天堂网| 日本精品一在线观看视频|