掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
作者 | 趙佩

我們提供的服務(wù)有:做網(wǎng)站、成都網(wǎng)站制作、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、武宣ssl等。為上千多家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的武宣網(wǎng)站制作公司
ITIL 是一套 ITSM 最佳實(shí)踐體系,能夠提高 IT 部門用戶滿意度和運(yùn)行效率。它提供了針對(duì) IT 活動(dòng)的實(shí)踐,可以被組織應(yīng)用于戰(zhàn)略、價(jià)值交付和能力維持。它允許組織建立一個(gè)基線,用于計(jì)劃、實(shí)施和測(cè)量,證明合規(guī)性和衡量改進(jìn)。雖然 ITIL 建立了 ITSM 的“游戲規(guī)則”,但它只告訴你最好做什么事,具體落地層面的流程實(shí)踐需要根據(jù)不同的組織進(jìn)行定制化和優(yōu)化。
本系列 IT 運(yùn)維服務(wù)管理的文章,基于我們過(guò)去在不同項(xiàng)目背景下總結(jié)出來(lái)的實(shí)踐經(jīng)驗(yàn),具有運(yùn)維服務(wù)管理落地指導(dǎo)性質(zhì)。它為項(xiàng)目穩(wěn)定運(yùn)營(yíng)提供奠項(xiàng)目運(yùn)維開(kāi)展計(jì)劃的基礎(chǔ),為進(jìn)一步的工程實(shí)踐和持續(xù)優(yōu)化奠定良好的基礎(chǔ),同時(shí)可以幫助運(yùn)維項(xiàng)目中的人員完善和提升項(xiàng)目運(yùn)維過(guò)程中的服務(wù)管理能力。
本系列文章的主題包括運(yùn)維安全管理、事件管理、變更管理、應(yīng)急預(yù)案、自動(dòng)化效率化運(yùn)維。本文為第一篇:運(yùn)維中的安全管理。
在企業(yè)的 IT 服務(wù)運(yùn)維管理中,安全管理是一個(gè)非常重要的問(wèn)題。在產(chǎn)品運(yùn)維過(guò)程中,不僅需要管理、維護(hù)和監(jiān)控 IT 系統(tǒng)的可靠性,同時(shí)系統(tǒng)的安全性也是非常重要的。當(dāng)談到運(yùn)維安全管理時(shí),我們最容易想到的是保護(hù)敏感信息和數(shù)據(jù)安全。然而,隨著信息技術(shù)的進(jìn)步,敏感信息和數(shù)據(jù)安全的威脅也變得越來(lái)越復(fù)雜。
想象一個(gè)場(chǎng)景,你所運(yùn)維的系統(tǒng)中,有一個(gè)比較重要的服務(wù)因?yàn)榘踩┒磫?wèn)題需要被隔離甚至關(guān)停,這可能會(huì)引發(fā)一系列緊急舉措和挑戰(zhàn)。在現(xiàn)實(shí)中,我們?cè)?jīng)就遇到過(guò)這樣的情況。由于一個(gè)重大的系統(tǒng)漏洞,服務(wù)器被攻擊并受到了破壞。在恢復(fù)服務(wù)之后,我們又發(fā)現(xiàn)了應(yīng)用程序中的軟件包存在漏洞,必須在緊急的時(shí)間內(nèi)進(jìn)行修復(fù)才能重新上線。最終,我們花費(fèi)了將近兩天的時(shí)間才讓?xiě)?yīng)用程序恢復(fù)至可用狀態(tài)。如果我們定期進(jìn)行漏洞掃描并及時(shí)修復(fù)任何漏洞,或許就能夠避免這樣的情況再次發(fā)生。
再想象一個(gè)場(chǎng)景,你所運(yùn)維的一個(gè)線上服務(wù)昨天還正常提供服務(wù),但是今天突然所有用戶都在抱怨不能用了,你查看了監(jiān)控后發(fā)現(xiàn)系統(tǒng)的指標(biāo)都沒(méi)有問(wèn)題,最終才發(fā)現(xiàn)居然是應(yīng)用證書(shū)過(guò)期了。這樣一個(gè)看似簡(jiǎn)單的問(wèn)題卻造成了如此大的影響,不僅僅可能涉及金錢損失,還很可能影響到公司的聲譽(yù)。如果在日常運(yùn)維中我們注重證書(shū)的安全管理,就不會(huì)發(fā)生這樣低級(jí)的錯(cuò)誤,從而避免無(wú)法挽回的損失。
除了上述提到的軟件依賴包的安全管理和證書(shū)的安全管理,運(yùn)維團(tuán)隊(duì)還需要考慮權(quán)限管理、 CI/CD(Continuous Integration/Continuous Delivery) 流水線(Pipeline)安全檢查、個(gè)人隱私數(shù)據(jù)信息管理、Web 應(yīng)用防火墻管理、威脅建模等方面。這些措施都可以有效地減少惡意攻擊和數(shù)據(jù)泄漏的風(fēng)險(xiǎn),并保護(hù)企業(yè)的業(yè)務(wù)穩(wěn)定性和可持續(xù)性。
當(dāng)然,在運(yùn)維階段中涉及的安全管理問(wèn)題是多方面的,需要我們根據(jù)具體項(xiàng)目情況進(jìn)行綜合考慮和解決。下面我們會(huì)基于運(yùn)維項(xiàng)目上所涉及的安全領(lǐng)域來(lái)具體分享運(yùn)維項(xiàng)目上的一些安全實(shí)踐。
在運(yùn)維項(xiàng)目中,很多場(chǎng)景下,我們需要與多個(gè)系統(tǒng)進(jìn)行交互,這給我們的系統(tǒng)和人員帶來(lái)了許多權(quán)限管理的挑戰(zhàn)和要求。例如,我們需要確保管理員擁有足夠的權(quán)限來(lái)完成必要的任務(wù),但又不能賦予過(guò)多的權(quán)限,以避免安全風(fēng)險(xiǎn)。我們還需要確保所有操作都有明確的記錄和審計(jì),以便在發(fā)生問(wèn)題時(shí)進(jìn)行追蹤和分析。另外,我們還需要使用適當(dāng)?shù)恼J(rèn)證和授權(quán)措施,以防止未經(jīng)授權(quán)的訪問(wèn)和操作。
為了滿足這些要求,我們需要實(shí)施一套完整的運(yùn)維權(quán)限管理方案,包括對(duì)管理員帳戶、角色、權(quán)限、認(rèn)證和授權(quán)、審計(jì)和監(jiān)控等方面的管理。這樣,我們才能確保管理員只能訪問(wèn)他們所需的資源,并且他們的操作都能夠被準(zhǔn)確記錄和審計(jì)。此外,我們還需要定期審查和更新權(quán)限,以確保系統(tǒng)和數(shù)據(jù)的安全性和完整性得到保障。
在運(yùn)維項(xiàng)目中,權(quán)限管理是保護(hù)系統(tǒng)和數(shù)據(jù)安全的關(guān)鍵環(huán)節(jié),它不僅是技術(shù)上的問(wèn)題,更是一個(gè)管理流程上的問(wèn)題,所以需要管理員的合作和配合。只有全面而有效的運(yùn)維權(quán)限管理方案,才能確保系統(tǒng)的穩(wěn)定性和安全性,為企業(yè)的發(fā)展提供有力的支持。
權(quán)限管理在運(yùn)維中具有非常重要的作用,它可以確保系統(tǒng)和數(shù)據(jù)的安全性和完整性,避免未經(jīng)授權(quán)的訪問(wèn)和操作,同時(shí)也可以提高運(yùn)維效率和降低風(fēng)險(xiǎn)。
運(yùn)維權(quán)限管理在保障系統(tǒng)和數(shù)據(jù)安全、降低安全風(fēng)險(xiǎn)、提高運(yùn)維效率、精細(xì)化權(quán)限控制以及審計(jì)和監(jiān)控等方面發(fā)揮著至關(guān)重要的作用。
要度量運(yùn)維項(xiàng)目上權(quán)限管理的成熟度,可以考慮以下幾個(gè)方面:
(1) 權(quán)限分配和授權(quán):
(2) 權(quán)限審計(jì)和監(jiān)測(cè):
(3) 權(quán)限變更管理:
(4) 權(quán)限撤銷和失效:
(5) 權(quán)限請(qǐng)求和批準(zhǔn)流程:
密鑰是一種在明文轉(zhuǎn)換為密文或?qū)⒚芪霓D(zhuǎn)換為明文的算法中輸入的參數(shù)。具體來(lái)說(shuō),密鑰是一組信息編碼,它參與密碼的“運(yùn)算”,并對(duì)密碼的“運(yùn)算”起特定的控制作用。
數(shù)字證書(shū)是一種可以在互聯(lián)網(wǎng)通訊中唯一地標(biāo)識(shí)身份的一個(gè)權(quán)威文件。數(shù)字證書(shū)是由證書(shū)認(rèn)證機(jī)構(gòu) (以下簡(jiǎn)稱 CA) 對(duì)證書(shū)申請(qǐng)者真實(shí)身份驗(yàn)證之后,用 CA 的根證書(shū)對(duì)申請(qǐng)人的一些基本信息以及申請(qǐng)人的公鑰進(jìn)行簽名(相當(dāng)于加蓋發(fā)證書(shū)機(jī)構(gòu)的公章)后形成的一個(gè)數(shù)字文件。可以認(rèn)為,數(shù)字證書(shū)就是經(jīng)過(guò) CA 認(rèn)證過(guò)的公鑰,和公鑰一樣是公開(kāi)的。
(1) 密鑰的分類
一般情況下,密鑰分為對(duì)稱密鑰與非對(duì)稱密鑰。
(2) 證書(shū)的分類
證書(shū)的種類較多,這里列舉幾種常見(jiàn)的證書(shū)分類:TLS/SSL 客戶端證書(shū),郵件證書(shū)、iOS 和安卓證書(shū),自簽名證書(shū)等等。
在運(yùn)維的過(guò)程中,如果我們對(duì)密鑰管理不當(dāng),密鑰的泄露會(huì)導(dǎo)致密碼系統(tǒng)失效,信息出現(xiàn)泄漏,系統(tǒng)出現(xiàn)安全問(wèn)題。如果沒(méi)能及時(shí)檢查證書(shū)的過(guò)期時(shí)間,導(dǎo)致證書(shū)過(guò)期,不僅使得用戶的通信得不到保護(hù),泄漏用戶的安全和隱私,也會(huì)使得用戶在使用服務(wù)時(shí),出現(xiàn)網(wǎng)頁(yè)無(wú)法打開(kāi)等情況。這些情況在運(yùn)維中都會(huì)是非常嚴(yán)重的生產(chǎn)安全事故。
在運(yùn)維的過(guò)程中,密鑰和證書(shū)的管理包含生成、更新、存儲(chǔ)與備份、有效期及銷毀。具體內(nèi)容如下:
針對(duì)運(yùn)維團(tuán)隊(duì)所運(yùn)維的服務(wù),服務(wù)的證書(shū)可能是由專門的團(tuán)隊(duì)管理,也可能是直接托管在云服務(wù)上。針對(duì)不同的情況,有如下內(nèi)容:
(1) 如果證書(shū)不在云上托管,而是公司有專門的團(tuán)隊(duì)負(fù)責(zé):
(2) 如果證書(shū)是云服務(wù)自動(dòng)生成和托管,例如 AWS ACM,建議開(kāi)啟云服務(wù)端自動(dòng)更新。這樣運(yùn)維人員不需要有額外的工作量。
要度量運(yùn)維項(xiàng)目上密鑰和證書(shū)管理做得好不好,一般通過(guò)查看因證書(shū)密鑰導(dǎo)致的安全事故數(shù)量作為度量準(zhǔn)則,可以考慮以下幾個(gè)方面:
對(duì)于軟件的代碼依賴包,我們都不陌生。為了避免重復(fù)編寫(xiě)某個(gè)公用代碼,我們都傾向于去在代碼里引用軟件依賴包來(lái)提高交付效率。將外部軟件作為依賴包意味著我們需要信賴這個(gè)依賴包,但是這些依賴包中可能存在安全漏洞,它們還可能過(guò)時(shí),可能存在影響應(yīng)用程序性能和風(fēng)險(xiǎn)狀況的錯(cuò)誤或安全問(wèn)題,從而導(dǎo)致我們的應(yīng)用質(zhì)量下降,安全性無(wú)法得到保障。因此在享用依賴包所帶來(lái)的便利性的同時(shí),我們需要去定期掃描和升級(jí)依賴包,做好安全管理,以防止任何安全漏洞趁虛而入。
關(guān)于依賴包的安全漏洞,我們往往需要特別關(guān)注和及時(shí)升級(jí)涉及 Critical 極危級(jí)別漏洞和 High 高危級(jí)別漏洞的依賴包:
保證軟件系統(tǒng)的安全性:依賴包中可能存在的安全漏洞和問(wèn)題可能會(huì)被黑客利用,導(dǎo)致軟件系統(tǒng)被攻擊或被破壞。運(yùn)維的項(xiàng)目中,其中有一大部分是遺留的服務(wù),因?yàn)檫@些系統(tǒng)不需要開(kāi)發(fā)新功能了,維護(hù)者往往不想在上面投入過(guò)多精力的,只想讓他能工作就行,因此大家會(huì)常常忽視這些系統(tǒng)的網(wǎng)絡(luò)安全問(wèn)題,比如過(guò)期不維護(hù)的有安全漏洞的依賴包。只要我們不主動(dòng)識(shí)別并消除來(lái)自這些的潛在威脅,就始終存在安全漏洞的可能性。如果我們能正確管理好依賴包,可以發(fā)現(xiàn)這些安全漏洞和問(wèn)題,并及時(shí)采取措施加以修復(fù)。
因此,在運(yùn)維項(xiàng)目上,我們不應(yīng)該忽視對(duì)軟件代碼依賴的管理,定期去掃描和更新依賴包,確保依賴包沒(méi)有安全漏洞,直到這個(gè)服務(wù)的生命周期結(jié)束,我們都應(yīng)該對(duì)這些進(jìn)行負(fù)責(zé)。
(1) 選擇合適的依賴掃描工具:
如果當(dāng)前的運(yùn)維項(xiàng)目上沒(méi)有集成,我們可以考慮根據(jù)項(xiàng)目所使用的編程語(yǔ)言和依賴庫(kù),選擇適合的依賴掃描工具。依賴掃描工具的主要目的是檢測(cè)和識(shí)別項(xiàng)目中的依賴項(xiàng),以便在需要更新時(shí)通知開(kāi)發(fā)人員。掃描工具可以幫助開(kāi)發(fā)人員確定項(xiàng)目中使用的依賴項(xiàng)版本是否過(guò)時(shí)或具有安全漏洞,從而確保項(xiàng)目的安全性和穩(wěn)定性。常見(jiàn)的依賴掃描工具包括:
(2) 集成依賴掃描工具:
可以將依賴掃描工具集成到 CI/CD 工作流程中,以便在每次構(gòu)建和部署時(shí)都自動(dòng)運(yùn)行依賴掃描工具。這可以幫助確保每個(gè)版本都經(jīng)過(guò)安全審查。
(3) 代碼倉(cāng)庫(kù)集成依賴升級(jí)工具并自動(dòng)更新依賴包:
依賴升級(jí)工具可以幫助開(kāi)發(fā)人員和團(tuán)隊(duì)更輕松地管理其項(xiàng)目的依賴項(xiàng)。這些工具可以定期掃描項(xiàng)目的依賴項(xiàng),并自動(dòng)提供更新版本的建議,甚至可以自動(dòng)提交更新請(qǐng)求和合并請(qǐng)求。如果在開(kāi)發(fā)階段在代碼倉(cāng)庫(kù)沒(méi)有集成依賴掃描工具,那么在運(yùn)維階段,我們應(yīng)盡可能地集成這樣的工具。 這里我們推薦兩種和 Github 集成的工具:Dependabot 和 Renovate。它們可以輕松自動(dòng)更新依賴項(xiàng),提高項(xiàng)目的安全性和可維護(hù)性。這兩個(gè)工具都能很好的跟 Github 集成,不管是有成百上千的代碼倉(cāng)庫(kù)的大型企業(yè)還是個(gè)人的代碼倉(cāng)庫(kù),都可以使用這兩個(gè)工具去進(jìn)行定期代碼依賴包掃描,并自動(dòng)創(chuàng)建拉取請(qǐng)求。 對(duì)于大型項(xiàng)目公司,也可以創(chuàng)建自建的 Dependabot 和 Renovate 實(shí)例去進(jìn)行依賴包的安全掃描,并且定制公司項(xiàng)目?jī)?nèi)部的規(guī)則:
要度量運(yùn)維項(xiàng)目上軟件代碼依賴包的安全管理做得好不好,可以考慮以下幾個(gè)方面:
這些度量指標(biāo)可以幫助我們了解運(yùn)維項(xiàng)目上軟件代碼依賴包的安全管理做得好不好,以評(píng)估我們運(yùn)維項(xiàng)目的安全實(shí)踐和改進(jìn)方向。
在軟件行業(yè)中,CI/CD 流水線是加速軟件開(kāi)發(fā)和集成、快速上線產(chǎn)品的關(guān)鍵工具。然而,在 CI/CD 流水線的自動(dòng)化過(guò)程中,安全問(wèn)題往往容易被忽視,CI/CD 流水線的安全對(duì)于確保整個(gè)軟件系統(tǒng)的安全和可靠性至關(guān)重要。CI/CD 流水線安全管理涉及到的方面眾多,包括但不限于:
在運(yùn)維項(xiàng)目中,CI/CD 流水線安全管理至關(guān)重要。由于它涉及到公司業(yè)務(wù)的正常運(yùn)行以及用戶數(shù)據(jù)的安全,因此對(duì) CI/CD 流水線進(jìn)行安全管理可以確保整個(gè) CI/CD 過(guò)程的可靠性和安全,并為維護(hù)軟件系統(tǒng)的穩(wěn)定性和企業(yè)的口碑提供保障。具體來(lái)說(shuō),CI/CD 流水線安全管理在運(yùn)維中能發(fā)揮以下作用:
(1) CI/CD 系統(tǒng)的安全
除第三方所提供的 CI/CD 系統(tǒng)外,對(duì)于自建的 CI/CD 系統(tǒng)和它所真正執(zhí)行任務(wù)的 Agent/Runner(構(gòu)建、部署任務(wù)執(zhí)行程序)我們都需要確保它自身的安全。在允許的前提下,確保使用的 CI/CD 及其 Agent 所在的操作系統(tǒng)是最新版本,且已安裝最新的安全補(bǔ)丁,以防止已知的漏洞被利用。在大型公司中對(duì)于操作系統(tǒng)的安全性一般有安全團(tuán)隊(duì)專門負(fù)責(zé)。
對(duì)于 CI/CD 服務(wù)器系統(tǒng)本身我們需要做到的有:
對(duì) CI/CD 系統(tǒng)及其數(shù)據(jù)定期進(jìn)行備份,做好災(zāi)難恢復(fù)計(jì)劃。對(duì)于 Agent(構(gòu)建、部署任務(wù)執(zhí)行程序)我們需要做到的有:
(2) CI/CD 流水線訪問(wèn)控制
流水線中未授權(quán)的部署操作會(huì)影響線上系統(tǒng)的穩(wěn)定性,攻擊者也可以通過(guò)流水線的部署操作將線上版本替換為老版本而制造漏洞。部分流水線可能可以直接下載項(xiàng)目所構(gòu)建的中間產(chǎn)物或是項(xiàng)目編譯后的二進(jìn)制文件,被未授權(quán)的人員獲取可能會(huì)有安全風(fēng)險(xiǎn)。由此可見(jiàn),對(duì)流水線訪問(wèn)權(quán)限的檢查尤為重要。我們需要確保項(xiàng)目的流水線只能由團(tuán)隊(duì)成員所訪問(wèn),并要求團(tuán)隊(duì)成員啟用多因子驗(yàn)證 MFA 提高安全性。對(duì)于存儲(chǔ)在 CI/CD 系統(tǒng)中的密鑰,我們需要及時(shí)的了解是否已對(duì)其進(jìn)行了加密,這樣有利于避免其他人獲取敏感信息。
(3) 編寫(xiě)安全的 CI/CD 流水線代碼
雖然很多場(chǎng)景下我們運(yùn)維團(tuán)隊(duì)所維護(hù)的都是一些老的服務(wù)或系統(tǒng),但我們?cè)谶\(yùn)維過(guò)程中可能會(huì)對(duì)現(xiàn)有的 CI/CD 流水線進(jìn)行一些修改加固。在編寫(xiě)流水線代碼時(shí),我們應(yīng)該注意的點(diǎn)有:
在常見(jiàn)的 CI/CD 流水線中也應(yīng)該包含以下步驟:
要度量運(yùn)維項(xiàng)目上 CI/CD 流水線是否安全,可以考慮以下幾個(gè)方面:
個(gè)人身份信息(Personal Identifiable Information,后文簡(jiǎn)稱 PII)是指單獨(dú)使用或與其他相關(guān)數(shù)據(jù)一起使用時(shí)可以識(shí)別個(gè)人身份的信息。
PII 按照識(shí)別類型可以分為:
PII 按照敏感類型可以分為:
在運(yùn)維的過(guò)程中,工程師和支持團(tuán)隊(duì)經(jīng)常需要排查線上的問(wèn)題,不可避免的需要查看系統(tǒng)日志,服務(wù)日志,數(shù)據(jù)庫(kù)數(shù)據(jù)等信息。而這些信息中經(jīng)常會(huì)出現(xiàn) PII,這使得 PII 很容易泄漏,而 PII 的泄露可能會(huì)違反當(dāng)?shù)氐姆?,也可能被黑客利用,給用戶帶來(lái)潛在的威脅。
根據(jù)公司所在國(guó)家的法律和公司本身的業(yè)務(wù),定義出 PII 的列表。
在運(yùn)維的初始階段,需要依據(jù) PII 列表識(shí)別項(xiàng)目中的 PII 并進(jìn)行隱藏。 因?yàn)槿罩局械?PII 的數(shù)據(jù)有時(shí)候?qū)ε挪閱?wèn)題時(shí)非常重要,所以在隱藏 PII 的時(shí)候,可以采取部分隱藏的策略,既可以達(dá)到隱藏 PII 的目的,又可以使用部分 PII 數(shù)據(jù)對(duì)問(wèn)題進(jìn)行調(diào)查。
在開(kāi)發(fā)產(chǎn)品功能時(shí),避免暴露或者輸出任何 PII 。在運(yùn)維過(guò)程中,如果發(fā)現(xiàn) PII,也需要及時(shí)的隱藏。
在日常運(yùn)維開(kāi)發(fā)中,設(shè)立項(xiàng)目中的 PII 檢查規(guī)則,并且及時(shí)和團(tuán)隊(duì)進(jìn)行同步:
(1) 代碼中的 PII
不能使用真實(shí)用戶的 PII 數(shù)據(jù)作為測(cè)試數(shù)據(jù)提交到代碼倉(cāng)庫(kù),因?yàn)橐话闱闆r下,代碼的讀取權(quán)限是被很多人擁有的,這樣很容易泄漏 PII。
(2) 數(shù)據(jù)庫(kù)中的 PII1
(3) 日志中的 PII
在代碼中隱藏日志輸出的 PII,日志系統(tǒng)是我們定位問(wèn)題使用最多的工具,支持團(tuán)隊(duì)或者開(kāi)發(fā)人員大多都有查看日志的權(quán)限,因此隱藏日志中的 PII 十分重要。我們可以在 Pipeline 中配置檢查 PII 日志的插件,并配置告警,便于我們及時(shí)發(fā)現(xiàn)。
在運(yùn)維過(guò)程中如果有新需求進(jìn)行產(chǎn)品功能開(kāi)發(fā)時(shí),避免暴露 PII:
發(fā)現(xiàn) PII 相關(guān)的泄露問(wèn)題及時(shí)通知公司的安全部門,采取相應(yīng)的措施。
要度量運(yùn)維項(xiàng)目個(gè)人隱私數(shù)據(jù)的管理做得好不好,可以考慮以下幾個(gè)方面:
根據(jù)公司或項(xiàng)目上記錄的 PII 泄露事故數(shù)量作為我們度量運(yùn)維團(tuán)隊(duì)是否做好了 PII 保護(hù)的一個(gè)指標(biāo)。
當(dāng)發(fā)現(xiàn) PII 泄露之后,團(tuán)隊(duì)的應(yīng)對(duì)和處理措施更能反映出大家的信息安全的意識(shí),因此這一點(diǎn)也是一個(gè)重要的度量指標(biāo)。
威脅建模是一種結(jié)構(gòu)化的分析和解決安全問(wèn)題的方法,用來(lái)識(shí)別、量化威脅,并且有助于思考如何應(yīng)對(duì)威脅。在公司的安全部門一般會(huì)每年定期開(kāi)展威脅建模活動(dòng),除此之外,威脅建模還會(huì)發(fā)生在項(xiàng)目前期,以及每當(dāng)業(yè)務(wù)或者技術(shù)有較大變更的時(shí)候開(kāi)展。
在運(yùn)維的過(guò)程中,威脅建模可以為運(yùn)維團(tuán)隊(duì)提供清晰的安全視野,最大限度的預(yù)防生產(chǎn)的安全事故。尤其是在運(yùn)維團(tuán)隊(duì)剛?cè)雸?chǎng)接手項(xiàng)目時(shí),威脅建模有助于團(tuán)隊(duì)梳理清楚所有安全方面的威脅,及時(shí)去發(fā)現(xiàn)和修復(fù)已有的安全威脅。比如說(shuō)通過(guò)威脅建模明確人員的權(quán)限,最大防止數(shù)據(jù)庫(kù)、服務(wù)器被不應(yīng)該接觸權(quán)限的人誤刪除或者惡意刪除等。
(1) 確定運(yùn)維項(xiàng)目威脅建模的時(shí)間
(2) 準(zhǔn)備最新的、準(zhǔn)確的架構(gòu)圖和數(shù)據(jù)流圖
運(yùn)維項(xiàng)目即意味著項(xiàng)目主要功能已經(jīng)完成并且已經(jīng)在線上運(yùn)行,那么也就意味著在這個(gè)時(shí)刻,項(xiàng)目的架構(gòu)、數(shù)據(jù)流都已經(jīng)固定下來(lái)。但是每個(gè)項(xiàng)目實(shí)際產(chǎn)出的各有差異,將有三種情況:
第一種情況,那么運(yùn)維團(tuán)隊(duì)只需要簡(jiǎn)單驗(yàn)證架構(gòu)圖和數(shù)據(jù)流圖的準(zhǔn)確性即可。
第二種情況,則需要結(jié)合代碼、現(xiàn)存文檔以及過(guò)期的架構(gòu)圖重新完成最新的、準(zhǔn)確的架構(gòu)圖和數(shù)據(jù)流圖的繪制。出現(xiàn)第二種情況的原因有很多,比較常見(jiàn)的是在某個(gè)時(shí)刻退役了某些功能但是并沒(méi)有刪除代碼,或者是第三方服務(wù)發(fā)生了改變,但并沒(méi)有及時(shí)更新架構(gòu)圖等。
第三種情況,在文檔嚴(yán)重缺失的情況下,只能通過(guò)閱讀代碼的方式來(lái)重新繪制。
(3) 根據(jù) STRIDE 識(shí)別圖中每一個(gè)元素的威脅
團(tuán)隊(duì)成員分別扮演不同的角色,包括從用戶、開(kāi)發(fā)人員、運(yùn)維人員、競(jìng)爭(zhēng)者以及黑客組織。從他們的行為習(xí)慣或者目的出發(fā),以 STRIDE 為攻擊的角度去思考如果你是這類用戶,你會(huì)怎么做威脅系統(tǒng)安全的事情。
(4) 根據(jù) DREAD 對(duì)威脅進(jìn)行風(fēng)險(xiǎn)評(píng)估
對(duì)第二步識(shí)別出來(lái)的風(fēng)險(xiǎn)從以下幾個(gè)緯度進(jìn)行打分,確定風(fēng)險(xiǎn)等級(jí)。
(5) 設(shè)置應(yīng)對(duì)措施
風(fēng)險(xiǎn)評(píng)估完成后,團(tuán)隊(duì)便會(huì)獲取到一個(gè)按照優(yōu)先級(jí)排序的風(fēng)險(xiǎn)列表 。那么這一步就需要按照優(yōu)先級(jí)制定相關(guān)的措施 。例如在做完某次威脅建模后發(fā)現(xiàn)有SQL 注入威脅和發(fā)現(xiàn)有用戶權(quán)限提升為管理員權(quán)限。那么此時(shí)根據(jù)這兩種威脅帶來(lái)的影響排出優(yōu)先級(jí),并且制定相對(duì)應(yīng)的措施(如下表):
|
威脅 |
措施 |
|
SQL 注入威脅(高風(fēng)險(xiǎn)) |
更改相關(guān) SQL,并且讓 DBA 團(tuán)隊(duì)進(jìn)行評(píng)審 |
|
用戶權(quán)限提升為管理員權(quán)限(中風(fēng)險(xiǎn)) |
由運(yùn)維人員收回用戶的管理員權(quán)限 |
要度量運(yùn)維項(xiàng)目上威脅建模做得好不好,可以考慮以下幾個(gè)方面:
Web 應(yīng)用程序防火墻(后文簡(jiǎn)稱 WAF),通過(guò)過(guò)濾和監(jiān)控 Web 應(yīng)用程序與互聯(lián)網(wǎng)之間的 HTTP 流量來(lái)幫助保護(hù) Web 應(yīng)用程序。它是一種反向代理,引導(dǎo)客戶端通過(guò) WAF 到達(dá)服務(wù)器,從而防止暴露服務(wù)器。WAF 可以快速簡(jiǎn)便地修改規(guī)則,因而可以更迅速地響應(yīng)不同的攻擊手段。例如,當(dāng)發(fā)生拒絕服務(wù)攻擊(DDoS) 攻擊時(shí),可通過(guò)修改 WAF 規(guī)則快速實(shí)施速率限制。
WAF 和普通網(wǎng)絡(luò)防火墻之間的關(guān)鍵技術(shù)區(qū)別在于 WAF 保護(hù) OSI 模型第 7 層應(yīng)用層的攻擊。而網(wǎng)絡(luò)防火墻在 OSI 模型第 3 層網(wǎng)絡(luò)層和第 4 層傳輸層運(yùn)行,保護(hù)數(shù)據(jù)傳輸和網(wǎng)絡(luò)流量。WAF 位于外部用戶和 Web 應(yīng)用程序之間,用于分析所有 HTTP 通信。然后,它會(huì)在惡意請(qǐng)求到達(dá)用戶或 Web 應(yīng)用程序之前檢測(cè)并阻止它們。網(wǎng)絡(luò)防火墻主要目標(biāo)是將安全區(qū)域與不太安全的區(qū)域分開(kāi),并控制兩者之間的通信。
WAF 保護(hù)著網(wǎng)站的應(yīng)用程序,在網(wǎng)站的安全維護(hù)上扮演著重要角色。從實(shí)際運(yùn)維經(jīng)驗(yàn)中,我們發(fā)現(xiàn)許多網(wǎng)站在搭建完成后就由不同人管理,這樣會(huì)造成網(wǎng)站上存著不同程序員的管理風(fēng)格,一旦疏于管理或是在缺失上下文的情況下依循不同邏輯擴(kuò)增網(wǎng)站的架構(gòu),在新舊架構(gòu)并存、語(yǔ)法混亂的狀態(tài)下,網(wǎng)站其實(shí)很容易就會(huì)出現(xiàn)安全漏洞,但團(tuán)隊(duì)往往不自知而讓黑客有機(jī)可趁,因此就會(huì)需要 WAF 為網(wǎng)站筑起防護(hù)墻,保障網(wǎng)站安全。
(1) 準(zhǔn)備工作
首先對(duì)需接入 WAF 進(jìn)行防護(hù)的網(wǎng)站的業(yè)務(wù)情況進(jìn)行全面梳理,幫助我們了解當(dāng)前業(yè)務(wù)狀況和具體數(shù)據(jù),為后續(xù)配置 WAF 的防護(hù)策略提供依據(jù)。主要梳理的內(nèi)容包括:
(2) 實(shí)現(xiàn)
(3) 產(chǎn)品選擇
目前 WAF 的產(chǎn)品形態(tài)主要有硬件 WAF、軟件 WAF、云 WAF 服務(wù)和自研發(fā)方式,我們可以項(xiàng)目的實(shí)際情況,去選擇一款合適的進(jìn)行部署:
(4) 策略配置
根據(jù)應(yīng)用程序的需求,配置 WAF 策略,包括白名單、黑名單、訪問(wèn)控制規(guī)則、SQL 注入防御、跨站點(diǎn)腳本 XSS 防御等。
(5) 性能測(cè)試
在部署完 WAF 之后,比較容易忽視一點(diǎn)的是,我們需要對(duì)其進(jìn)行性能測(cè)試。與服務(wù)的性能測(cè)試相同,旨在確保 WAF 的加入不會(huì)影響服務(wù)正常的性能指標(biāo)。
(6) 日志監(jiān)控
有了 WAF 之后,最重要的一點(diǎn)是要進(jìn)行數(shù)據(jù)的采集,監(jiān)控和智能攔截。將 WAF 的日志和性能指標(biāo)與現(xiàn)有日志監(jiān)控系統(tǒng)集成,便于時(shí)刻監(jiān)控 WAF 狀態(tài),定期檢查 WAF 的日志,監(jiān)控應(yīng)用程序的安全狀況,發(fā)現(xiàn)異常行為需要告警并采取必要的措施,以及及時(shí)升級(jí)和修復(fù) WAF。
要度量運(yùn)維項(xiàng)目上 WAF 的效果,可以先進(jìn)行威脅建模,根據(jù)可能會(huì)受到的攻擊,制定 WAF 的測(cè)試方案。主要可能包含以下方面:
這些度量指標(biāo)可以幫助我們了解 WAF 功能是否正常,幫助我們運(yùn)維項(xiàng)目的安全實(shí)踐和改進(jìn)方向。
當(dāng)談到運(yùn)維中安全管理時(shí),我們不僅僅在維護(hù)和管理IT系統(tǒng),更是在守護(hù)企業(yè)的核心利益。無(wú)論是保護(hù)敏感信息免受黑客威脅,還是確保系統(tǒng)的連續(xù)可用性,安全管理都不容忽視。通過(guò)對(duì)權(quán)限控制,密鑰和證書(shū)的妥善管理,代碼依賴的安全管理,CICD 流水線的安全檢查,敏感信息的保護(hù),以及建立有效的 Web 應(yīng)用防火墻和及時(shí)進(jìn)行威脅建模,我們可以建立起一道堅(jiān)固的安全屏障,以抵御各種內(nèi)外部風(fēng)險(xiǎn)。
然而,安全管理不僅僅是一項(xiàng)任務(wù),更是一種文化。它需要貫穿于運(yùn)維的始終,貫徹于每個(gè)細(xì)節(jié)。通過(guò)在運(yùn)維階段進(jìn)行全面的安全管理,能夠確保業(yè)務(wù)的可持續(xù)性,維護(hù)客戶的信任,以幫助我們?cè)诟?jìng)爭(zhēng)激烈的市場(chǎng)中脫穎而出。因此,我們應(yīng)始終牢記,在運(yùn)維中,安全是不可或缺的基石。

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流