簡(jiǎn)單幾步確保數(shù)據(jù)庫(kù)安全
數(shù)據(jù)庫(kù)安全是企業(yè)互聯(lián)網(wǎng)安全的最基本條件,數(shù)據(jù)庫(kù)安全一旦難以保障,那么企業(yè)敏感信息就面臨著泄漏的危機(jī)。不僅可能危害企業(yè)的正常運(yùn)作,更嚴(yán)重的情況可能會(huì)丟失客戶對(duì)企業(yè)的信任。其實(shí)不少數(shù)據(jù)庫(kù)漏洞都是由于管理員的一些不良習(xí)慣導(dǎo)致的。
下面是最常見(jiàn)的五個(gè)與數(shù)據(jù)庫(kù)相關(guān)的安全漏洞:
·不良的口令政策
·SQL注入
·交叉站點(diǎn)腳本
·數(shù)據(jù)泄漏
·不適當(dāng)?shù)腻e(cuò)誤處理
令人難以置信的是,企業(yè)仍經(jīng)常使用默認(rèn)的或者軟弱的口令來(lái)保護(hù)像數(shù)據(jù)庫(kù)一樣重要的在線資產(chǎn)。但是,這是一個(gè)很容易解決的問(wèn)題。補(bǔ)救措施是強(qiáng)制執(zhí)行強(qiáng)大的口令政策。也就是說(shuō),口令要定期變換,口令長(zhǎng)度最少為10位數(shù)并且包含字母和符號(hào)。采用這種政策,你將關(guān)閉攻擊者同向你的數(shù)據(jù)的方便之門。
SQL注入也依靠軟弱的數(shù)據(jù)庫(kù)實(shí)施,特別是在如何向數(shù)據(jù)庫(kù)發(fā)送SQL請(qǐng)求方面的實(shí)施。如果這個(gè)數(shù)據(jù)庫(kù)接受了用戶提供的不干凈的或者沒(méi)有經(jīng)過(guò)驗(yàn)證的數(shù)據(jù)產(chǎn)生的SQL請(qǐng)求,這就會(huì)為SQL注入攻擊敞開(kāi)大門。例如,通過(guò)修改從基于網(wǎng)絡(luò)的格式受到的信息,攻擊者能夠提供惡意的SQL請(qǐng)求并且把指令直接發(fā)送到數(shù)據(jù)庫(kù)。
要防止這種類型的攻擊,在讓這些數(shù)據(jù)接近你的腳本、數(shù)據(jù)訪問(wèn)程序和SQL查詢之前,保證所有用戶提供的數(shù)據(jù)是合法的是非常重要的。驗(yàn)證和清潔從用戶那里收到的數(shù)據(jù)的另一個(gè)理由是防止交叉站點(diǎn)腳本攻擊。這種攻擊能夠用來(lái)攻破連接到一個(gè)Web服務(wù)器的數(shù)據(jù)庫(kù)。黑客通過(guò)一個(gè)網(wǎng)絡(luò)蠕蟲把JavaScript等客戶方面的腳本注入到一個(gè)網(wǎng)絡(luò)應(yīng)用程序的輸出中。這些腳本用于收集cookie數(shù)據(jù)。這些數(shù)據(jù)經(jīng)常被錯(cuò)誤地用來(lái)存儲(chǔ)用戶賬戶登錄信息等資料。
一個(gè)經(jīng)常被忽略的問(wèn)題是什么時(shí)候建立一個(gè)數(shù)據(jù)庫(kù)應(yīng)用程序是泄漏數(shù)據(jù)。這是敏感的數(shù)據(jù)要發(fā)送的地方或者是非故意踢敏感數(shù)據(jù)的地方。這個(gè)錯(cuò)誤將導(dǎo)致不能保證訪問(wèn)數(shù)據(jù)庫(kù)備份磁帶的安全和控制這種訪問(wèn)。通常,更敏感的數(shù)據(jù)產(chǎn)生于有關(guān)數(shù)據(jù)的合法查詢的答案,就像從醫(yī)療處方判斷疾病一樣。常用的解決方案是監(jiān)視查詢方式以檢測(cè)這種行動(dòng)。
與數(shù)據(jù)泄漏密切相關(guān)的是在數(shù)據(jù)庫(kù)出現(xiàn)錯(cuò)誤時(shí)不適當(dāng)?shù)靥幚磉@些錯(cuò)誤。許多應(yīng)用程序顯示了詳細(xì)的信息。這些錯(cuò)誤信息能夠泄漏有關(guān)數(shù)據(jù)庫(kù)結(jié)構(gòu)的信息。這些信息能夠用來(lái)實(shí)施攻擊。要盡一切手段把這個(gè)錯(cuò)誤登記在你自己的記錄中,保證你的應(yīng)用程序不向用戶或者攻擊者返回任何有關(guān)這個(gè)錯(cuò)誤的詳細(xì)信息。
要完全保證你的數(shù)據(jù)庫(kù)的安全,你要把這個(gè)任務(wù)分為以下四個(gè)方面以確保進(jìn)行全面的檢查:
·服務(wù)器安全
·應(yīng)用程序安全
·數(shù)據(jù)庫(kù)連接
·數(shù)據(jù)庫(kù)和表格訪問(wèn)控制
數(shù)據(jù)庫(kù)服務(wù)器需要與其它任何服務(wù)器一樣加強(qiáng)以保證任何惡意黑客都不能通過(guò)操作系統(tǒng)的安全漏洞攻擊數(shù)據(jù)庫(kù)。更適宜的方法是數(shù)據(jù)庫(kù)應(yīng)該位于其自己的應(yīng)用層防火墻之后。
要幫助保證數(shù)據(jù)庫(kù)連接的安全的過(guò)程和定義訪問(wèn)控制,你應(yīng)該創(chuàng)建一個(gè)數(shù)據(jù)流動(dòng)圖表,跟蹤數(shù)據(jù)如何流過(guò)應(yīng)用程序的過(guò)程。接下來(lái),找到數(shù)據(jù)進(jìn)入或者退出另一個(gè)應(yīng)用程序的地方,并且檢查為這些進(jìn)入點(diǎn)和退出點(diǎn)分配的信賴等級(jí)。還要定義需要訪問(wèn)這個(gè)系統(tǒng)的外部用戶或者處理要求的最低權(quán)限。把安全作為關(guān)鍵的推動(dòng)因素來(lái)設(shè)置和建立你的數(shù)據(jù)庫(kù)將保證你的數(shù)據(jù)庫(kù)處于安全狀態(tài)。
【編輯推薦】