sql注入 ' or 1
例如:select * form table1 where name=" ' "+param+" ' "
一般param是從頁面輸入控制項傳遞來的資料
如果你在控制項中輸入 ***' or 1=1-- 那麼他將查詢所有的資料出來 -- 表示後面的都被注釋掉了
你還可以***' ; drop table table1 --那麼他將刪除該錶,其中;是用來分割sql語句
黑客利用sql注入來給**掛木馬,也就是將惡意指令碼**插入到sql資料庫相應的資料中;
防範sql:
1、輸入驗證,除了前台驗證外還需要後台驗證;真正的惡意攻擊將繞開前台驗證直接提交資料;
做驗證時應盡量採取白盒驗證,規定哪些字元才是合法字元,如:通過正規表示式規定
字母和數字是唯一輸入的字元;
盡量別使用黑盒驗證,如規定哪些是危險字元、特殊字元等;
因為設計編碼上的不同可能會導致某些危險輸入被忽略,而且攻擊者可以採用不同的編碼格式來欺騙驗證,如採用%0x、0011 來編碼。而且這樣做除了防範sql注入攻擊也是防範其他攻擊的一種有效手段。
2、盡量採用引數傳遞而非構造sql的方式傳遞引數,而且構造sql也對執行效率有影響。
3、減小資料庫訪問帳號的許可權,降低危害。
web安全 sql注入
所謂sql注入,就是通過把sql命令插入到web表單提交或輸入網域名稱或頁面請求的查詢字串,最終達到欺騙伺服器執行惡意的sql命令。具體來說,它是利用現有應用程式,將 惡意的 sql命令注入到後台資料庫引擎執行的能力,它可以通過在web表單中輸入 惡意 sql語句得到乙個存在安全漏洞的 上的資料庫,...
web安全 sql注入(一)
基於從伺服器接收到的響應 1.基於錯誤的sql注入 2.聯合查詢的型別,基於union 3.堆查詢注射,用分號連線兩個sql語句 4.sql 盲注,就是當網頁並不將執行sql語句的結果輸出,但是將sql語句執行了,這種sql注入稱為盲注,盲注分為 基於布林 sql 盲注,基於時間的 sql 盲注,基...
web安全SQL注入原理
sql注入即isql injection,是指攻擊者通過注入惡意的sql命令,破壞sql查詢語句的結構,從而達到執行惡意sql語句的目的。sql注入漏洞的危害是巨大的,常常會導致整個資料庫被 脫褲 儘管如此,sql注入仍是現在最常見的web漏洞之一。sql注入攻擊可以手工進行,也可以通過sql注入攻...