簡介
概念驗證通常被認為是一個有里程碑意義的實現的原型 。
在計算機安全術語中, 概念驗證經常被認為是zero day exploit。(通常指並沒有充分利用這個漏洞的exploit)
計算機安全
計算機安全(computer security)是計算機與網路領域的信息安全(information security)的一個分支。其目的是在保證信息和財產可被受權用戶正常獲取和使用的情況下,保護此信息和財產不受偷竊,污染,自然災害等的損壞。計算機系統安全是指一系列包含敏感和有價值的信息和服務的進程和機制,不被未得到授權和不被信任的個人,團體或事件公開,修改或損壞。由於它的目的在於防止不需要的行為發生而非使得某些行為發生,其策略和方法常常與其他大多數的計算機技術不同。
漏洞利用
漏洞利用(英語:Exploit,本意為“利用”)是計算機安全術語,指的是利用程式中的某些漏洞,來得到計算機的控制權(使自己編寫的代碼越過具有漏洞的程式的限制,從而獲得運行許可權)。在英語中,本詞也是名詞,表示為了利用漏洞而編寫的攻擊程式,即漏洞利用程式。
經常還可以看到名為ExploitMe的程式。這樣的程式是故意編寫的具有安全漏洞的程式,通常是為了練習寫Exploit程式。
計算機安全技術的基礎是邏輯學。安全性並非是大部分的計算機套用的主要目的,而在設計時就考慮程式的安全性常常會對程式的運行有所限制。
在計算機套用上有四種安全設定,通常會結合使用:
信任所有軟體都遵守安全策略,但軟體本身不可信。
信任所有軟體都遵守安全策略,並且該軟體也被證實為可信的
不信任軟體,但通過不可信的保護機制執行安全策略
不信任軟體,但通過可信的硬體機制執行安全策略
1.信任所有軟體都遵守安全策略,但軟體本身不可信。
2.信任所有軟體都遵守安全策略,並且該軟體也被證實為可信的
3.不信任軟體,但通過不可信的保護機制執行安全策略
4.不信任軟體,但通過可信的硬體機制執行安全策略
許多系統無意中使用了以上的第一種設定。由於第二種方法成本昂貴和不確定性,其使用受到很大限制。第一種和第三種方法會導致失敗。第四種方法更具實用性,這是由於它通常基於硬體機制,避免了抽象性和自由性。
設計安全系統有很多技巧和技術。但很少有有效的方法能夠在設計完成後提高安全性。有一種技術能最大程度地執行最小許可權原則,即一個實體只能擁有它所需要的許可權。在這種方式下,即使攻擊者能夠進入系統的某一部分,也難以進入到其他部分。
另一方面,將系統劃分為小的組件可降低各部分的複雜性,並可以使用定理機器證明(automated theorem proving)來證明關鍵的軟體子系統的正確性。因此,當單一的有特點的特性可以作為關鍵點被分離出,而此特性可被數學評估時,安全的解析解(closed form solution)才會有效。在這種正確性證明不存在時,嚴謹的代碼審查(code review)和單元測試(unit testing)是最好的保證模組安全的方式。
零日攻擊
在計算機領域中, 零日漏洞或 零時差漏洞(英語:Zero-day exploit、 zero-day、0-day)通常是指還沒有補丁的安全漏洞,而 零日攻擊或 零時差攻擊(英語:Zero-day attack)則是指利用這種漏洞進行的攻擊。提供該漏洞細節或者利用程式的人通常是該漏洞的發現者。零日漏洞的利用程式對網路安全具有巨大威脅,因此零日漏洞不但是黑客的最愛,掌握多少零日漏洞也成為評價黑客技術水平的一個重要參數。
零日漏洞及其利用代碼不僅對犯罪黑客而言,具有極高的利用價值,一些國家間諜和網軍部隊,例如美國國家安全局和美國網戰司令部也非常重視這些信息。據路透社報告稱美國政府是零日漏洞黑市的最大買家。
一般而言,零日攻擊唯一徹底解決方法便是由原軟體發行公司提供修補程式,但此法通常較慢,因此軟體公司通常會在最新的病毒代碼中提供迴避已知零日攻擊的功能,但無法徹底解決漏洞本身。根據賽門鐵克第14期網路安全威脅研究在2008年分析的所有瀏覽器中,Safari平均要在漏洞出現9天后才會完成修補,需時最久。Mozilla Firefox平均短於1天,需時最短。