如何在復(fù)雜的后端系統(tǒng)中保證數(shù)據(jù)庫(kù)安全?
以技術(shù)為中心的時(shí)代,信息至關(guān)重要。數(shù)據(jù)庫(kù)及其安全性已成為每個(gè)企業(yè)極具挑戰(zhàn)性的任務(wù)。數(shù)據(jù)庫(kù)可以包含關(guān)鍵信息,例如個(gè)人身份、信用卡信息、金融交易以及應(yīng)用程序密碼,這些都是對(duì)黑客和網(wǎng)絡(luò)犯罪分子有價(jià)值的信息。根據(jù)金雅拓的數(shù)據(jù)泄露水平指數(shù),2018年上半年大約有35億條記錄違規(guī),比2017年上半年增加了72%。數(shù)據(jù)泄露的后果對(duì)企業(yè)來(lái)說(shuō)代價(jià)是非常昂貴的。即使是一個(gè)小漏洞或錯(cuò)誤,也可能讓攻擊者掌握耗資數(shù)百萬(wàn)的數(shù)據(jù)庫(kù)系統(tǒng)。為了防止這種事情的發(fā)生,企業(yè)應(yīng)該防患于未然,考慮一切有可能破壞數(shù)據(jù)庫(kù)的因素,防止有價(jià)值的信息受到損害。
復(fù)雜的后端系統(tǒng)中,企業(yè)數(shù)據(jù)庫(kù)中的關(guān)鍵信息極易受到網(wǎng)絡(luò)威脅。以下方法可以幫助企業(yè)在很大程度上保護(hù)數(shù)據(jù)庫(kù):
- 隔離Web服務(wù)器和數(shù)據(jù)庫(kù)
- 設(shè)置Web應(yīng)用程序防火墻(WAF)和反惡意軟件解決方案
- 實(shí)施數(shù)據(jù)加密和備份
- 用戶帳戶管理
- 定期更新和實(shí)施補(bǔ)丁
1、隔離Web服務(wù)器和數(shù)據(jù)庫(kù)
在同一臺(tái)機(jī)器上部署應(yīng)用程序和數(shù)據(jù)庫(kù)會(huì)導(dǎo)致攻擊者更容易進(jìn)入系統(tǒng),因?yàn)橹恍杵平庖慌_(tái)服務(wù)器的管理員帳戶就能訪問(wèn)整個(gè)數(shù)據(jù)庫(kù),這是一個(gè)巨大的安全漏洞。
為了保護(hù)企業(yè)的敏感信息不受未經(jīng)授權(quán)的訪問(wèn),IT管理員應(yīng)該將服務(wù)器(應(yīng)用程序和數(shù)據(jù)庫(kù))保存在不同的物理機(jī)上。應(yīng)用程序的高性能主機(jī)服務(wù)器可能最好,但為了存儲(chǔ)客戶的有價(jià)值數(shù)據(jù),企業(yè)必須選擇單獨(dú)的數(shù)據(jù)庫(kù)服務(wù)器,該服務(wù)器需支持高級(jí)安全特性(如多因素身份驗(yàn)證)和適當(dāng)?shù)脑L問(wèn)權(quán)限。
2、設(shè)置Web應(yīng)用程序防火墻(WAF)和反惡意軟件解決方案
設(shè)置防火墻是阻止攻擊者的另一種有效方法。防火墻通過(guò)拒絕未經(jīng)授權(quán)的訪問(wèn)來(lái)確保數(shù)據(jù)庫(kù)安全,但如果需要,它可以監(jiān)控公司員工訪問(wèn)服務(wù)器的行為。例如,SQL注入是攻擊者為入侵系統(tǒng)而進(jìn)行的最常見(jiàn)的攻擊,但這可以通過(guò)適當(dāng)?shù)姆阑饓ε渲脕?lái)檢查并防范。
一旦企業(yè)建立了數(shù)據(jù)庫(kù),就應(yīng)該確保計(jì)算機(jī)被防火墻完全保護(hù),防火墻能夠過(guò)濾任何出站連接和任何想要訪問(wèn)有用信息的請(qǐng)求(除了必要的請(qǐng)求)。此外,企業(yè)應(yīng)該確保數(shù)據(jù)庫(kù)服務(wù)器也可以通過(guò)安裝反惡意軟件和反勒索軟件來(lái)防范惡意攻擊,或者只允許來(lái)自可信源或特定web服務(wù)器的訪問(wèn),定期檢查數(shù)據(jù)庫(kù)服務(wù)器上的防火墻規(guī)則,并定期通過(guò)網(wǎng)絡(luò)掃描或允許ISP掃描進(jìn)行測(cè)試。另外,應(yīng)該關(guān)閉數(shù)據(jù)庫(kù)服務(wù)器上從未使用或不必要的服務(wù)。
3、實(shí)施數(shù)據(jù)加密和備份
意外時(shí)刻都會(huì)發(fā)生,企業(yè)應(yīng)該時(shí)刻準(zhǔn)備好額外的保護(hù)層,以防止數(shù)據(jù)受到損害。這個(gè)額外的保護(hù)層可以通過(guò)加密實(shí)現(xiàn),這樣攻擊者即使可以訪問(wèn)數(shù)據(jù)庫(kù),也需要再去破解密碼。
第一階段的加密需要使用應(yīng)用程序服務(wù)器或數(shù)據(jù)庫(kù)服務(wù)器上的私鑰來(lái)實(shí)現(xiàn)。因此,即使攻擊者獲得對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限,他們也無(wú)法輕松解密或讀取數(shù)據(jù)。第二階段需要對(duì)傳輸中的數(shù)據(jù)進(jìn)行加密,這意味著數(shù)據(jù)在通過(guò)網(wǎng)絡(luò)從應(yīng)用服務(wù)器移動(dòng)到數(shù)據(jù)庫(kù)服務(wù)器之前就被加密,反之亦然。
4、用戶帳戶管理
除了犯罪分子,企業(yè)的員工也可能會(huì)對(duì)有價(jià)值的數(shù)據(jù)構(gòu)成重大威脅。很多具有不同角色的用戶可能經(jīng)常訪問(wèn)數(shù)據(jù)庫(kù),他們可能沒(méi)有惡意,但仍有可能大規(guī)模泄露機(jī)密信息。這就是為什么管理用戶帳戶變得至關(guān)重要的原因。
企業(yè)應(yīng)該盡量使訪問(wèn)數(shù)據(jù)庫(kù)的用戶最少。只有在需要時(shí),才應(yīng)向授權(quán)用戶提供使用一次性密碼(OTP)技術(shù)訪問(wèn)數(shù)據(jù)庫(kù)的權(quán)限,以避免用戶在其他時(shí)間進(jìn)行任何未經(jīng)授權(quán)的訪問(wèn)。應(yīng)強(qiáng)制使用強(qiáng)密碼來(lái)訪問(wèn)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)憑據(jù)應(yīng)以哈希加鹽法存儲(chǔ),這樣它們就不可讀了。另外,應(yīng)定期維護(hù)活動(dòng)日志,以監(jiān)控與查詢和請(qǐng)求相關(guān)的所有活動(dòng)。如果企業(yè)遇到數(shù)據(jù)泄露,審計(jì)和日志記錄可以幫助調(diào)查可疑活動(dòng)。
5、定期更新和實(shí)施補(bǔ)丁
許多后端系統(tǒng)在其應(yīng)用程序中使用第三方api、應(yīng)用程序和插件,這可能是網(wǎng)絡(luò)罪犯的目標(biāo)。為了解決這個(gè)問(wèn)題,企業(yè)應(yīng)該建立健全的應(yīng)用更新系統(tǒng),以避免網(wǎng)絡(luò)罪犯利用任何已知的漏洞對(duì)系統(tǒng)進(jìn)行破壞。
保持所有第三方軟件、api和插件更新到最新版本,這些更新應(yīng)該定期進(jìn)行或者在API和插件供應(yīng)商發(fā)布新補(bǔ)丁時(shí)進(jìn)行,這確保了最新的版本能夠用最新的網(wǎng)絡(luò)威脅免疫系統(tǒng)。不僅如此,應(yīng)用程序中不使用的插件、api或服務(wù)應(yīng)該完全從系統(tǒng)中刪除或停用。
關(guān)于數(shù)據(jù)庫(kù)保護(hù)的其他建議
無(wú)論數(shù)據(jù)庫(kù)服務(wù)器受到多大程度的保護(hù),攻擊者總有可能滲入系統(tǒng),所以要經(jīng)常備份數(shù)據(jù)庫(kù)的加密副本,這就保證了即使數(shù)據(jù)庫(kù)被破壞時(shí)也可以恢復(fù)數(shù)據(jù)。
設(shè)置數(shù)據(jù)庫(kù)代理也可能是一個(gè)很好的解決方案,因?yàn)樗挥趹?yīng)用程序和數(shù)據(jù)庫(kù)之間。它能解析查詢,只接受來(lái)自應(yīng)用程序服務(wù)器的請(qǐng)求,并阻止任何其他未通過(guò)可信源生成的請(qǐng)求。
數(shù)據(jù)庫(kù)安全對(duì)企業(yè)來(lái)說(shuō)至關(guān)重要,企業(yè)有義務(wù)保護(hù)客戶的數(shù)據(jù)安全,以免造成任何法律后果并失去客戶信任。以上方法,不僅有助于保護(hù)數(shù)據(jù)庫(kù),降低數(shù)據(jù)泄露處理不當(dāng)?shù)娘L(fēng)險(xiǎn),而且還可確保企業(yè)做好面對(duì)不可控攻擊的準(zhǔn)備。