918搏天堂全面適配國產(chǎn)化操作系統(tǒng)及芯片CPU
數(shù)據(jù)安全治理關(guān)鍵技術(shù)之數(shù)據(jù)庫脫敏技術(shù)詳解
數(shù)據(jù)安全治理之API監(jiān)測系統(tǒng) ,解決API接口安全問題【918搏天堂】
新一代數(shù)據(jù)庫脫敏技術(shù),為敏感數(shù)據(jù)建立保護盾!
數(shù)據(jù)庫脫敏系統(tǒng)與金融行業(yè)案例解讀
數(shù)據(jù)安全治理建設(shè)思路的著力點——數(shù)據(jù)安全咨詢服務(wù)【918搏天堂】
數(shù)據(jù)庫防火墻功能有哪些?-數(shù)據(jù)安全-918搏天堂
數(shù)據(jù)安全關(guān)鍵技術(shù)之數(shù)據(jù)庫脫敏技術(shù)詳解【918搏天堂】
在數(shù)據(jù)庫面臨的安全威脅中,來自外部的安全攻擊,除利用數(shù)據(jù)庫自身的安全漏洞進行漏洞攻擊之外,另一種比較常見的方式就是SQL 注入攻擊。目前很多用戶存在誤區(qū):認為傳統(tǒng)部署的WAF可以防御此類攻擊,實則不然。這里我們簡單分析一下方SQL注入攻擊的技術(shù)原理。
實際上WAF無法對各種SQL注入的繞過手段進行窮舉;因此WAF提供了各種擴展,以幫助用戶根據(jù)實際情況進行規(guī)則擴展,以應(yīng)對各種新的攻擊,不如黑名單策略;但大量的規(guī)則將使WAF的性能大幅下降,進而影響整個系統(tǒng)的性能;同時可能還會造成某些誤殺。
因此更有效的方法是在WEB應(yīng)用和數(shù)據(jù)庫之間加入數(shù)據(jù)庫防火墻。數(shù)據(jù)庫防火墻對從WEB應(yīng)用發(fā)向數(shù)據(jù)庫的SQL語句進行語法解析,對符合SQL注入特征的攻擊行為進行告警和阻斷。
下面是加入了防火墻后的拓撲架構(gòu):

數(shù)據(jù)庫防火墻的防護策略、手段都是基于SQL協(xié)議解析而來;數(shù)據(jù)庫防火墻在防止SQL注入上徹底的解決了WAF以犧牲性能為代價的方式。數(shù)據(jù)庫防火墻和WAF配合使用的部署方式,將會使用戶的核心數(shù)據(jù)更加安全。
數(shù)據(jù)庫防火墻對SQL注入的防止,核心優(yōu)勢的之一在于它的部署位置,部署位置在應(yīng)用服務(wù)器之后。無論攻擊者采用了什么方式進行SQL注入攻擊行為的包裝,最終發(fā)送到數(shù)據(jù)庫端的都是純凈的SQL語句。
數(shù)據(jù)庫防火墻的核心優(yōu)勢之二,它是通過SQL語法解析技術(shù)而不是正則匹配技術(shù)進行SQL注入防御。通過SQL語法解析技術(shù)的性能更高,準確度更高。
數(shù)據(jù)庫防火墻的核心優(yōu)勢之三,它具備綜合防御的手段,以幫助即使被注入后的安全損失降到最低點。
數(shù)據(jù)庫防火墻可以并通過以下四點實現(xiàn)整體的安全防護:
1.判斷語句是否含有明顯的SQL注入特征,有則阻止
2.語句的高危命令被發(fā)現(xiàn),進行告警或阻斷
3.語句訪問的對象是否屬于該用戶訪問權(quán)限,若無則阻斷
4.限制語句的返回行數(shù),超過返回行則阻斷
加入數(shù)據(jù)庫防火墻后,數(shù)據(jù)庫防火墻會在數(shù)據(jù)庫之間獲取WEB應(yīng)用發(fā)送給數(shù)據(jù)庫的SQL語句。通過拿到的SQL語句,按照不同數(shù)據(jù)庫進行SQL協(xié)議解析。
通過協(xié)議解析把應(yīng)用發(fā)送的SQL語句還原成標準模式(去掉各種加入的符號,轉(zhuǎn)譯碼等),攻擊者曾經(jīng)使用的可繞闊WAF的手法,在這里都將被干掉,將變?yōu)楦蛹儍舻腟QL語句。
基于這些純凈的SQL語句,與預定義的SQL注入特征進行匹配,如:
· 常量表達式和注釋的組合
· 常量表達式和Union的組合
· 帶外函數(shù)的調(diào)用
· 拼接字符與or的組合
· 常用注入SQL函數(shù)等
除了SQL注入的特征的匹配外,一些高危的命令將被告警或阻斷,如truncate、drop、delete nowhere、insert nowhere等高危操作進行阻斷;防止攻擊行為造成大的災(zāi)害事故。
同時,可以對應(yīng)用發(fā)來的SQL語句,進行操作和對象的細粒度權(quán)限控制,可以防止應(yīng)用訪問一些敏感表;比如防止對SQL注入偵察階段常用的系統(tǒng)表的訪問。
即便有SQL注入被發(fā)送到數(shù)據(jù)庫端,數(shù)據(jù)庫防火墻也會通過行數(shù)控制來進一步限制數(shù)據(jù)庫每次的返回結(jié)果行數(shù),對于大批量的數(shù)據(jù)返回將進行阻斷,比如我們可以將某些敏感表的返回行數(shù)設(shè)定為不允許超過100,從而把損失減到最小。
綜上,通過數(shù)據(jù)庫防火墻無疑比WAF對SQL注入的防止更加徹底,能夠真正防御SQL注入攻擊帶來的數(shù)據(jù)庫安全威脅。