久久天天躁狠狠躁夜夜av,国产脚交足免费视频,亚洲小说乱欧美另类,五月天国产亚洲av麻豆

918搏天堂

?
產(chǎn)品咨詢:4000 258 365 | 申請(qǐng)產(chǎn)品演示 | 渠道合作 | English
內(nèi)容中心
按關(guān)鍵字查找
數(shù)據(jù)庫(kù)安全關(guān)鍵技術(shù)之SQL語(yǔ)法特征技術(shù)
作者:918搏天堂 發(fā)布時(shí)間:2016-12-30

SQL語(yǔ)法特征技術(shù)在數(shù)據(jù)庫(kù)安全產(chǎn)品的應(yīng)用中非常關(guān)鍵,比如數(shù)據(jù)庫(kù)防火墻(DBFirewall)需要有效撲獲SQL語(yǔ)句的特征,以及為了快速地對(duì)SQL語(yǔ)句進(jìn)行策略判定,以實(shí)現(xiàn)數(shù)據(jù)庫(kù)防火墻的高效處理,通過(guò)SQL語(yǔ)法特征技術(shù)的引入能夠?qū)崿F(xiàn)對(duì)SQL語(yǔ)句的重寫。

SQL語(yǔ)句重寫是指在不改變?cè)Z(yǔ)義的情況下,對(duì)數(shù)據(jù)庫(kù)防火墻捕捉到的SQL語(yǔ)句進(jìn)行重寫,替換原語(yǔ)句中的參數(shù)值。

SQL重寫能夠提高管理效率和操作速度,它是一個(gè)抽象的過(guò)程,SQL重寫包括以下幾個(gè)方面:

1.除了單雙引號(hào)內(nèi)的內(nèi)容,小寫字母全部變?yōu)榇髮懽帜福?/p>

2.準(zhǔn)確區(qū)分正負(fù)號(hào)和加減號(hào);

3.將SQL語(yǔ)句中的數(shù)值、單引號(hào)引起的字符串各自重寫為統(tǒng)一的占位符;

4.將注釋、換行重寫為空格,將連續(xù)的空格合并為1個(gè),去掉運(yùn)算符兩端等不影響語(yǔ)義的空格

以如下SQL語(yǔ)句為例:

Select +0.25 * money,sum(id) From “testdb”.accounts 

Where id = ' G1792 '  or name !=‘’/*this message come from Lisa*/

XSeure-DBF在SQL重寫的基礎(chǔ)上,根據(jù)SQL語(yǔ)法,對(duì)SQL進(jìn)行了多級(jí)分類。SQL多級(jí)分類是將具有相同操作行為的不同語(yǔ)句合并為一類,為SQL信息的查看和策略的定制提供了便利,且SQL分類編碼操作后,易于后續(xù)的計(jì)算、操作和存儲(chǔ)。

SQL分類主要分為三級(jí),分類的方向由細(xì)到粗,即二級(jí)分類是在一級(jí)分類的基礎(chǔ)上進(jìn)行的,三級(jí)分類是在二級(jí)的基礎(chǔ)上進(jìn)行的。

一級(jí)分類

基于目前的SQL重寫,即替換所有的可變“參數(shù)”數(shù)據(jù)為固定的“參數(shù)(例如,#)”,并且將所有謂詞全部大寫化(格式化為大寫字母)等。也就是說(shuō),一級(jí)分類的輸出是經(jīng)過(guò)“重寫”后的SQL語(yǔ)句。

二級(jí)分類

在一級(jí)分類的基礎(chǔ)上,對(duì)所有的謂詞、函數(shù)、比較運(yùn)算符進(jìn)行編碼后,生成摘要的字符串編碼,該編碼就是SQL的二級(jí)分類碼。

三級(jí)分類

在二級(jí)分類的基礎(chǔ)上,對(duì)所有的謂詞比較運(yùn)算符進(jìn)行編碼后,生成的摘要字符串編碼,該編碼就是SQL三級(jí)分類碼。

根據(jù)SQL分類的原則,假如有如下SQL語(yǔ)句:

1:SELECT salary*1.5 FROM employees WHERE job_id ='PU_CLERK';

2:SELECT salary*2 FROM employees WHERE job_id='SA_MAN';

3:SELECT employee_id FROM department WHERE department_name = 'HR';

4:SELECT department_id FROM employees WHERE salary <5000;

5:SELECT sum(salary) FROM employees WHERE job_id ='PU_CLERK';

6:SELECT max(salary) FROM employees WHERE job_id='PU_CLERK';

那么按照分類碼,DBFirewall看到的分析SQL,由三級(jí)到一級(jí)如下呈現(xiàn):

SELECT  FROM  WHERE  =

SELECT FROM WHERE = 

SELECT SALARY*0 FROM EMPLOYEES WHERE JOB_ID='#' 

SELECT EMPLOYEE_ID FROM DEPARTMENT WHERE DEPARTMENT_NAME='#'

SELECT  SUM FROM WHERE =

SELECT SUM(SALARY) FROM EMPLOYEES WHERE JOB_ID='#‘

SELECT  MIN FROM WHERE =

SELECT MIN(SALARY) FROM EMPLOYEES WHERE JOB_ID='#‘

SELECT DEPARTMENT_ID FROM EMPLOYEES WHERE SALARY<0

SELECT  MIN FROM WHERE <

SELECT DEPARTMENT_ID FROM EMPLOYEES WHERE SALARY<0

SQL語(yǔ)句格式化重寫后的結(jié)果為:

SELECT 0*MONEY,SUM(ID) FROM “testdb”.ACCOUNTS WHERE ID=’#’ OR NAME!=’’

SQL語(yǔ)法特征技術(shù)是數(shù)據(jù)庫(kù)通訊協(xié)議解析能力的一個(gè)關(guān)鍵技術(shù)點(diǎn),這個(gè)專利性的技術(shù)已經(jīng)被行業(yè)領(lǐng)先的數(shù)據(jù)庫(kù)安全廠商所掌握,將這項(xiàng)技術(shù)應(yīng)用到數(shù)據(jù)庫(kù)防火墻產(chǎn)品中,能夠有效提高SQL解析能力,實(shí)現(xiàn)更為精準(zhǔn)的危險(xiǎn)語(yǔ)句攔截,提高數(shù)據(jù)庫(kù)安全性能。


?
918搏天堂 ©2021 版權(quán)所有 京ICP備10053980號(hào)-1