零日攻擊

零日漏洞或零時差漏洞（zero-day vulnerability、0-day vulnerability）是指軟體或硬體中還沒有有效補丁的安全漏洞，並且其供應商通常不知曉。而零日攻擊或零時差攻擊（zero-day exploit、zero-day attack）則是指利用這種漏洞進行的攻擊。「零日」一詞原指軟體的已發布時間，後來代指在軟體發布之前修復漏洞的時間期限。由於漏洞在供應商響應之前就已經被描述或被利用，留給供應商來準備補丁的時間只有「零天」。

儘管只有少數網路攻擊是基於零日漏洞的，但通常認為這比已知漏洞具有更大威脅，因為可以採取的對策更少。國家是零日漏洞的主要使用者，因為發現、購買和編寫攻擊軟體的代價較高。許多漏洞是由黑客或安全研究人員發現的，除了留作己用，他們還可能會向軟／硬體供應商披露這些漏洞（通常是為了換取漏洞賞金），亦或是出售給國家或犯罪集團。在許多流行軟體公司開始對消息和數據進行加密之後，零日漏洞的使用有所增加，因為被加密的數據一般只能通過在其尚未被加密時入侵軟體來獲取。

## 定義

儘管開發人員的目標是交付完全按預期工作的產品，但實際上所有軟體和硬體都包含錯誤。如果一個錯誤造成了安全風險，它就被稱為漏洞。漏洞的可利用性因惡意攻擊者而異。有些漏洞根本無法利用，而另一些漏洞則可被用於通過拒絕服務攻擊擾亂設備。最有價值的漏洞允許攻擊者在使用者不知情的情況下注入並運行他們自己的代碼。

雖然「零日」一詞最初指的是軟硬體供應商意識到漏洞後的時間，但零日漏洞也可以定義為沒有補丁或其他修復程序可用的漏洞的部分集合。零日攻擊是指利用此類漏洞的任何攻擊。

## 漏洞利用

漏洞利用是指利用漏洞侵入目標系統以達到破壞操作、安裝惡意軟體或竊取數據等目的的傳送機制。研究人員Lillian Ablon和Andy Bogart寫道，「關於零日漏洞利用的真實程度、用途、益處和危害，我們知之甚少」。基於零日漏洞的漏洞利用被認為比利用已知漏洞的漏洞利用更危險。然而，大多數網路攻擊很可能利用的是已知漏洞，而不是零日漏洞。

國家是零日漏洞利用的主要使用者，這不僅是因為發現或購買漏洞的成本高昂，還因為編寫攻擊軟體的成本也很高。然而，任何人都可以使用漏洞，根據蘭德公司的研究，「任何堅決的攻擊者都可以以可承受的價格獲得針對幾乎任何目標的零日漏洞」。許多定向攻擊和大多數高級持續性威脅都依賴於零日漏洞。

據估計，從零日漏洞開發漏洞利用的平均時間為22天。由於流行軟體中反漏洞利用功能的增強，開發漏洞利用的難度一直在增加。

### 漏洞窗口

<image>

零日漏洞通常分為「活漏洞」（alive vulnerabilities）：指未向公眾披露的漏洞；以及「死漏洞」（dead vulnerabilities）：指已被公開披露但尚未修補的漏洞。活漏洞分為正被維護者積極尋找的「活躍漏洞」（living vulnerabilities）；以及無維護軟體中的「永生漏洞」（immortal vulnerabilities）。另外「殭屍漏洞」（zombie vulnerabilities）是指已在新版本中被修補，但能夠在舊版本的軟體中被利用的漏洞。

即使是公開已知和殭屍漏洞，也經常可以在很長一段時間內被利用。安全補丁的開發可能需要幾個月的時間，甚至可能永遠不會被開發出來。補丁可能會對軟體的功能產生負面影響，使用者可能需要測試補丁以確認其功能和兼容性。較大的組織可能無法識別和修補所有依賴項，而較小的企業和個人使用者可能不會安裝補丁。研究表明，如果漏洞被公開或發布了補丁，則網路攻擊的風險會增加。網路犯罪分子可以對補丁進行逆向工程以找到潛在的漏洞並開發漏洞利用，而且速度通常比使用者安裝補丁的速度更快。

根據蘭德公司 2017年發布的研究報告，零日漏洞的平均可利用時間為6.9年，而從第三方購買的零日漏洞的平均可利用時間僅為1.4年。研究人員無法確定任何特定平台或軟體（例如開源軟體）是否與零日漏洞的生命周期有任何關係。儘管蘭德公司的研究人員發現，5%的秘密零日漏洞會被其他人發現，但另一項研究發現，重疊率更高，每年高達10.8%至21.9%。

## 防禦措施

由於零日漏洞利用的定義是尚無補丁可以阻止的漏洞，因此所有使用存在漏洞的軟體或硬體的系統都處於風險之中，包括銀行和政府等所有補丁都已更新的安全系統。殺毒軟體通常無法有效抵禦被零日攻擊引入的惡意軟體。安全系統的設計是圍繞已知漏洞展開的，而零日漏洞利用插入的惡意軟體可能會在系統中長時間運行而不被發現。儘管已經有很多關於有效檢測零日漏洞利用的系統提案，但這在2023年仍然在研究領域活躍。

許多組織已經採取了縱深防禦策略，因此攻擊很可能需要突破多級安全防護，這增加了攻擊的難度。常規的網路安全措施，如培訓和訪問控制（如多因素身份驗證、最小權限原則和物理隔離），使得利用零日漏洞入侵系統變得更加困難。由於編寫完全安全的軟體是不可能的，一些研究人員認為，提高漏洞利用的成本是減少網路攻擊負擔的有效策略。

## 解決方法

一般而言，零時差攻擊唯一徹底解決方法便是由原軟體發行公司提供修補程序，但此法通常較慢，因此資安軟體公司通常會在最新的病毒碼中提供迴避已知零時差攻擊的功能，但無法徹底解決漏洞本身。根據賽門鐵克第14期網路安全威脅研究在2008年分析的所有瀏覽器中，Safari平均要在漏洞出現9天後才會完成修補，需時最久。Mozilla Firefox平均短於1天，需時最短。

## 市場

零時差攻擊及其利用代碼不僅對犯罪黑客而言具有極高的利用價值，一些國家間諜和網軍部隊，例如美國國家安全局和美國網戰司令部也非常重視這些資訊。

<image>

零日漏洞利用程序可以賣到數百萬美元。買家主要有三類：

- 白帽：漏洞的發現者將其出售給供應商，或將其披露給第三方機構（如Zero Day Initiative），再由第三方機構轉告供應商。此類披露通常是為了獲得漏洞賞金。然而，並非所有公司都對漏洞披露持積極態度，因為這可能會導致法律責任和營運負擔。有甚者在無償披露漏洞後，收到供應商的停止並終止函並不少見。
- 灰帽：這是規模最大、獲利最豐厚的市場。政府或情報機構購買零日漏洞後，可能會將其用於攻擊、儲存漏洞或通知供應商。美國聯邦政府是最大的買家之一。截至2013年，五眼聯盟（美國、英國、加拿大、澳大利亞和紐西蘭）占據了該市場的大部分份額，其他重要買家包括俄羅斯、印度、巴西、馬來西亞、新加坡、朝鮮和伊朗。後來，中東國家也加大了在該領域的支出。
- 黑帽：有組織犯罪集團，他們通常更中意漏洞利用程序，而不僅僅是漏洞資訊。這些使用者更有可能使用「半日漏洞」，即已有補丁可用的漏洞。

2015年，政府和犯罪集團的零日漏洞市場規模估計至少是白帽市場的十倍。賣家通常是黑客組織，他們尋找廣泛使用的軟體中的漏洞以獲取經濟利益。有些賣家只向特定買家出售，而另一些賣家則向任何人出售。白帽賣家更有可能受到非金錢獎勵的激勵，例如認可和智力挑戰。出售零日漏洞利用程序是合法的。儘管有人呼籲加強監管，但法律教授梅林·菲德勒（Mailyn Fidler）表示，達成國際協議的可能性很小，因為俄羅斯和以色列等關鍵參與者對此不感興趣。

在零日漏洞交易中，買賣雙方往往非常隱秘，依靠保密協議和機密資訊法律來保守漏洞的秘密。如果漏洞被公開，就可以對其進行修補，其價值也會隨之崩潰。由於市場缺乏透明度，各方可能難以找到公平的價格。如果漏洞在得到驗證之前就被披露，或者買方拒絕購買但仍然使用了該漏洞，賣家可能無法獲得報酬。隨著中間商的激增，賣家可能永遠不知道漏洞利用程序的最終用途。買方也無法保證該漏洞沒有被出售給其他方。買賣雙方都在暗網上發布廣告。

2022年發表的一項研究基於單個漏洞經紀人支付的最高價格，發現漏洞利用程序的價格年化通貨膨脹率為44%。遠程零點擊漏洞利用程序的價格最高，而需要本地訪問設備的漏洞利用程序則便宜得多。廣泛使用的軟體中的漏洞也更貴。他們估計，大約有400到1200人向該經紀人出售漏洞利用程序，他們每年的平均收入約為5000到20000美元。

## 披露與儲備

關於美國政府是否應該披露其已知的漏洞以便進行修補，還是將其保密以供己用，一直存在爭論。國家選擇對漏洞保密的原因包括希望將其用於進攻性目的，或用於滲透測試等防禦性目的。而披露漏洞則可以降低消費者和所有軟體使用者成為惡意軟體或數據洩露受害者的風險。

## 歷史

在蘋果、谷歌、臉書和微軟等公司對伺服器和資訊進行加密之後，零日漏洞攻擊的重要性日益凸顯。這意味著訪問使用者數據的唯一方法是在數據被加密之前，在其源頭進行攔截。最著名的零日漏洞攻擊案例之一是震網病毒（Stuxnet），該病毒在2010年利用了四個零日漏洞對伊朗核計劃造成了破壞。震網病毒展示了零日漏洞攻擊的潛在破壞力，也引發了零日漏洞市場的擴張。

在美國大型科技公司拒絕在其軟體中安裝後門程序後，美國國家安全局（NSA）加大了對零日漏洞的搜尋力度，並責成特定入侵行動辦公室（TAO）發現和購買零日漏洞。2007年，美國國家安全局前雇員查理·米勒首次公開披露美國政府正在購買零日漏洞。2013年，美國國家安全局承包商雇員愛德華·斯諾登洩露的文件中披露了有關美國國家安全局參與零日漏洞攻擊的一些資訊，但缺乏細節。記者妮可·珀洛斯得出結論：「要麼是斯諾登作為承包商的身份無法讓他深入到政府系統中獲取必要的情報，要麼是政府獲取零日漏洞的一些來源和方法過於機密或具有爭議性，以至於該機構從未敢將其付諸筆端」。

其中一個在2014年被發現的惡名遠揚的漏洞，心血漏洞（CVE-2014-0160，Heartbleed），在公開披露時雖然已非零日漏洞，但突顯了軟體缺陷可能對全球網路安全產生的嚴重影響。OpenSSL密碼學庫中的這個缺陷可能在其被發現之前就被利用為零日漏洞，從而允許攻擊者竊取敏感資訊，例如私鑰和密碼。

2016年，人稱影子經紀人的黑客組織發布了一批據稱從美國國家安全局（NSA）竊取的複雜零日漏洞利用程序。這些工具包括永恆之藍（EternalBlue），它利用了Microsoft Windows的伺服器訊息區塊協議中的漏洞。永恆之藍後來在諸如WannaCry和NotPetya等高調攻擊中被武器化，造成了廣泛的全球性破壞，並突顯了漏洞囤積的風險。

2020年可見證迄今最複雜的網路間諜活動之一，攻擊者利用包括零日漏洞在內的多個漏洞，入侵了SolarWinds的Orion（獵戶座）軟體。這使得他們能夠訪問眾多的政府和企業網路。

2021年，一由中國政府支持的組織Hafnium (組織)利用Microsoft Exchange Server中的零日漏洞進行網路間諜活動。這些被稱為ProxyLogon的缺陷允許攻擊者繞過身份驗證並執行任意代碼，繼而損害了全球數千餘系統。

2022年，由以色列的NSO集團開發的間諜軟體飛馬被發現利用了iMessage和WhatsApp等消息應用程式中的零點擊漏洞。這些漏洞利用程序使得攻擊者在無需使用者交互的情況下訪問目標設備，加劇了對監視與隱私的擔憂。

## 著名的零日攻擊

- 震網（Stuxnet）
- 極光行動

## 參閱

- 漏洞
- 漏洞利用

## 外部連結

- Attackers seize on new zero-day in Word from InfoWorld
- PowerPoint Zero-Day Attack May Be Case of Corporate Espionage from FoxNews
- Microsoft Issues Word Zero-Day Attack Alert from eWeek