大量的研究表明,軟件缺陷不僅給廣大用戶,也給軟件的開發(fā)者造成了巨大的經(jīng)濟損失,以及時間和人力等資源的嚴重浪費。不僅如此,在軟件缺陷中還存在著一類特殊缺陷,可能導(dǎo)致嚴重的系統(tǒng)安全危害,這類缺陷被稱為軟件安全缺陷。關(guān)于軟件安全缺陷有多個相關(guān)的定義,文獻將軟件安全缺陷定義為:軟件安全缺陷是一種可能被攻擊者利用來繞開系統(tǒng)安全機制的軟件缺陷。互聯(lián)網(wǎng)安全組織(OIS)給出了一個更為詳細的定義:軟件安全缺陷是軟件產(chǎn)品中存在的可能導(dǎo)致軟件與其設(shè)計目標不一致,并且可能違反軟件文文件所定義的安全政策的這類軟件缺陷。與普通的軟件缺陷相比,軟件安全缺陷有如下特點:a)軟件安全缺陷一旦被發(fā)現(xiàn)和利用,可能引發(fā)嚴重的系統(tǒng)安全風(fēng)險,而普通軟件缺陷通常不會導(dǎo)致較為嚴重的安全問題;b)相當(dāng)部分的軟件安全缺陷是由非軟件測試人員發(fā)現(xiàn)的,安全缺陷的發(fā)現(xiàn)往往是商業(yè)安全機構(gòu)的專業(yè)人員,以及試圖利用軟件的安全缺陷獲取不當(dāng)利益的黑客;c)普通的軟件缺陷一般在下一個發(fā)行版本中進行修復(fù),而安全缺陷則一經(jīng)發(fā)現(xiàn)就必須要立即采取相應(yīng)的安全措施,并開發(fā)和發(fā)行補丁進行修復(fù)。