|
SQL注入攻擊的本質:讓客戶端傳遞過去的字符串變成SQL語句,而且能夠被執行。
每個程序員都必須肩負起防止SQL注入攻擊的責任。
說起防止SQL注入攻擊,感覺很郁悶,這么多年了大家一直在討論,也一直在爭論,可是到了現在似乎還是沒有定論。當不知道注入原理的時候會覺得很神奇,怎么就被注入了呢?會覺得很難預防。但是當知道了注入原理之后預防不就是很簡單的事情了嗎?
第一次聽說SQL注入攻擊的時候還是在2004年(好像得知的比較晚),那是還是在寫ASP呢。在一次寫代碼的時候,有同事問我,你的這段代碼防注入攻擊了嗎?什么攻擊?這是什么呀。
后來到網上各種找,終于弄明白了是怎么攻擊進來的了。注入攻擊都是來自于客戶端,無論是表單提交、URL傳值還是Cookie等,其實原理都是一樣的。到了服務器端可以分成三種情況:數字、日期時間、字符串。
一、數字。
如何注入?
假設我們要實現一個顯示新聞的頁面,我們可能會隨手寫下下面的代碼:
string id = Request.QueryString["id"];string sql = "select * from news where ColID=" + id;
NET技術:預防SQL注入攻擊之我見,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。