那是2019年底,安全公司Volexity的總裁Adair正在調查一家美國智庫的網絡安全漏洞。入侵沒什么特別的,Adair認為他和他的團隊會迅速踢走攻擊者并完成這個案子,然而直到他們發現了一些奇怪的事情.....第二組黑客此后又活躍在智庫的網絡中,他們正在追蹤電子郵件,拷貝副本并將它們發送到外部的服務器。這些入侵者的技術要高超得多,他們每周都會多次往返智庫網絡,竊取特定高管、政策專家和IT員工的郵件。

Adair和他的同事將第二組黑客團伙稱為“Dark Halo”,并將他們從網絡中踢走,但很快他們又回來了。事實證明,黑客三年前在網絡上植入了一類秘密的惡意代碼后門,允許他們進入受感染的機器或與受感染的機器通信。現在是第一次暴露了這種情況,他們使用了這種后門。“我們關上了一扇門,他們很快就去了另一扇門”,Adair說。

Adair的團隊花了一周的時間再次將攻擊者踢出網絡并清除了后門。但在2020年6月下旬,黑客不知何故又卷土重來,他們又開始從相同賬號中盜取電子郵件。調查人員花了數天時間試圖弄清楚他們是如何溜回來的。Volexity將注意力集中在智囊團的一臺服務器上,這是一臺運行某流行軟件的機器,該服務器幫助智庫的系統管理員管理他們的計算機網絡。該軟件是由一家為世界各地IT團隊所熟知的公司開發的,但幾乎所有人都可能會感到困惑,這是一家位于德克薩斯州奧斯汀的叫SolarWinds的公司。

Adair和他的團隊認為黑客一定是在受害者的服務器上留了一個后門,但經過大量調查后,他們找不到這個后門。所以他們再次將入侵者趕了出去,為了安全起見,只能將服務器與互聯網斷開連接。Adair希望一切就此結束,但是這件事一直困擾著他。幾天來,他都在凌晨2點左右醒來,感覺團隊錯過了一件大事。

是的,他們錯過了,他們并不是唯一碰到這樣情況的人。大約在Adair的團隊將Dark Halo踢出智庫網絡的同時,美國司法部也在努力應對一次入侵事件,涉及運行相同SolarWinds軟件試用版的服務器出現了問題。據知情人士透露,美國司法部在5月下旬發現從服務器傳輸到互聯網的可疑流量,因此他們請世界上最重要的網絡安全公司之一“Mandiant”來幫助他們調查,他們還與微軟合作,但仍然不清楚如何被入侵。(司法部發言人證實發生了這一事件和調查,但拒絕透露Mandiant和微軟是否參與其中,兩家公司均未對調查發表評論)

據熟悉該事件的消息人士稱,調查人員懷疑黑客可能通過利用SolarWinds軟件中的漏洞直接破壞了司法部的服務器。消息人士稱,司法部團隊聯系了SolarWinds公司,甚至引用了他們認為可能與該問題相關的特定文件,但SolarWinds的工程師無法在他們的代碼中找到漏洞。數周來回之后,謎團仍未解開,調查人員與SolarWinds之間的溝通也停止了(SolarWinds拒絕對這一事件發表評論)。當然,該部門并不知道Volexity也出奇地處理了相似的黑客攻擊事件。

隨著夏天到了秋天,在這種閉門造車的情況下,政府和安全行業的人們開始懷疑有什么大事正在發生。但政府多年來一直試圖改善與外部安全專家的溝通,突然間就不再溝通了。在接下來的幾個月里,“通常很健談的人都變得沉默寡言了”,一位前政府工作人員說。他說,某些人越來越擔心一場毀滅性的網絡行動正在展開,而且沒有人能控制它。

事實上,美國司法部和Volexity公司已經無意中發現了十年來最復雜的網絡攻擊活動之一。肇事者確實入侵了SolarWinds的軟件。使用調查人員以前從未見過的技術,黑客獲得了對公司數千名客戶的訪問權限。受感染者中至少有八個重要美國聯邦機構,包括美國國防部、國土安全部和財政部,以及先進的技術公司,甚至頂級的安全公司,這些公司包括英特爾、思科和Palo Alto,當然微軟和 Mandiant也在受害者名單上,他們中沒有人知道發生了什么。

在美國司法部事件發生后,該行動至少持續了六個月還未被發現。直到調查人員最終破獲它時,他們被黑客攻擊的復雜性和終極謀劃震驚了。然而,兩年多過去了,他們拼湊的事件碎片或者至少他們公開分享過的信息,仍然無法還原攻擊的全貌。關于這場攻擊活動對美國聯邦系統的影響以及被盜數據的全面統計,從未向公眾或國會議員提供過。根據前政府的消息來源和某些人的說法,許多受影響的聯邦機構沒有能夠維護足夠的網絡安全日志,因此不知道被拿走了什么。更糟糕的是:一些專家認為,SolarWinds并不是唯一的被攻擊媒介,其他軟件制造商曾經或可能仍然在傳播惡意軟件。

下面是對揭露這起黑客行動的最終調查內幕描述。它是如何發生的,以及迄今為止我們所知道的一切...

線索

2020年11月10日,Mandiant公司的一位名叫Henna Parviz的分析師處理了一次例行安全告警,只要員工在公司的多因素身份驗證系統中注冊一部新手機,就會觸發這種警報。該系統向經過認證的設備發送一次性訪問代碼,允許員工登錄公司的VPN網絡。但是Parviz注意到這款三星設備有一些不尋常的地方:“它沒有關聯的電話號碼”。

Parviz仔細查看了手機的活動日志,發現了另一個奇怪的細節。該員工似乎使用手機從佛羅里達州的IP地址登錄了他的VPN賬號。但此人不住在佛羅里達州,他的舊iPhone仍然在多因素系統中注冊。然后她注意到三星手機已從佛羅里達州的IP地址登錄,同時該員工也從他的家鄉使用iPhone登錄。這引起了Mandiant公司的注意!

Mandiant安全團隊封鎖了這個三星設備,然后花了一周時間調查入侵者如何獲得員工的VPN用戶名和密碼。他們很快意識到這個問題已經不是某個員工的賬戶失陷了。攻擊者實施了Golden SAML攻擊,一種用于劫持公司任意員工身份驗證系統的復雜技術,他們可以奪取任意員工賬戶的控制權,授予這些賬戶更多權限,甚至可以創建具有無限訪問權限的新賬戶。有了這種能力,攻擊者可以深入訪問到公司內部的任何網絡和資產。

11月17日,Mandiant工程咨詢部門的高級成員Scott Runnels和Eric Scales悄悄召集了一個大約10人的頂級調查響應團隊,他們從其他項目中調取了人力,但沒有告訴管理層任何原因,甚至沒有提這些抽調的員工何時會回來。由于不確定調查響應會發現什么,Runnels和 Scales需要控制知情人的范圍。該團隊很快意識到,黑客已經活躍了數周,但通過“無文件攻擊”來逃避檢測,通過破壞網絡上已有的管理工具來實施他們的惡意行為,這樣就不會在攻擊活動中引入他們自己的工具。他們還試圖避免在活動日志和其他地方留下痕跡,以規避調查人員搜尋威脅的常規模式。

但在攻擊者試圖對抗Mandiant的過程中,無意中留下了不同的指紋。幾天之內,調查人員找到了蹤跡,開始了解入侵者去過哪里以及他們偷了什么東西。

11月20日星期五早上,Mandiant的創始人兼首席執行官Kevin Mandia在與3000名員工舉行的全體會議上點擊退出,就注意到他的助手在他的日歷中添加了一個新的電話會議,上面只備注了“安全簡報”。Mandia是一名52歲的前空軍情報官員,退役20年后仍留著標準的軍人發型。他本打算在周末早點下班,但還是先撥通了電話會議,他期待能夠快速結束會議,但會議在進行了五分鐘后,他就知道他的周末結束了。

Mandia于2004年創立的公司調查了過去二十年中許多最引人注目的黑客事件。該公司于2013年被FireEye收購,去年又被谷歌收購,該公司的威脅獵手每年處理1000多起安全事件,其中包括谷歌、索尼、Colonial Pipeline等公司的事件。在那段時間里,Mandiant本身從未遭受過嚴重的黑客攻擊,現在獵人成了獵物。

Mandia了解到,入侵者竊取了自己公司用來查找客戶網絡漏洞的紅隊工具,入侵者還查看了識別其政府客戶的敏感信息。當他的團隊描述入侵者如何隱藏他們的入侵活動時,Mandia回憶起了他職業生涯早期的事件。從1995年到2013年,在空軍特別調查辦公室和私企部門,他曾觀察到俄羅斯威脅行為者在不斷測試系統,一旦調查人員鎖定他們,他們就會消失。俄羅斯威脅行為者的堅持和隱秘使他們成為Mandia遇到過的最難纏的對手。現在,在會議上聽到自己公司內部出現了相似的入侵活動,他的直覺告訴一位會議聽眾:“開始對這種攻擊模式進行匹配”。在得知令人不安的被入侵消息后的第二天,他聯系了美國國家安全局(NSA)和其他政府聯系人。

當Mandia與政府商討時,Mandiant的首席技術官Charles Carmakal聯系了一些老朋友。這次入侵活動的許多黑客攻擊技戰術都很陌生,他想知道之前的Mandiant同事Christopher Glyer和Nick Carr是否見過這些技戰術。Glyer和Carr花了多年時間調查大規模、復雜的攻擊,并廣泛跟蹤了很多臭名昭著的黑客組織。現在,這兩個人在微軟工作,他們比在Mandiant時可以看到更多黑客攻擊活動的數據。

Carmakal只是告訴他們最基本的信息,他想獲得幫助,以確定Mandiant發現的一些活動。這兩家公司的員工經常在調查方面交流情報,因此Glyer并沒有多想這個請求。那天晚上,他花了幾個小時研究Carmakal發給他的數據,然后請Carr接替他。Carr是一個夜貓子,所以他們經常一起合作,Carr在早上將工作交回給Glyer。

這兩個人沒有看到任何熟悉的已知黑客組織的技戰術,但隨著他們追蹤線索,他們意識到Mandiant正在追蹤的是非常重要的目標。"每次你抽取一根線,會發現一條更長的線",Glyer回憶道。他們可以看到多個受害者正在與Carmakal要求他們跟蹤的黑客組織進行通信。對于每個受害者,攻擊者都會建立一個專用的命令控制服務器,并給該機器一個名字,這部分模仿了受害者網絡上真實系統的名稱,以避免引起懷疑。當Glyer和Carr看到這些名稱列表時,他們意識到可以使用它來識別新的受害者。在這個過程中,他們發現了Carmakal沒有向他們透露的東西,Mandiant自身已被黑客攻擊。

這是一個“天哪”時刻,微軟威脅情報負責人John Lambert回憶道。攻擊者不僅僅是想竊取數據,他們還在對抗他們最大的敵人之一,進行反情報活動。“當客戶遇到安全事件時,誰是他們最經常聯系的人?”,他說。“是Mandiant。”

隨著Carr和Glyer關聯了更多的線索,他們意識到曾在幾個月前未解決的入侵事件中看到了這次黑客攻擊的跡象。越來越多的證據表明,黑客們在隱藏他們的行蹤方面表現出卓越的技能和謹慎,這讓他們想起了某個熟悉的APT組織。

搜尋

在Mandiant公司內部,員工們正拼命想辦法解決黑客盜走的用于暴露客戶防御漏洞的紅隊工具問題。他們擔心入侵者會將這些產品用于攻擊Mandiant的客戶或在暗網上進行分發,因此Mandiant成立了一個響應團隊,著手制定一種方案來檢測這些工具在野外的使用情況。同時,Runnels的團隊也在加緊研究黑客到底是如何隱蔽地侵入公司系統的。

由于疫情的緣故,Mandiant的團隊在家里工作,因此他們每天連接著會議電話,持續了18個小時,一邊梳理日志和系統,一邊繪制黑客走過的每一個步驟。隨著時間的推移,他們逐漸熟悉了彼此的生活節奏,背景中孩子和伴侶的聲音,Runnels腳邊沉睡的斗牛犬輕微的鼾聲。這項工作如此消耗精力,以至于有一次,Runnels在淋浴時接到了Mandiant一名高管的電話。

Runnels和Scales每天向Mandia匯報。每次CEO都問同樣的問題:黑客是如何入侵的?但調查人員沒有答案。

在12月8日,當檢測工具準備好并且該公司感覺已經獲得了足夠有關入侵事件的信息可以公開時,Mandiant公司打破沉默,發布了一份重磅聲明,揭示其已遭到黑客攻擊。聲明內容簡潔:技術高超的黑客竊取了該公司的一些安全工具,但其中許多已經是公開的,并且沒有證據表明攻擊者使用了這些工具。首席技術官Carmakal擔心客戶會失去對公司的信心。他也擔心同事們會對這個消息作何反應。“員工們會感到尷尬嗎?”, 他想知道,“人們還想不想繼續成為這個團隊的一員?”

Mandiant公司并沒有透露入侵者是如何進入公司網絡的,或者他們在公司網絡中停留了多長時間。該公司拒絕評論。這些省略造成了這次入侵事件是孤立事件而沒有其他受害者的印象,人們開始懷疑該公司是否犯了基本的安全錯誤導致被攻擊。“我們說我們被頂尖對手攻破了,” Carmakal說,這是每個受害者都會聲稱的情況:“在沒有調查清楚之前,我們還不能提供證據”。

Mandiant公司并沒有清楚地說明它是在何時第一次發現了導致入侵源頭的線索。Runnels的團隊提出了一連串的假設,并花費數周時間追蹤每一個線索,但最終什么都沒有找到。當他們在流量日志中發現一個重要線索時,他們幾乎已經失去了希望:數月前,Mandiant的一臺服務器曾與互聯網上的一個神秘系統短暫通信過。而那臺服務器正在運行SolarWinds的軟件。

SolarWinds研發了數十個程序,供IT管理員監控和管理他們的網絡,幫助他們同時配置和打補丁大量的系統,跟蹤服務器和應用程序的性能,以及分析流量。Mandiant正在使用該公司最受歡迎的軟件之一,名為Orion的軟件套件。這個軟件只應該偶爾與SolarWinds的網絡通信以獲取更新,但實際上它正在與一個未知的系統通信,很可能是黑客的命令控制服務器。

早在6月份,Mandiant就被召喚來協助美國司法部調查一臺運行SolarWinds軟件的服務器入侵事件。為什么全球頂尖安全公司之一的“熟悉已知攻擊模式”的專家們似乎沒有意識到這兩個案件之間的相似性,這是SolarWinds安全事件仍然存在的一個謎團。很可能Runnels所選的幾個人沒有參與司法案件的工作,內部保密措施也防止他們發現這種聯系。(Mandiant拒絕置評)

Runnels的團隊懷疑入侵者已在Mandiant服務器上安裝了后門,他們委派團隊中的技術總監Willi Ballenthin和其他兩名成員來尋找它。他面臨的任務并不簡單。Orion軟件套件由超過18000個文件和14 GB的代碼和數據組成。Ballenthin認為,要找到造成可疑流量的惡意組件就像在沒有讀過《白鯨》這本書的情況下在其中查找特定句子一樣困難。

然而,他們只花了24小時就找到了一直在尋找的那個段落:“一個看似負責惡意流量的某個文件”。Carmakal認為他們是在12月11日找到的它。

這個文件是一個.dll動態鏈接庫,也是其他程序共享的代碼組件。這個.dll文件非常大,包含約46000行代碼,執行了4000多個合法的操作,并且在他們分析了一個小時后,發現它還執行了一個非法的操作。

這個.dll的主要工作是告訴SolarWinds有關客戶Orion軟件使用情況的信息。但黑客嵌入了惡意代碼,使其將受害者網絡的情報傳輸到他們的命令控制服務器。Ballenthin將這個惡意代碼稱為“Sunburst”,這是對SolarWinds的一種玩弄。他們對這個發現感到非常興奮。但現在他們必須弄清楚入侵者是如何將它偷偷嵌入到Orion軟件的.dll中的。

這遠非易事。Orion的.dll文件是用SolarWinds數字證書簽名的,這個數字證書驗證該文件是合法的公司代碼。一個可能性是攻擊者竊取了數字證書,創建了一個后門版本的Orion文件,簽名該文件以使其看起來是正常的,然后安裝了惡意的.dll文件在Mandiant的服務器上。或者更令人擔憂的是,他們可能已經入侵了SolarWinds的網絡,在SolarWinds編譯(將代碼轉換為軟件)并簽名之前,修改了合法的Orion.dll源代碼。第二種情況似乎太不切實際,以至于Mandiant的團隊并沒有真正考慮它,直到一名調查員從SolarWinds網站上下載了一個Orion軟件更新,發現其中有相同的后門。

這個發現的含義是驚人的。Orion軟件套件有大約33000個客戶,其中一些客戶從3月份開始就收到了被黑客篡改過的軟件更新。這意味著一些客戶可能已經被攻擊者入侵了八個月。Mandiant團隊面臨著軟件供應鏈攻擊的典型案例,對可信軟件在其源頭進行的惡意修改。攻擊者這一舉動可以感染數千臺機器,甚至可能是數百萬臺。

2017年,黑客破壞了軟件供應鏈,通過入侵計算機安全清理工具CCleaner向超過200萬用戶傳遞惡意軟件。同年,黑客在軟件更新中傳播了惡意NotPetya蠕蟲到烏克蘭的TurboTax等軟件中,然后蔓延到全球。不久之后,黑客也曾使用軟件更新向數千名華碩客戶植入后門。即使在調查的早期階段,Mandiant團隊就已經能夠判斷這些攻擊遠遠無法與SolarWinds攻擊相媲美。

調查

2020年12月12日是一個星期六的早晨,Mandia打電話給SolarWinds的總裁兼首席執行官凱文·湯普森。這位德克薩斯州公司的14年資深員工將在月底卸任CEO。Mandia要告訴他的消息是:Orion軟件已被感染。這是一個結束他任期的糟糕方式。“我們將在24小時內公開這個消息,” Mandia說。他承諾給SolarWinds一個先發布公告的機會,但時間表是不可協商的。Mandia沒有提到的是他自己也面臨外部壓力:一名記者已經得到了有關后門的消息,并聯系了他的公司以確認它。Mandia預計這個故事將在周日晚上爆料,他想先搶占先機。

湯普森開始撥打電話,其中之一是致電SolarWinds安全架構主管蒂姆·布朗。布朗及其團隊很快確認了Sunburst后門存在于Orion軟件更新中,并驚恐地發現自2020年春季以來已向多達18,000名客戶提供了該軟件更新(并非每個Orion用戶都下載了該更新)。湯普森和其他人在周六大部分時間都在緊急組建響應團隊,負責處理他們面臨的技術、法律和公關挑戰。他們還致電公司的外部法律顧問DLA Piper,以監督調查此次數據泄露事件。DLA Piper律師事務所的律師、了解計算機取證的前檢察官羅恩·普萊斯科在晚上10點左右接到電話時,正在后院與朋友聚會。

普萊斯科徑直走到他的家庭辦公室,那里擺放著白板,他開始草擬一項計劃。他設置了一個20小時的定時器,對Mandia給出的事件披露期限感到不滿。一天時間根本不足以為受影響的客戶做好準備。他擔心,一旦SolarWinds公開此事,攻擊者可能會在任何人驅逐他們之前,對客戶的網絡進行破壞。

讓法律團隊負責數據泄露調查的做法是具有爭議的。這種做法可以將案件置于律師-客戶特權之下,從而幫助公司抵御監管調查,并在訴訟中對發現請求進行抗辯。普萊斯科表示,SolarWinds從一開始就致力于透明度,發布了有關此事件的所有信息。(在采訪中,公司大多數情況下都是坦率的,但在法律顧問的建議或政府的要求下,Mandiant比SolarWinds更多地隱瞞了一些答案。此外,SolarWinds最近與股東就此次數據泄露達成了集體訴訟和解,但仍面臨證券交易委員會的可能執行行動,這使得公司在事件上表現得沒有原本那么開放)

除了DLA Piper律師事務所,SolarWinds還聘請了安全公司 CrowdStrike,普萊斯科得知后,他想要他的老朋友亞當·梅耶斯參與此案。兩人認識了幾十年,他們曾一起為一家國防承包商進行安全響應。梅耶斯現在是CrowdStrike的威脅情報團隊負責人,很少參與調查工作。但當普萊斯科在凌晨1點給他發短信說“我需要你的幫助”時,他毫不猶豫地加入了這個團隊。

那個星期天早晨晚些時候,梅耶斯加入了與Mandiant的電話會議。會議中有一名微軟員工,告訴大家在某些情況下,黑客正在系統地入侵微軟Office 365電子郵件賬戶和Azure云賬戶。黑客還能夠繞過多因素身份認證。每聽到一個細節,梅耶斯就意識到數據泄露的范圍和復雜程度在不斷擴大。像其他人一樣,他也懷疑是某APT組織黑客所為。

電話會議結束后,梅耶斯回到家里的客廳。Mandiant向他發送了Sunburst代碼,即包含后門的.dll文件部分,于是他彎下腰來,在筆記本電腦上開始分析它。接下來的六個星期里,他一直保持彎著身子的姿勢,對代碼進行逐一分析。

后門

SolarWinds的安全架構主管蒂姆·布朗表示,在最初的幾天里,震驚、不信任和混亂占據了SolarWinds。數十名員工涌入了他們數月未曾拜訪的奧斯汀辦公室,設立了緊急戰斗會議室。黑客已經入侵了71個SolarWinds的電子郵件賬戶,很可能是為了監視通信,看是否有任何跡象表明他們被發現了。因此,在最初的幾天里,團隊們只能通過電話和外部賬戶進行溝通,直到CrowdStrike批準他們再次使用公司電子郵件。

布朗和他的員工必須找出他們未能阻止或檢測到黑客攻擊的原因。布朗知道,無論他們發現了什么,都可能會讓他失去工作。

團隊的首要任務之一是收集可能揭示黑客活動的數據和日志。他們很快發現,他們需要的一些日志并不存在,SolarWinds無法追蹤所有內容,并且一些日志已被攻擊者刪除或隨著時間的推移被新數據覆蓋。他們還想查看公司近100個其他產品是否受到了攻擊。(他們只找到了Orion受到攻擊的證據)

大約在周日上午中午時分,有關黑客攻擊的消息開始泄露。路透社報道稱,襲擊Mandiant的人還入侵了財政部。然后在東部時間下午5點左右,華盛頓郵報記者艾倫·納卡什瑪發推文稱,據信SolarWinds的軟件是Mandiant遭受攻擊的源頭。她補充說,商務部也受到了攻擊。這場攻擊的嚴重程度正在逐分鐘加劇,但是SolarWinds還需要幾個小時才能發布公告。該公司對每個細節都異常關注,一份提交給證券交易委員會的文件要被律師嚴密審核,以至于SolarWinds CEO湯普森(Thompson)曾開玩笑說,加上一個逗號就要花費2萬美元。

那天晚上大約8:30,SolarWinds公司終于發布了一篇博客文章,宣布其Orion軟件被入侵,并向客戶發送了初步修復方案。接著,Mandiant和微軟分別發布了關于后門和黑客在感染網絡后的活動的報告。奇怪的是,Mandiant沒有將自己標識為Orion的受害者,也沒有解釋它是如何首次發現后門的。閱讀Mandiant的報告,你永遠不會知道Orion的后門與其自己五天前宣布的被入侵有任何關系。

周一早上,來自記者、聯邦議員、客戶以及美國國內外政府機構(包括當選總統喬·拜登的過渡團隊)的電話開始不斷涌入SolarWinds。公司各個部門的員工都被調動起來回答這些電話,但隊列仍然增長到超過19,000個電話。

美國網絡安全與基礎設施安全局(CISA)想知道是否有研究新冠疫苗的實驗室受到攻擊。外國政府想知道其轄區內的受害者清單。電力和能源行業組織想知道核設施是否遭到攻擊。

各個機構都急于了解他們的網絡是否使用了Orion軟件,但很多人并不確定。美國網絡安全與基礎設施安全局(CISA)向聯邦機構發布了一項緊急指令,要求他們斷開SolarWinds服務器與互聯網的連接,并暫停安裝任何旨在禁用后門的補丁,直到該安全機構批準為止。該機構指出,他們面對的是一種“有耐心、資源充足且專注”的對手,將其從網絡中清除將是“非常復雜和具有挑戰性的”。根據了解政府回應的消息來源稱,許多遭受攻擊的聯邦機構在記錄網絡活動方面非常松懈,這實際上為黑客提供了掩護。該消息來源稱,政府“無法確定黑客是如何入侵和在網絡上走了多遠”,而且“非常難以確定他們獲取了什么信息”。

值得注意的是,如果受害者的Orion服務器未連接到互聯網,Sunburst后門對黑客將無用。幸運的是,出于安全考慮,大多數客戶并沒有連接它們,據SolarWinds估計,只有20%到30%的Orion服務器在線。將它們連接到互聯網的原因之一是將分析數據發送給SolarWinds或獲取軟件更新。按照標準做法,客戶應該將服務器配置為只與SolarWinds通信,但許多受害者沒有這樣做,包括Mandiant和Microsoft。根據時任美國網絡安全與基礎設施安全局負責人克里斯·克雷布斯的說法,美國國土安全部和其他政府機構甚至沒有將它們放在防火墻后面隔離。SolarWinds的安全主管布朗指出,黑客很可能事先就知道哪些服務器被錯誤配置了。

但事件很快就變得清晰,盡管攻擊者感染了成千上萬臺服務器,但他們只深入了其中一小部分網絡,大約100個。主要目標似乎是網絡間諜活動。

攻擊者小心地處理他們的目標。一旦Sunburst后門感染了受害者的Orion服務器,它就會保持不活動狀態12至14天以避免被發現。只有在此之后,它才會開始將有關受感染系統的信息發送到攻擊者的命令控制服務器。如果攻擊者對受感染的受害者不感興趣,他們可以禁用Sunburst并繼續前進。但是,如果他們看到了喜歡的東西,他們會安裝第二個后門,后來被稱為Teardrop。從那時起,他們使用Teardrop而不是Sunburst。SolarWinds軟件的控制對攻擊者來說是很珍貴,他們用來嵌入后門的技術也是獨特的,他們可能想在未來再次使用它。但是,他們越多次使用Sunburst后門,就越冒著暴露他們已經入侵SolarWinds的風險。

通過使用Teardrop,黑客竊取了賬戶憑據以獲得訪問更敏感的系統和電子郵件的權限。受到Teardrop攻擊的100多個受害者中,許多是先進技術公司,例如提供云安全電子郵件系統的Mimecast或殺毒軟件公司 MalwareBytes。其他受害者包括政府機構、國防承包商以及從事國家安全問題研究的智庫。入侵者甚至訪問了微軟的源代碼,但微軟表示他們沒有對源代碼進行修改。

非議

受害者可能犯了一些錯誤,但沒有人忘記漏洞的起源。人們對SolarWinds 的憤怒迅速升級。一位前員工向記者聲稱,他在2017年警告過 SolarWinds 的高管,稱他們對安全問題的疏忽不可避免地導致了漏洞。一位研究人員透露,在2018年,有人魯莽地在一個公共的 GitHub 賬戶中發布了一個SolarWinds內部網頁的密碼,該網頁是用于存儲SolarWinds軟件更新的臨時頁面。研究人員稱,惡意行為者可以使用該密碼將惡意文件上傳到更新頁面(盡管這不會導致Orion軟件本身被入侵,并且SolarWinds表示,這個密碼錯誤并非真正的威脅)。更糟糕的是,該公司的兩家主要投資者,擁有約75% SolarWinds股份并持有六個董事會席位的公司,在漏洞消息公布的前六天即12月7日出售了3.15億美元的股票,這引發了美國證券交易委員會的調查,以確定他們是否提前知道這次的漏洞。

政府官員威脅要取消與SolarWinds的合同;立法者正在討論將該公司的高管召集到聽證會上。該公司聘請了CISA的前負責人克里斯·克雷布斯,他幾周前被唐納德·特朗普總統解雇,以幫助應對與政府的交流。

與此同時,布朗和他的安全團隊面臨著大量的工作。被污染的Orion軟件是用該公司的數字證書簽名的,現在他們必須使其無效。但是,同一證書也被用于簽署了公司的許多其他軟件產品。因此,工程師們必須重新編譯每個受影響的產品的源代碼,并用新的證書簽署這些新程序。

但他們仍然不知道Orion中的惡意代碼來自何方。惡意代碼可能潛伏在他們的服務器上,并且可以嵌入任何正在編譯的程序中的后門。因此,他們放棄了舊的編譯過程,采用了新的編譯過程,以便檢查已完成的程序是否包含任何未經授權的代碼。布朗表示,他們在如此大的壓力下,將重新編譯的程序交付給了客戶,他在三周內減去了25磅的體重。

在布朗的團隊重建公司產品和CrowdStrike試圖找出黑客如何進入 SolarWinds的網絡時,SolarWinds還聘請了一家帶有計算機取證部門的會計師事務所KPMG(畢馬威),來解決黑客如何將Sunburst放入Orion的 .dll 文件中的謎團。擁有20多年數字取證經驗的大衛·考恩(David Cowen)領導了KPMG的團隊。

SolarWinds用來構建其軟件的基礎設施是龐大的,考恩和他的團隊與SolarWinds的工程師一起在假期期間努力解決這個謎題。最終,在1月5日,他打電話給DLA Piper律師事務所的普萊斯科(Plesco)律師。一個SolarWinds工程師發現了一些重要的東西:大約一年前曾活躍過的一個舊虛擬機的遺物。這個虛擬機是一組軟件應用程序,可以取代物理計算機,它曾經在2020年用于構建Orion軟件。這是他們所需要的關鍵拼圖。

數字調查取證通常是一個碰運氣的事。如果自入侵開始以來時間過長,黑客活動的痕跡可能會消失。但有時數字取證專家的運氣很好,一些應該消失的證據仍然留存了下來。

為了構建Orion程序,SolarWinds使用了一個名為TeamCity的軟件構建管理工具,它像管弦樂指揮一樣將源代碼轉換為軟件。TeamCity會啟動虛擬機(在這種情況下大約有100個)來完成它的工作。通常,虛擬機是短暫存在的,只存在于編譯軟件所需的時間內。但是,如果構建過程的某個部分因某種原因失敗,TeamCity會創建一個“內存轉儲”快照在發生故障的虛擬機中。該快照包含故障發生時虛擬機的所有內容。這正是在2020年2月的軟件構建中發生的事情。通常,SolarWinds工程師會在后續的清理過程中刪除這些快照。但由于某種原因,他們沒有刪除這個快照。如果不是因為它不可思議的存在,Cowen說,“我們將一無所獲”。

在快照中,調查人員發現了一份存在于虛擬機中的惡意文件。調查人員稱其為“Sunspot”。這個文件有3500行代碼,但這些代碼成為了了解一切的關鍵。

大約是在1月5日晚上9點左右,科文將文件發送給了CrowdStrike的邁耶斯。CrowdStrike團隊與科文和普萊斯科進行了Zoom視頻通話,邁耶斯將Sunspot文件放入反編譯器,并共享了他的屏幕。當代碼滾動下來,它的奧秘慢慢被揭示時,每個人都變得安靜了。這個微小的文件,本應該消失不見,卻負責將后門注入到Orion代碼中,并允許黑客繞過美國一些保護最完善的網絡安全防御。

現在,調查人員可以追蹤與Sunspot相關的任何活動。他們發現黑客在2月19日或20日將其植入了軟件構建服務器。它一直潛伏在那里,直到3月份,當SolarWinds的開發人員通過TeamCity開始構建Orion軟件更新并創建了一組虛擬機時。黑客不知道哪個虛擬機將編譯Orion .dll代碼,因此設計了一個工具將Sunspot部署到每個虛擬機中。

此時,黑客攻擊的美妙和簡潔真正顯露出來。一旦.dll文件出現在虛擬機上,Sunspot就會快速自動地將該合法文件重命名,并將其原始名稱賦予黑客的惡意.dll副本。后者幾乎是合法文件的精確復制品,除了它包含Sunburst。構建系統隨后獲取了黑客的.dll文件并將其編譯到Orion軟件更新中。整個操作只需要幾秒鐘。

一旦編譯了惡意.dll文件,Sunspot就會將原始名稱恢復到合法的Orion文件上,然后從所有虛擬機中刪除自身。然而,它在構建服務器上保留了幾個月,以便在下兩次構建Orion時重復這個過程。但是在6月4日,黑客突然關閉了他們操作的這個部分,從構建服務器中刪除了Sunspot并抹掉了他們的許多痕跡。

Cowen、Meyers和其他人不禁停下來欣賞這種技藝。他們從未見過軟件構建過程被破壞的情況。Plesco稱攻擊是“簡單純粹優雅”的。但接著他們意識到了另一件事情:幾乎世界上所有其他的軟件制造商都是脆弱的。很少有內置防御措施來防止這種類型的攻擊。就他們所知,黑客可能已經滲透了其他流行的軟件產品。“這是我們所有人都感到恐懼的時刻”,Plesco說。

政府

第二天,也就是1月6日,國會山發生暴動的同一天,Plesco和Cowen 與FBI進行了電話會議,向他們介紹了令人心悸的發現。Plesco說,反應是明顯的。“如果你能感覺到好像有下巴的掉落聲,我想那就是正在發生的事情。”

一天后,他們向NSA進行了介紹。一開始,視頻通話中只有兩個來自該機構的人,他們的身份被隱藏,只有電話號碼。但是,隨著調查人員傳達了Sunspot是如何破壞Orion的構建過程,Plesco說,屏幕上出現了十多個電話號碼,因為他們所發現的相關內容在NSA中擴散開來。

但NSA即將遭受另一個打擊。幾天后,該機構的成員與國土安全部和司法部的50到100名工作人員舉行了一次會議,討論SolarWinds黑客攻擊事件。會議上的人們對一件事感到困惑:“為什么當事情一直進展順利時,攻擊者突然于6月4日將Sunspot從構建環境中移除?”。

FBI一位參會者的回答震驚了所有人。

這位男子很平靜地透露,在2020年春季,該機構的人員發現了一些來自運行Orion的服務器的異常流量,并聯系了SolarWinds討論此事。這位男子猜測,當時正在監視SolarWinds電子郵件賬戶的攻擊者感受到了問題的嚴重性,并刪除了Sunspot,因為他們擔心該公司即將發現它。

據一位電話會議參與者透露,NSA和CISA的來電者突然變得憤怒,因為他們第一次得知司法部幾個月前就已經發現了黑客攻擊。這位與會者回憶說,那位FBI的人說得好像沒什么大不了似的。司法部告訴WIRED,已經早就通知了CISA發生的攻擊事件,但至少在電話會議上,一些CISA的人似乎對在場的其他人半年之前,司法部就已經接近發現攻擊真相一事而感到驚訝。NSA的一名官員告訴WIRED,該機構確實“感到沮喪”,得知了在1月份通話中通報了攻擊事件。對于那些不知道司法部遭遇黑客攻擊的與會者和其他人來說,這尤其令人驚訝。因為據消息人士透露,在入侵后的幾個月里,人們一直在密閉的門后“驚恐萬狀”,感覺到一場重大的外國間諜行動正在進行中;如果各個機構之間的溝通良好,可能會幫助更早地發現它。

擁有司法調查知識的人說,司法部以及微軟和Mandiant公司推斷,攻擊者感染司法部的服務器是孤立的攻擊事件。而在6月和7月的調查期間,Mandiant是不知不覺地下載并安裝了被污染的Orion軟件版本到自己的網絡中。(CISA拒絕對此事發表評論)

黑客

在2021年1月發現Sunspot代碼后,調查工作被推動到了一個新的高度。了解攻擊者何時在構建服務器上投放了Sunspot代碼,使梅耶斯和他的團隊能夠從那個時間點開始追蹤攻擊者的活動,鞏固了梅耶斯對此次攻擊的直覺。

他們在2015年攻擊了美國民主黨全國委員會。但是,他們往往會表現得很嘈雜和咄咄逼人,公開泄露了從民主黨全國委員會和希拉里·克林頓總統競選團隊竊取的信息,而這些黑客則更為靈巧和低調。不同的安全公司給這個組織起了不同的名字(如APT29、Cozy Bear、The Dukes),攻擊者以在網絡中潛伏數月或數年而不被發現而出名。Glyer表示,這個組織在2014年至2016年間非常活躍,但隨后似乎消失了。現在他明白,他們利用這段時間重新制定了策略并開發了新技術,其中一些技術被用于SolarWinds攻擊中。

調查人員發現,入侵者最初是在2019年1月30日使用了一名SolarWinds員工的VPN賬戶,比Orion代碼被攻擊的時間早了整整一年。第二天,他們返回并竊取了129個SolarWinds各種軟件產品的源代碼倉庫,并獲取了客戶信息,可能是為了查看哪些用戶使用了哪些產品。Plesco表示,他們“知道去哪里,知道自己在做什么”。

黑客很可能通過研究源代碼和客戶數據來選擇他們的目標。Orion是完美的選擇。作為SolarWinds產品的王冠明珠,它約占公司收入的45%,并在客戶網絡中占據了特權位置,它與許多其他服務器連接和通信。黑客可以劫持這些連接,跳到其他系統而不引起懷疑。

一旦他們獲得了源代碼,黑客就從SolarWinds網絡中消失了,直到3月12日,他們返回并訪問了軟件構建環境。然后他們悄悄消失了六個月,在此期間,他們可能搭建了軟件構建環境的副本,以設計和實踐他們的攻擊。因為當他們于2019年9月4日返回時,他們的行動顯示出專業技能。構建環境非常復雜,以至于新招聘的工程師可能需要數月才能熟練掌握它,但黑客卻非常靈活地操作它。他們還非常熟悉Orion代碼,以至于他們創建的后門.dll文件在風格上與合法的SolarWinds文件無法區分。他們甚至改進了它的代碼,使它更加清晰高效。他們的工作非常出色,以至于調查人員懷疑是否有內部人員幫助了黑客,盡管他們從未找到證據證明這一點。

黑客們在回歸不久之后,將無害的測試代碼注入了Orion軟件更新中,目的只是為了測試他們是否能夠完成操作并不被注意。然后他們坐下來等待。(SolarWinds計劃在大約五個月后發布其下一個Orion軟件更新)在此期間,他們監視了關鍵高管和安全人員的電子郵件帳戶,以尋找任何跡象表明他們已經被發現。然后,在2020年2月,他們將Sunspot部署到了目標位置。

在深入調查時,入侵者在11月26日最后一次登錄SolarWinds的VPN。黑客繼續監視SolarWinds的電子郵件帳戶,直到12月12日,也就是凱文·曼迪亞向凱文·湯普森報告后門的那一天。自他們入侵SolarWinds以來已經過去了將近兩年時間。

遺產

Volexity首席執行官STEVEN ADAIR表示,2019年他的團隊偶然在一個智囊團的網絡中發現了攻擊者,這純粹是運氣。當他們最終證實SolarWinds是入侵的源頭時,他們感到很自豪。但ADAIR不禁為自己早些時候沒有停止攻擊而感到遺憾。“我們離成功如此之近”,他說。

Mandiant的卡馬卡爾認為,如果黑客沒有入侵他的雇主,這個行動可能會在更長時間內不被發現。最終,他稱SolarWinds黑客攻擊活動為“一項代價高昂但成果微乎其微的行動”,至少在對Mandiant的影響方面是這樣。“我相信我們比黑客預期的更早發現了他們”,他說,“他們顯然對我們揭露這一點感到震驚……然后發現了SolarWinds的供應鏈攻擊”。

但考慮到公眾對更廣泛的黑客攻擊活動了解甚少,對于該行動成功與否的結論可能還為時過早。

美國政府對黑客在其網絡中所做的事情一直保持著相當沉默。新聞報道揭示了黑客竊取了電子郵件,但失去了多少信件或信件內容是什么從未被披露。黑客可能竊取了更多的內容。從瞄準國土安全部、能源部和司法部,他們可能合法地訪問高度敏感的信息,可能包括針對俄羅斯的制裁計劃的詳細信息、美國核設施和武器儲備、選舉系統的安全性和其他關鍵基礎設施的信息。從聯邦法院的電子案卷系統中,他們可能盜取了密封的文件,包括起訴書、竊聽令和其他不公開的材料。鑒于一位消息人士指出政府計算機的日志記錄缺陷,政府可能仍然沒有全面了解被竊取的數據。從技術公司和安全公司中,他們可能竊取了有關軟件漏洞的情報。

更令人擔憂的是:黑客關注的約100個實體中,還包括其他制造廣泛使用軟件產品的公司。其中任何一個都有可能成為另一次類似規模的供應鏈攻擊的載體,針對這些公司的客戶。但這些其他公司中很少有公司透露黑客在其網絡中做了什么,如果他們做了什么的話。為什么他們沒有像Mandiant和SolarWinds那樣公開披露?是為了保護他們的聲譽,還是政府要求他們為國家安全而保持沉默?Carmakal堅信,SolarWinds的黑客旨在破壞其他軟件,并且他最近在與媒體的通話中表示,他的團隊看到黑客在一些其他科技公司的源代碼和構建環境中到處探尋。

此外,微軟的John Lambert表示,根據攻擊者的技術手段,他懷疑SolarWinds行動并不是他們第一次進行的供應鏈攻擊。一些人甚至懷疑,SolarWinds本身是通過另一家公司受感染的軟件被攻破的。SolarWinds仍然不知道黑客是如何首次進入其網絡的,或者2019年1月是否是他們的第一次攻擊,因為該公司的日志不足以確定攻擊真相。

前CISA負責人克雷布斯譴責缺乏透明度。他說:“這不是黑客組織的一次性攻擊,這是一個更廣泛的全球監聽基礎設施和框架,而Orion平臺只是其中的一部分,肯定還有其他公司被牽涉其中”。然而,他也無法給出具體的情報。

克雷布斯為政府網絡遭到入侵事件負責,并承認此事件發生在他的任期內。他說:“在這件事發生時,我是CISA的負責人。很多掌握權力和責任的人都要承擔起沒有發現此事的重任”。他批評國土安全部和其他機構沒有將他們的Orion服務器放在防火墻后面隔離。但是,就檢測和阻止更廣泛的攻擊活動而言,他指出“CISA真的是最后的防線...許多其他層面都已經失敗了”。

政府已經試圖通過總統令、指南、倡議和其他增強安全的行動來解決另一次類似Orion攻擊的風險。但這些措施可能需要數年時間才能產生影響。2021年,拜登總統發布了一項行政命令,呼吁國土安全部設立一個網絡安全審查委員會,全面評估威脅國家安全的“網絡事件”。其首要任務是調查SolarWinds行動。但在2022年,該委員會將重點放在另一個主題上,其第二次調查也不會涉及SolarWinds。有人提出,政府希望避免對這次行動進行深入評估,因為這可能會揭示行業和政府在防止或更早檢測到攻擊方面的失敗。

“SolarWinds是美國歷史上對聯邦政府的最大入侵事件,然而聯邦政府竟然沒有提供任何出了什么問題的報告,這是不可原諒的,也是無法解釋的”,美國眾議員里奇·托雷斯(Ritchie Torres)說道。在2021年,他曾擔任眾議院國土安全委員會的副主席。

在最近的一次會議上,CISA和美國的網絡空間任務部隊(Cyber National Mission Force,網絡司令部的一個部門)公布了有關他們對此次攻擊事件響應的新細節。他們表示,在調查人員確認Mandiant的Orion服務器是該公司遭受攻擊的源頭之后,他們從Mandiant的服務器中獲得了詳細信息,使他們能夠追蹤攻擊者。這兩個政府團隊還意味著,他們甚至反向入侵了攻擊者的系統。調查人員能夠收集到攻擊者的18個惡意軟件樣本,這對于在感染的網絡中尋找攻擊者的存在非常有用。

CISA的網絡安全主管埃里克·戈德斯坦在與會者面前表示,這些團隊有信心已經完全清除了攻擊者對美國政府網絡的入侵。

然而,了解政府應對此次攻擊的消息人士表示,要想確信已經清除了入侵者幾乎是不可能的。該消息人士還表示,普遍的擔憂是黑客可能仍然隱藏在這些網絡中,等待利用這種訪問權限破壞美國的時機,并進一步加強他們的攻擊行動。

與此同時,軟件供應鏈攻擊變得越來越令人擔憂。最近的一份報告發現,在過去三年中,此類攻擊增長了超過700%。