App下載
話題 首頁 > SQL 教程 > SQL 教程話題列表 > 詳情

sql 注入對哪些數(shù)據(jù)庫有效果

精華
初一扛把子 2016-10-19 02:33:54 瀏覽(6231) 回復(fù)(7) 贊(0)
sql注入只對微軟的sql server有效么? 對其他數(shù)據(jù)庫無效?
sql

回答(7)

jing_cai 2016-10-19

我覺得你應(yīng)該先了解下什么是sql注入,所謂SQL注入式攻擊,就是攻擊者把SQL命令插入到Web表單的輸入域或頁面請求的查詢字符串,欺騙服務(wù)器執(zhí)行惡意的SQL命令。在某些表單中,用戶輸入的內(nèi)容直接用來構(gòu)造(或者影響)動態(tài)SQL命令,或作為存儲過程的輸入?yún)?shù),這類表單特別容易受到SQL注入式攻擊。 你可以了解下這個http://www.cnblogs.com/heyuquan/archive/...,sql注入是一種安全隱患,實際上跟是什么數(shù)據(jù)庫沒有直接關(guān)系,是程序過濾不完全導(dǎo)致的,簡單的注入就是用戶輸入了特殊字符,導(dǎo)致我們在代碼中的sql語句變了查詢的結(jié)果也不是我們想要的!

zxh877027287 2017-05-24

舉個栗子:你數(shù)據(jù)庫后臺腳本寫的是delete from table where name=A ;A 是變量。那么這個地方當(dāng)參數(shù)A的值是 z or columnName=3 .這樣會有什么后果呢?腳本拼接起來就成了 delete from table where name=z or columnName=3。除了刪除name=z的數(shù)據(jù)還會刪除columnName=3的所有數(shù)據(jù)。這樣講應(yīng)該就明白了吧。

學(xué)號:169815 2018-12-15

其實吧,我們現(xiàn)在寫sql直接都是預(yù)編譯sql,也就是說你想注入。。??赡苁菦]戲了

直接給你舉兩個例子吧!【】里面的代表實際sql位置傳入的參數(shù)

非預(yù)編譯

我們的代碼:select username,password from user where username=?

然后你傳入?yún)?shù)【123 or username is not null】

數(shù)據(jù)庫帶著你的參數(shù)傳進(jìn)去然后編譯這條sql語句

然后編譯結(jié)果就是:select username,password from user where username='123' or username is not null

最終執(zhí)行結(jié)果就是 所有的用戶都查出來了

接下來看看預(yù)編譯

我們的代碼:select username,password from user where username=?

然后你傳入?yún)?shù)【123 or username is not null】

然后數(shù)據(jù)庫編譯這條sql語句 select username,password from user where username=?

然后帶著你的參數(shù)放在username位置 發(fā)現(xiàn)是字符串,然后加上單引號‘’

然后執(zhí)行的sql就是:select username,password from user where username=‘123 or username is not null’

最終執(zhí)行結(jié)果就是沒有username=‘123 or username is not null’ 的

所以,這填空題你咋填都不對

(看不懂的仔細(xì)看看,有問題可以聯(lián)系qq670706603)

www1511263044 2018-01-22

我記得我上學(xué)的時候老師教過,簡單的表單很容易被sql注入攻擊?,F(xiàn)在很少見了。兄弟,別搞注入攻擊。學(xué)習(xí)是可以的,用注入攻擊別人的賬號是犯法的。例如盜別人的賬號

一筆荒蕪 2018-05-31

留名留名!!!,同樣的問題,看看咋結(jié)局!!!

1144100656 2018-05-31

快來解決啦!快來!快來! 快來 快來

1152696398 2018-05-31

剛學(xué)習(xí)程序,過來學(xué)習(xí)學(xué)習(xí)!!!!...

要回復(fù),請先登錄 或者注冊