《2023年全球云威脅報告》:90%的安全供應鏈實則并不安全
近日,云安全公司Sysdig發布了《2023年全球云威脅報告》,研究了瞄準垂直行業的針對性云攻擊,結果發現云攻擊者正在通過利用云服務和常見的錯誤配置,以復雜的方式發展他們的技術和工具包。更重要的是,云中的攻擊移動速度很快,偵察到威脅和造成嚴重破壞之間的間隔可能僅幾分鐘。
一、報告摘要
- 云自動化的武器化:云攻擊發生得很快,偵察和發現的速度更快。這些技術的自動化使攻擊者能夠立即發現目標系統中的漏洞。數據顯示,機會主義攻擊平均在2分鐘內就能找到公開暴露的憑據,而從憑證發現到攻擊啟動往往只需21分鐘。很多時候,發現警報往往為時已晚;
- 10分鐘結束戰斗:云攻擊者行動迅速,伺機而動,往往只需10分鐘就能發動攻擊,其中5分鐘是駐留時間。而根據Mandiant的數據,全球網絡攻擊平均“駐留時間”(攻擊者入侵網絡到入侵被檢測的時間)為16天;
- 90%的安全供應鏈并不夠安全:另外10%的高級供應鏈威脅對預防工具來說是不可見的。規避技術使惡意代碼能夠隱藏,直到映像被部署。
- 攻擊者隱藏在云中:攻擊者正在濫用云服務和策略,以充分利用云原生環境的復雜性。使用源混淆(source obfuscation)使它們更難被跟蹤。新技術使得基于IoC的防御失效,將藍隊推向先進的云威脅檢測;
- 65%的云攻擊針對電信和金融科技公司:電信和金融公司擁有成熟的高價值信息,提供了快速牟利的機會。
二、從零到管理:扭轉云的對抗力
確保安全配置是任何云安全程序的基礎。當鎖定帳戶訪問權限并減少攻擊面時,威脅參與者也會尋找新的漏洞來獲得初始訪問權限。
由于身份和訪問管理(IAM)是關鍵的云安全控制,攻擊者正專注于發展他們的技術,用于憑據訪問、特權升級和橫向移動。與此同時,防御者也在學習在“萬物皆代碼”的世界中操作,在這個世界中,為適當的訪問和特權編寫代碼時出現的語法錯誤可能成為通往成功的攔路石。
1.初始訪問
事實證明,威脅行為者正在不斷利用易受攻擊的應用程序,尋找云憑據,并將攻擊范圍擴展至云。
S3桶和其他類似的對象存儲選項是存儲秘密和密鑰的流行云服務。而威脅行為者正使用Espiderfoot、Linode和S3 Browser等工具持續掃描存儲桶,以求找到有用的錯誤配置。它們還會暴力破解實際組織可能使用的S3桶名,以期找到與目標公司相關的有價值信息。當相關資源被掃描或憑據泄露時,壞人和好人都會使用聊天機器人(Chatbot)來獲取通知。
2.信息收集
云環境中的發現策略是攻擊者殺傷鏈中最被低估的步驟之一。防御者傾向于把注意力集中在其他攻擊戰術上(比如防御逃避),但忘記了大多數復雜的攻擊都是從廣泛的發現活動開始的。
云環境中的發現活動是高度自動化的,幾乎在首次登錄后便會立即發生。查看許多攻擊活動的云事件日志會發現,大多數API調用間隔為毫秒,這是使用自動工具或腳本的明顯證據。
攻擊者還會每天或每小時持續執行一些小的周期性發現活動,以跟蹤潛在的受害帳戶并利用更改或錯誤配置。這一階段的攻擊并不微妙。它的特點是對許多端點的查詢快速連續,如下表所示。這種類型的活動表明攻擊者正在進行信息收集,并且應該觸發對帳戶的事件響應分析。
事件名稱 | 記錄數量 | 描述 |
ListSecrets | 4814 | 攻擊者可以列出Secrets Manager在AWS賬戶中存儲的秘密。 |
GetPolicy | 4720 | 攻擊者可以提取指定策略的信息,包括策略所依附的IAM用戶、組和角色的總數。 |
GetPolicyVersion | 4483 | 攻擊者可以檢索有關策略的指定版本的詳細信息,包括策略文檔。 |
ListGroupsForUser | 2517 | 使用此API,可以提取并列出指定IAM用戶所屬的IAM組。 |
ListUserPolicies | 2209 | 攻擊者可以列出用戶附加的策略。 |
ListAccessKeys | 1609 | 攻擊者可以提取與用戶相關的ccess key ID列表。 |
GetLoginProfile | 1578 | 攻擊者可以使用此API來了解用戶是否有權訪問AWS管理控制臺。 |
ListMFADevices | 1574 | 攻擊者可以列出多因素身份驗證(MFA)設備,以便了解哪些用戶可以作為攻擊目標。 |
ListUserTags | 1354 | 此API列出附加到指定IAM用戶的標簽,為攻擊者提供他們可以在攻擊路徑中使用的額外信息。 |
ListUsers | 1161 | 攻擊者可以使用此API枚舉和列出AWS帳戶內的所有用戶。 |
ListAttachedUserPolicies | 857 | 該API提取附加到用戶的策略。攻擊者可以枚舉用戶的特權,尋找可能的特權升級路徑。 |
ListObjectVersions | 635 | 該API返回bucket中所有版本對象的元數據。 |
GetCallerIdentity | 526 | 此API通常用作檢查獲得的憑據是否有效的首個操作。它提供了有關IAM用戶或角色的詳細信息,其憑據用于調用API。 |
ListStack | 415 | 通常在枚舉和信息收集階段使用,攻擊者可以使用此API來獲取狀態與指定的StackStatusFilter匹配的堆棧的匯總信息。 |
ListRolePolicies | 303 | 此API列出嵌入到指定IAM角色中的內聯策略的名稱。 |
3.數據收集
攻擊者對無服務器功能代碼和基礎設施即代碼(IaC)軟件(如CloudFormation和Terraform)尤為感興趣,因為這些文件通常包含憑據、秘密或其他敏感信息。這些資產可能在安全掃描中被忽視,因為它們相對模糊和新穎。防御者通常低估了只讀訪問的力量,但是這可能正是攻擊者所需要的。
研究人員觀察到的一個例子是,攻擊者調用了幾個API(如GenerateCredentialReport和GetCredentialReport)以便自動生成和下載包含帳戶中所有用戶及其相關狀態、密碼、訪問密鑰和MFA設備的憑據報告。對于從AWS賬戶中提取關于其他用戶的有價值信息時,這些API特別方便。
收集過程通常是自動化的。許多攻擊——從最初的訪問到實際行動——往往發生在10分鐘或更短的時間內,但一些更復雜的攻擊將需要更長的時間。
4.特權升級
眾所周知,人是網絡安全中最薄弱的環節,攻擊者也深知這一點,因此一直在尋找人為錯誤。在云環境中,攻擊者可以利用十分微小的錯誤來提升權限。在某些情況下,這些錯誤無法被云原生或第三方云安全態勢管理(CSPM)安全評估工具檢測到。
想要記住云安全提供商(CSP)何時區分大小寫,何時不區分可能很困難。以AWS中的策略資源為例,其中有一些字段(如Action)不區分大小寫。而其他字段(比如Resource)則區分。在SCARLETEEL 2.0的操作中,攻擊者便是濫用了云環境中不一致的命名約定。下述代碼就是將該策略應用于具有已定義用戶名的受限資源子集的示例。
{
“Sid”: “VisualEditor2”,
“Effect”: “Deny”,
“Action”: [
“iam:CreateAccessKey”
],
“Resource”: [
“arn:aws:iam::078657857355:role/*”,
“arn:aws:iam::078657857355:user/*admin*”
]
}
在這次攻擊中,受害者對所有管理員帳戶使用了特定的命名約定:“adminJane”、“adminJohn”等等。雖然,根據采用的慣例正確地創建了將特定操作限制為管理員用戶名的策略,但其中一個帳戶無意中命名不一致。它轉而使用大寫的“A”來表示“Admin”,比如“AdminJoe”。攻擊者能夠繞過這個限制性策略并為AdminJoe創建訪問密鑰,因為該名稱不屬于標準命名約定。
5.橫向移動
云環境中的橫向移動通常與攻擊者從一個用戶的帳戶移動到另一個用戶的帳戶有關。然而,研究人員已經目睹了攻擊者從企業云帳戶橫向移動到計算基礎設施。如果云中的服務器與之相連,這種類型的攻擊可以讓攻擊者轉向本地服務器。
在這起事件中,攻擊者利用一個名為SendSSHPublicKey的API來訪問EC2實例,如下圖所示。使用此API,攻擊者將自身提供的SecureShell(SSH)公鑰推送到指定的EC2實例,然后允許任何擁有相應私鑰的人通過SSH直接連接到系統。一旦進入,攻擊者就可以控制設備,然后進行下一步操作。
這種類型的橫向移動可能會給防守者帶來問題,因為它通常涉及跨越檢測邊界。例如,一旦攻擊者從AWS轉移到EC2,CloudTrail將不會提供有關攻擊者正在做什么的任何信息。當攻擊者從一個計算實例轉移到云端時,情況也是如此。防御者需要在運行時監控他們的云控制平面API(如CloudTrail)和他們的EC2工作負載,以便了解攻擊的全部范圍。
在獲得對云賬戶的控制權后,損失可能是一筆巨額賬單、數據被盜或被破壞,或者第三方(比如受害組織的客戶)受到損害等等。在涉及多種環境的情況下,時間至關重要。威脅檢測需要是實時的,不能在云或操作系統等邊界上停止。響應云環境中的事件需要對運行時工作負載和云的可見性。
6.攻擊者的目標
通過加密挖礦劫持資源仍然是最常見和最有利可圖的威脅行為者目標之一。在接管賬戶后,威脅行為者會迅速將資產貨幣化。攻擊者已經創建了許多高性能、昂貴的實例(例如,c5.metal或r5a.4xlarge)。在一個案例中,攻擊者試圖啟動40個實例。
攻擊者還會瞄準防御者難以察覺的現有資源。這里的動機并不純粹是利潤驅動的。攻擊者可以直接連接到EC2實例,并將其作為跳板對下一個目標發起攻擊,如上圖所示。
7.緩解措施
像AWS這樣的CSP和像GitHub這樣的存儲庫已經注意到泄露的秘密攻擊向量,并共同努力提供緩解措施。例如,AWS將掃描GitHub以查找任何AWS憑據,一旦有所發現,將向用戶附加隔離策略以限制潛在的損害。GitHub也開始檢查一些秘密格式的提交,并可以自動拒絕它們。這些解決方案有幫助,但我們永遠不能低估用戶為了方便而繞過保護措施的可能性。
為此,建議遵頊以下建議:
- 采用機密管理系統(Secrets management system)以減少憑據泄露的可能性。通過將密鑰和憑據保存在集中的位置,并提供一個API來動態檢索密鑰,這樣密鑰和憑據就不會無意中留在文件中。
- CSP為用戶和資源的身份驗證和授權模型提供了很大的靈活性。一個好的CSPM解決方案將提供可見性和解決方案選項,以及合規性,以加強云帳戶安全性。
- 運行時威脅檢測必須應用于云日志以及在計算資源中發生的活動。為了檢測復雜的攻擊,威脅檢測需要有一個完整的視圖,具有跨多個環境跟蹤威脅的能力。
三、攻擊者隱藏在云層中
以云為目標的攻擊者正在不斷改進他們的技術,以更隱蔽和聰明的方式繞過保護機制。網絡軍備競賽仍在繼續,越來越多的安全組織正在啟動云安全運營計劃。而CSP提供的過多服務無疑為攻擊者提供了許多不同的方式在云中開展攻擊。
1.防御逃避的VPC
在研究S3桶訪問時,Sysdig TRT識別了來自與內部基礎設施無關的私有IP地址的源IP地址。Hunters之前的研究表明,攻擊者可以使用AWS虛擬私有云(VPC)來偽造他們的IP地址。這種技術不再僅僅是一個研究課題;攻擊者目前正在使用它。到目前為止,研究人員還未在野看到這種混淆方法,不過,我們必須考慮到這種可能性。
受害者的CloudTrail日志包含偽造的IP,因此模糊了攻擊者的真實位置。這允許攻擊者繞過依賴于源IP地址的安全措施。當偽造的IP地址與內部網絡中使用的IP地址一致時,分析也會變得更加困難。
攻擊者可以在自己的AWS環境中創建具有任意私有IP CIDR塊的VPC,然后使用屬于該CIDR塊的IP地址創建EC2實例。為了欺騙它們的源IP,攻擊者只需要配置EC2實例,使用VPC端點連接到端點服務。這樣,在調用服務端點時,請求將來自VPC。
值得注意的是,屬于另一個AWS帳戶的用戶可以從他們的VPC發出類似的請求,而無需對受害者的帳戶進行任何初始訪問。這種先進的技術可以用來繞過依賴源IP地址的安全措施,并匿名化處理任何對可公開訪問的服務端點的請求。
2.用于特權升級的AWS CloudFormation
與CSP的交互主要通過API進行,這需要Secrets。而實際上Secrets很容易被放錯地方,正如我們在SCARLETEEL中看到的Terraform狀態文件。令牌或API密鑰最終出現在S3存儲桶或第三方存儲庫中是很常見的。
在另一次復雜的攻擊中,攻擊者的目標是AWS CloudFormation,即AWS的基礎設施代碼服務(IaC)。CloudFormation允許用戶通過將基礎設施視為代碼來建模、配置和管理AWS及第三方資源。CloudFormation不僅用于創建和管理資源。它還能夠在傳統機制之外操縱角色和策略。這使得它成為攻擊者濫用的理想特性。
盡管CloudFormation已經存在了十多年,但很少有關于它被用于公開攻擊的報道。直至2022年1月,一個名為“BreakingFormation”的相關漏洞曝光。研究人員發現,該攻擊分為以下權限升級步驟:
(1) 使用有效的AWS憑證,攻擊者獲得了對AWS云帳戶的初始訪問權限,并開始收集信息。
(2) 攻擊者能夠找到不同的特權升級路徑,并通過AssumeRole和加入不同的IAM用戶組來橫向移動。
(3) 一旦攻擊者被分配了角色,他們就可以訪問權限,這允許他們:
- 使用假設角色訪問額外的特權,以便完全控制AWS Lambda。
- 將受損的IAM用戶添加到一個新組中,并獲得CloudFormation服務的使用權限,該服務可以被濫用來創建資源或進行進一步的特權升級。
- 使用新的訪問權限進行更深入的信息收集活動。
在此案例中,攻擊者使用著名的虛擬專用網絡(VPN)服務CyberGhost來隱藏源IP,并使用AssumeRole API來獲得額外的權限,進一步通過殺傷鏈向主要目標發起攻擊。
有了新的額外功能,攻擊者重新啟動了云帳戶內的枚舉,尋找新的、有趣的信息。攻擊者加入的新組在CloudFormation中具有特權。攻擊者隨后調用API CreateStack,并試圖添加一個名為“EvilTemplate”的CloudFormation模板。CloudFormation被配置為允許攻擊者訪問它并嘗試運行惡意模板,但為了防止管理員訪問,它被賦予了有限的特權。
3.緩解建議
隨著云中的攻擊變得越來越復雜,僅僅依靠CSP提供的本地警報已經遠遠不夠。這些警報通常數量很少,更新也很差。使用完整的云威脅檢測系統(包括運行時分析),可以檢測高級威脅,并提供足夠的可見性,以便在成功攻擊發生時進行事件響應。
過多的和不正確的權限配置是導致許多涉及云的安全事件的原因。為了采用最小特權模型,建議實現一個云基礎設施和授權(CIEM)系統,以更好地理解和解決權限問題。
我們無法保護自己不了解的事物。考慮到資源的動態性,在云環境中尤為如此。涵蓋所有云資產的清單(包括Lambda函數和策略)以及相應的安全狀態將確保沒有未受保護的資產被部署,并允許組織更快速地識別系統環境。
四、90%安全供應鏈并不夠安全
軟件供應鏈攻擊仍然是一種流行的攻擊媒介,3CX桌面軟件事件是2023年最引人注目的事件之一。在此事件中,3CX受到軟件供應鏈攻擊的威脅,致使攻擊者可以獲得對其系統的初始訪問權限。
開源項目經常引起攻擊者的強烈興趣,因為它們被個人和公司廣泛使用。今年,研究人員將分析范圍擴展至各種存儲庫,以了解攻擊者究竟對什么感興趣。
1.云攻擊者瞄準工件存儲庫(Artifact Repositories)
在研究過程中,Sysdig TRT將有效的云憑據分發到十多個注冊中心、包存儲庫和公開的版本控制系統存儲庫中。研究人員監控的大多數活動來自公共包存儲庫和數據站點,如Pastebin、Python包索引(PyPI)、Go和helm,如下表所示。
結果顯示,PyPI存儲庫受到了攻擊者的更多關注,究其原因可能是最近的供應鏈攻擊和Python在AI中的普遍應用。在ChatGPT發布后,人工智能的受歡迎程度不斷飆升,攻擊者知道絕大多數人工智能開發者和用戶都沒有很好的安全意識。
另一個值得注意的目標是GitHub中的Helm charts。盡管GitHub在最近的攻擊后加強了安全措施,但威脅者并沒有放過這項服務。Helm是配置Kubernetes集群最流行的工具,目前大多數企業都是這樣部署容器的。Helm charts不僅可以包含有用的信息(比如憑據),而且獲得對Helm charts的訪問權限可以使攻擊者危及整個Kubernetes集群。
2.靜態分析遠遠不夠
隨著容器的不斷普及,它們成為了惡意代碼的理想交付工具。容器本質上是一個用于交付應用程序的包,其中內置了應用程序所需的一切。目前,許多組織關注容器中的漏洞,并試圖通過確保不部署易受攻擊的容器來降低風險。一些漏洞管理解決方案還包含防病毒功能,它將靜態掃描容器的內容。這些靜態漏洞管理方法只是容器安全的關鍵部分;它們還不足以確保容器是安全的。
為了說明為什么靜態分析和運行時分析的結合至關重要,我們在運行時分析了超過1.3萬個Docker Hub映像,以尋找高級威脅。Sysdig TRT將靜態分析數據與運行時分析相結合,發現超過10%的惡意映像完全無法被任何靜態分析工具或漏洞掃描儀檢測到,因為先進的規避技術使攻擊者能夠隱藏惡意代碼。
3.緩解建議
在軟件開發過程中采用“左移”。這個概念試圖在開發過程中盡可能早地植入安全檢查。像GitHub Actions這樣的工具可以在每次開發人員推送提交時運行自動檢查。在這些時候添加靜態和運行時安全性檢查將快速捕獲問題。
盡早并經常在構建管道中執行漏洞掃描,以確保不會無意中涉及過時包。使用工具檢測是否存在脆弱代碼,將防止開發人員被需要修復的漏洞所淹沒。
確保了解軟件的組成及其所有依賴項,即使它來自可信的來源。運行靜態和運行時分析,以確保軟件不會表現出惡意行為。避免來自不可信或不可靠來源的依賴項,或者將它們保存在本地,這樣就不可能進行更改。
五、結論與趨勢預測
由于CSP主要使用API與用戶和環境進行交互,因此泄露的憑據是組織應該關注的主要威脅向量。憑據最終落入攻擊者手中的方式有很多,包括糟糕的秘密管理、網絡釣魚和憑據填充。一旦攻擊者發現了憑據,他們就會迅速展開行動。
秘密管理(Secret management i)是防止這些攻擊的良好開端,但它只是安全等式的一部分。持續監控云帳戶和資源的惡意行為同樣至關重要,因為攻擊者總能找到一種方法來破壞帳戶。
考慮到云環境中安全性的復雜性,很容易在策略定義或其他任何地方犯一個簡單的錯誤,這可能導致整個帳戶的泄露。攻擊者正在充分利用這種復雜性,并隱藏在防御者使用的相同云應用程序和工具中。預防是非常困難的,因此高級狀態管理、資產庫存和云基礎設施授權管理(CIEM)程序都是必不可少的,以阻止攻擊者的任何入侵嘗試。
容器在部署和擴展使用云原生環境的應用程序方面越來越受歡迎。攻擊者知道容器是供應鏈攻擊的有效載體。組織開始在部署容器之前對其實施漏洞掃描和靜態惡意軟件分析;然而,這些措施還遠遠不夠,因為它們忽略了許多威脅。對容器進行運行時威脅檢測可以提供更有效的覆蓋,并檢測到原本可能被遺漏的惡意代碼。
雖然CSP和安全供應商都在不斷改進他們的安全產品,但我們預計違規行為將繼續增加。由CSP或使用其系統的公司提供的新服務正在頻繁面市,并且采用這些服務的設計往往都是快捷和易用的。攻擊者也將繼續更加努力和快速地工作,并充分利用新的云環境和服務來進行攻擊。
世界將繼續朝著“萬物皆代碼”(EaC)和使用容器部署應用程序的方向發展。這將導致攻擊者可利用的復雜性和錯誤進一步增加,而防御者往往很難跟上這一節奏。此外,對于防御者和攻擊者來說,供應鏈攻擊仍然是一個高優先級的問題,運行時分析將成為越來越普遍的防御手段。最后,盡管攻擊時間線可能不會比我們今年看到的更快,但攻擊者將繼續創新規避手段,并更多地自動化他們的技術。
原文鏈接:https://sysdig.com/content/c/pf-2023-global-cloud-threat-report?x=u_WFRi