sql注入學習第一篇---基礎

SQL注入原理

SQL注入攻擊指的是通過構建特殊的輸入作爲參數傳入Web應用程序,而這些輸入大都是SQL語法裏的一些組合,
通過執行SQL語句進而執行攻擊者所要的操作,其主要原因是程序沒有細緻地過濾用戶輸入的數據,致使非法數據侵入系統。
根據相關技術原理,SQL注入可以分爲平臺層注入和代碼層注入。前者由不安全的數據庫配置或數據庫平臺的漏洞所致;
後者主要是由於程序員對輸入未進行細緻地過濾,從而執行了非法的數據查詢。 基於此,SQL注入的產生原因通常表現在以下幾方面:
①不當的類型處理; ②不安全的數據庫配置; ③不合理的查詢集處理; ④不當的錯誤處理; ⑤轉義字符處理不合適; ⑥多個提交處理不當。

Mysql注入有關知識點

1.首先sql語句對大小寫不敏感,會導致後臺程序對大小寫的檢測失效
2.註釋語句 – 單行註釋 /**/ 多行註釋
3.select 查詢語句
4.union操作符
5.concat() 合併
6.concat_ws()間隔符合並 _,’’,’’
7.group_concat() 分組合並
8.order by 排序
9.group by 分組
10.if() 判斷 判斷條件,值1,值2
11.sleep() 休眠
12.left() 返回最左邊的n字符str,
13.count() 總數
14.floor() 返回最大整數
15.round() 四捨五入
16.rand() 返回0-1 的隨機數
17.extract() 於返回日期/時間的單獨部分
18. + 連接符
19.常見函數 database(),version(),user(),@@datadir,
20.常用功能 load_file()讀取文件內容 into outfile 寫入文件,(前提是文件有寫入權限) substr() 截斷字符串 ascli 返回字符對應ascli碼 length() now() 系統時間,

21.mysql數據庫元信息(information_schema) schemata 存儲所有數據庫信息 tables 存儲表信息 columns 描述每個列信息

sql注入基本分爲常規sql注入和sql盲注 sql盲注分爲布爾型盲注和時間盲注

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章