偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

從脆弱性到勝利:捍衛(wèi)您的CI/CD管道

安全 應(yīng)用安全
大多數(shù)CI/CD管道是為了速度和易用性而構(gòu)建的,并不是固有地構(gòu)建的。您如何充分捍衛(wèi)您的管道?

自動化的持續(xù)集成/持續(xù)交付(CI/CD)流水線被用來加快開發(fā)速度。擁有可以觸發(fā)或預(yù)定的流水線,可自動接收代碼、合并代碼、構(gòu)建代碼、測試代碼并自動交付,這真是太棒了。然而,由于這些流水線通常需要訪問互聯(lián)網(wǎng)以下載依賴項(xiàng),并且需要訪問各種機(jī)密信息以上傳至生產(chǎn)環(huán)境,這意味著一旦這樣的流水線遭到入侵,攻擊者就有很多選擇來破壞您的操作、竊取信息或機(jī)密信息。

本文介紹的所有故事都涉及知名的CI/CD工具的違規(guī)事件。大多數(shù)公司依賴這些工具,這意味著與其他軟件供應(yīng)鏈攻擊一樣,所有惡意行為者只需攻擊一個目標(biāo),就可以獲得廣泛的影響范圍。

接下來,讓我們來看一下過去幾年中幾個突出的故事,展示了這種攻擊向量固有的漏洞。在文章結(jié)束時,我將確保提供一些建議來加固和保護(hù)您的流水線,無論您使用的是什么工具。

自動化的持續(xù)集成/持續(xù)交付(CI/CD)流水線被用來加快開發(fā)速度。自動觸發(fā)或預(yù)定的流水線能夠自動接收代碼、合并代碼、構(gòu)建代碼、測試代碼并自動交付。然而,這些流水線通常以速度和易用性為目標(biāo),并不一定會考慮到安全性。由于流水線通常需要訪問互聯(lián)網(wǎng)以下載依賴項(xiàng),并且需要訪問各種機(jī)密信息以上傳到生產(chǎn)環(huán)境,一旦流水線遭到入侵,攻擊者就有多種選擇來破壞您的操作、竊取信息或機(jī)密信息。

本文中介紹的所有故事都描述了著名CI/CD工具遭受的入侵事件。大多數(shù)公司依賴這些工具,這意味著與其他軟件供應(yīng)鏈攻擊一樣,惡意行為者只需攻擊單個目標(biāo)就能造成廣泛影響。

讓我們回顧一下過去幾年中幾個突出事件,展示了這種攻擊方式的固有漏洞。文章結(jié)尾,我將提供一些建議,以加強(qiáng)和保護(hù)您的流水線,無論您使用的是哪種工具。

CircleCI的入侵事件

在2023年1月,持續(xù)集成和交付平臺CircleCI公開披露了一起安全入侵事件,攻擊者成功未經(jīng)授權(quán)地訪問了公司的基礎(chǔ)設(shè)施。攻擊是由一封釣魚郵件發(fā)起的,欺騙了一名員工以分享他們的憑據(jù),攻擊者利用這些憑據(jù)訪問了公司的系統(tǒng)。該員工使用了雙重認(rèn)證,但攻擊者在員工登錄系統(tǒng)后抓取了一個會話Cookie,使他們能夠冒充該員工,并最終升級訪問了CircleCI的一部分生產(chǎn)系統(tǒng)。

攻擊者訪問了一些客戶數(shù)據(jù),包括姓名、郵箱地址和賬單信息。公司報告稱沒有訪問到任何代碼或知識產(chǎn)權(quán),并且沒有客戶報告到他們賬戶或數(shù)據(jù)的任何未經(jīng)授權(quán)的訪問。

CircleCI迅速做出了應(yīng)對,展開了調(diào)查,并與執(zhí)法部門和網(wǎng)絡(luò)安全專家合作,確定了攻擊的范圍,并修復(fù)了導(dǎo)致攻擊發(fā)生的漏洞。該公司還重置了所有員工和客戶的憑據(jù),并實(shí)施了其他安全措施,例如加強(qiáng)系統(tǒng)的監(jiān)控。

DevOps受到干擾:Argo CD的安全入侵事件

Argo CD是一款用于將應(yīng)用程序持續(xù)部署到Kubernetes集群的熱門開源工具。2022年2月,發(fā)現(xiàn)了Argo CD中的一個新漏洞,該漏洞允許未經(jīng)身份驗(yàn)證的用戶訪問由該工具管理的Kubernetes應(yīng)用程序的敏感信息。該漏洞是由Argo CD的API服務(wù)器配置錯誤引起的,該錯誤允許未經(jīng)授權(quán)的用戶執(zhí)行API請求并檢索諸如密鑰、配置和應(yīng)用程序元數(shù)據(jù)等信息。只要攻擊者有權(quán)限創(chuàng)建或更新應(yīng)用程序并知道或能夠猜測包含有效YAML的文件的完整路徑,他們就可以創(chuàng)建惡意的Helm圖表,并繼續(xù)在值中使用YAML文件,直到找到通常不可訪問的重要數(shù)據(jù)。

此漏洞被評定為CVSS分?jǐn)?shù)7.5(高危),影響著包括2.1.4版本在內(nèi)的Argo CD的所有版本。Argo CD在2.1.5版本中發(fā)布了針對該漏洞的補(bǔ)丁,建議用戶盡快升級到該版本。

此漏洞被認(rèn)為特別令人擔(dān)憂,因?yàn)锳rgo CD通常用于管理生產(chǎn)環(huán)境中的關(guān)鍵應(yīng)用程序和基礎(chǔ)架構(gòu)。敏感信息的泄漏可能允許攻擊者訪問敏感數(shù)據(jù)或采取其他惡意行動,從而影響應(yīng)用程序的可用性或安全性。

解開Codecov入侵的謎團(tuán):經(jīng)驗(yàn)教訓(xùn)

Codecov是一款用于跟蹤和分析代碼覆蓋率的工具,用于CI/CD流水線中,使開發(fā)人員能夠衡量和分析他們的測試的有效性。根據(jù)Codecov的安全更新所述:

“2021年4月1日星期四,我們得知有人未經(jīng)我們的許可,未經(jīng)授權(quán)地訪問了我們的Bash Uploader腳本,并進(jìn)行了修改。攻擊者之所以能夠獲得訪問權(quán)限,是因?yàn)镃odecov的Docker鏡像創(chuàng)建過程中存在的錯誤,導(dǎo)致攻擊者能夠提取修改我們的Bash Uploader腳本所需的憑證?!?/p>

Bash Uploader由客戶用于將他們的代碼覆蓋率報告上傳到Codecov平臺。使用這種訪問權(quán)限,攻擊者修改了Bash上傳腳本,添加了惡意代碼,該代碼可以在上傳過程中從用戶系統(tǒng)中收集環(huán)境變量、驗(yàn)證令牌和其他敏感數(shù)據(jù)。然后,這些數(shù)據(jù)被發(fā)送到攻擊者控制的遠(yuǎn)程服務(wù)器。

Codecov確認(rèn)該入侵事件影響了大約1%的客戶群體,其中包括技術(shù)、金融和醫(yī)療保健行業(yè)的重要公司。該公司確認(rèn),在入侵期間沒有更改任何客戶代碼或代碼覆蓋率報告,但用戶驗(yàn)證令牌和其他敏感信息可能已受到威脅。

Codecov立即采取行動刪除了惡意代碼,并提醒受影響的客戶重置其驗(yàn)證令牌并采取其他安全措施。該公司還展開了對這一事件的調(diào)查,并與執(zhí)法部門和網(wǎng)絡(luò)安全專家合作,確定了攻擊的來源。

如何保護(hù)您的流水線?

如上所述,CI/CD流水線是為了速度和自動化而構(gòu)建的,并不一定在設(shè)計(jì)時考慮到安全性。三家大型知名公司都遭受了某種類型的攻擊,可能導(dǎo)致客戶信息曝光,這表明您自己的流水線和數(shù)據(jù)的漏洞性。

無論您使用的是何種工具或CI/CD平臺,您可以采取一些措施來提高安全性并在惡意攻擊者成功訪問流水線或網(wǎng)絡(luò)時減少潛在的損害。

威脅建模:威脅建模是一種結(jié)構(gòu)化的方法,用于識別對系統(tǒng)或應(yīng)用程序可能構(gòu)成的安全威脅,并設(shè)計(jì)相應(yīng)的對策來減輕這些威脅。作為一種練習(xí),假設(shè)有人入侵了您的流水線。他們現(xiàn)在可以訪問哪些環(huán)境?他們可以看到和使用哪些密鑰?他們可以修改您的代碼嗎?影響測試嗎?從web上提取文件或運(yùn)行逆向shell嗎?即使您認(rèn)為已對流水線進(jìn)行了清理并正確分割了網(wǎng)絡(luò)訪問權(quán)限,勾起一下惡意行為的想象力,然后檢查一下,以便您了解最糟糕的情況。您可能會驚訝地發(fā)現(xiàn)您的流水線平臺或工具中隱藏著哪些在明顯情況下的開放密鑰和訪問選項(xiàng)。

網(wǎng)絡(luò)分割:網(wǎng)絡(luò)分割是將較大的網(wǎng)絡(luò)劃分為更小、更安全的子網(wǎng)絡(luò)或段的實(shí)踐,每個子網(wǎng)絡(luò)或段都有自己的安全控制和策略。網(wǎng)絡(luò)分割的目的是通過限制潛在安全入侵的范圍并將攻擊的潛在影響最小化來增加整體網(wǎng)絡(luò)的安全性。將網(wǎng)絡(luò)分割成較小的段限制了攻擊者的橫向移動,并降低了未經(jīng)授權(quán)的訪問或數(shù)據(jù)泄漏的風(fēng)險。

伴隨著釣魚攻擊日益普及,您的開發(fā)人員或其他員工可能成為此類騙局的受害者,畢竟我們都是人類。假設(shè)您的開發(fā)人員的憑據(jù)可能會被惡意行為者利用,這意味著您需要確保絕大多數(shù)開發(fā)人員不具備足夠的權(quán)限,使他們能夠單獨(dú)地竊取機(jī)密信息、向生產(chǎn)鏡像中加入惡意代碼、或者只需推送自己版本的生產(chǎn)代碼而無人可阻攔。確保每個人只具備完成工作所需的最低限度的權(quán)限是一項(xiàng)耗時的工作,讓每個人都擁有管理員權(quán)限并就此作罷是非常誘人的。不要被黑暗面所吸引 - 遵循最小權(quán)限和零信任原則。

監(jiān)控和警報:繼續(xù)上述內(nèi)容,即使對開發(fā)人員進(jìn)行了深入的訓(xùn)練,以提高他們防范網(wǎng)絡(luò)釣魚和其他社會工程攻擊的意識,安全入侵仍然可能發(fā)生。您并不知道何時或以何種方式發(fā)生入侵,但您應(yīng)該做好隨時發(fā)現(xiàn)的準(zhǔn)備。由于大多數(shù)流水線環(huán)境是臨時的,這意味著一旦工作完成,除非您自己創(chuàng)建這些跡象,否則不會留下爭論發(fā)生的證據(jù)。

確保對流水線中發(fā)生的所有事情進(jìn)行記錄,包括每次PR、合并、構(gòu)建和測試。確保用戶信息也被記錄下來,以便在需要時進(jìn)行審查。對配置文件或環(huán)境本身的任何更改也應(yīng)記錄下來。目標(biāo)是能夠?qū)θ肭诌M(jìn)行清晰的事后調(diào)查。事先確定哪些事件應(yīng)產(chǎn)生警報,并確保正確的人員接收到這些警報。注意不要洪水般地發(fā)送無用或錯誤的警報 - 這會導(dǎo)致人們因接收到無用或錯誤的警報而忽略它們,或在推遲處理時故意忽略警報。顯然,這些日志中不應(yīng)包含任何開放密鑰或密碼 - 這導(dǎo)致下一個重點(diǎn):

密鑰管理:確保使用某種密鑰管理工具。至少,這將使您能夠在發(fā)生入侵時更容易輪換密鑰和密碼。還應(yīng)該做一些工作,將在系統(tǒng)上進(jìn)行的任何記錄中的流數(shù)據(jù)和訪問密鑰屏蔽。任何未經(jīng)授權(quán)的人員都不應(yīng)該能夠訪問這些信息,他們絕對不應(yīng)該能夠更改它們。

隨著組織越來越多地依賴基于云的服務(wù)、容器化應(yīng)用程序和其他分布式環(huán)境,這些環(huán)境要求在不同的系統(tǒng)和應(yīng)用程序之間安全共享和管理密鑰,因此加強(qiáng)密鑰管理變得日益重要。

結(jié)合最小權(quán)限的RBAC原則:基于角色的訪問控制(Role-Based Access Control,RBAC)的原則是根據(jù)用戶在組織中的分配角色或工作職責(zé)來授予他們對系統(tǒng)資源的訪問權(quán)限。在RBAC中,用戶被分配角色,該角色定義了他們對各種系統(tǒng)資源(如文件、文件夾或應(yīng)用程序)的權(quán)限和訪問權(quán)。另一方面,最小權(quán)限的原則是授予用戶至少權(quán)限和訪問特權(quán),以執(zhí)行他們的工作職能所需的最低級別。這意味著用戶只能訪問他們完成特定任務(wù)所需的資源,并且沒有其他權(quán)限。RBAC和最小權(quán)限原則通常一起作為互補(bǔ)的安全原則使用。在RBAC中,用戶被分配的角色具有訪問所需資源的適當(dāng)級別,最小權(quán)限原則確保用戶只能訪問執(zhí)行特定任務(wù)所需的最低級別的資源。

這兩個原則共同有助于維護(hù)一個安全且良好管理的系統(tǒng),風(fēng)險最小,未經(jīng)授權(quán)的訪問或數(shù)據(jù)泄漏的風(fēng)險較小。作為額外的安全措施,您還可以設(shè)置特定系統(tǒng)關(guān)鍵操作需要多個用戶授權(quán)的機(jī)制。需要注意的是,由于這種做法可能會顯著降低開發(fā)工作速度,因此應(yīng)謹(jǐn)慎使用。但對于關(guān)鍵更新,例如刪除主要分支或修改依賴關(guān)系列表,至少需要兩個擁有適當(dāng)訪問權(quán)限的人批準(zhǔn)該更新。

展望未來

沒有人會停止使用CI/CD和其他自動化工具來加快工作進(jìn)程。我們生活在一個不斷追求更快代碼更新的世界中。我們只需要確保以安全意識的方式進(jìn)行,并不會在追求速度的同時危及我們的代碼和生產(chǎn)環(huán)境。

您可以做的最重要的事情之一就是認(rèn)真思考,未經(jīng)授權(quán)的人員如果獲取了訪問權(quán)限會發(fā)生什么。一旦您意識到危險和流水線和網(wǎng)絡(luò)中的不同薄弱點(diǎn),相信您能夠采取正確的步驟來彌補(bǔ)潛在的漏洞。

責(zé)任編輯:華軒 來源: 今日頭條
相關(guān)推薦

2023-01-30 15:55:08

2022-05-19 09:00:00

安全CI/CD工具

2010-11-08 09:43:47

2012-12-25 10:53:09

2022-02-22 09:00:00

軟件開發(fā)CI/CD 管道工具

2021-07-02 16:30:01

CICDDevOps

2023-05-04 16:03:50

KubernetesCI/CD集成

2020-12-15 16:13:21

DevSecOpsCICD

2022-05-27 05:42:34

容器云安全

2023-02-19 15:28:39

CI/CD 管道集成開發(fā)

2010-05-27 12:56:26

2021-07-16 16:53:42

無人機(jī)評估威脅

2024-02-04 00:00:00

Go貨幣接口

2019-07-25 10:31:55

AWSDevOps架構(gòu)

2023-06-26 14:03:31

2016-12-08 08:35:30

2013-09-09 11:41:18

天融信漏洞掃描TopScanner

2018-08-24 09:00:00

DevOps持續(xù)集成連續(xù)部署

2023-05-24 16:20:39

DevOpsCI/CD 管道軟件開發(fā)

2021-08-31 09:00:00

開發(fā)Azure DevOp集成
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號