簡析 SQL注入

2021-07-04 15:10:30 字數 675 閱讀 1487

【什麼是sql注入】

所謂sql注入,就是通過把sql命令插入到web表單提交或輸入網域名稱或頁面請求的查詢字串,最終達到欺騙伺服器執行惡意的sql命令。

【怎樣做到的】

既然已經是執行惡意的sql命令了,那麼「犯罪分子」是怎樣欺騙伺服器的呢?

它是利用現有應用程式,將(惡意)的sql命令注入到後台資料庫引擎執行的能力,它可以通過在web表單中輸入(惡意)sql語句得到乙個存在安全漏洞的**上的資料庫,而不是按照設計者意圖去執行sql語句。

當應用程式使用輸入內容來構造動態sql語句以訪問資料庫時,

通過構建特殊的輸入作為引數傳入web應用程式,便會發生sql注入攻擊,

而這些輸入大都是sql語法裡的一些組合,通過執行sql語句進而執行攻擊者所要的操作。

【如何防範】

sql注入的產生原因通常表現在以下幾方面:①不當的型別處理;②不安全的資料庫配置;③不合理的查詢集處理;④不當的錯誤處理;⑤轉義字元處理不合適;⑥多個提交處理不當。

那麼怎樣防範sql注入呢?自己平常用的時候用過兩種方法:一種是限制使用者輸入特殊字元,將有可能導致sql注入攻擊的特殊字元禁用,第二種便是通過引數傳入sql語句,進行增刪改查。

【小結】

sql注入不僅是我們要去了解的東西,要懂得它的原理,知道如何去防範,避免自己的資料庫洩露,乙個不會洩露使用者個人資訊的應用程式才是乙個好程式。

strtok函式簡析

官方的strtok函式,用來通過分隔字元 不支援字串,傳入的串中每個字元單獨當分隔符,如下例子組合的如123會處理1而23會被跳過 返回分隔的串的首位址 比如呼叫strtok abc123def 123456 返回值是指向abc的指標 下次要獲得 def 需要呼叫strtok null,123456...

IP tcp udp 概念 簡析

ip層接收由更低層 網路介面層例如 乙太網裝置驅動程式 發來的資料報,並把該資料報傳送到更高層 tcp或udp層 相反,ip層也把從tcp或udp層接收來的資料報傳送到更低層。ip資料報是不可靠的,因為ip並沒有做任何事情來確認資料報是按順序傳送的或者沒有被破壞。ip資料報中含有傳送它的主機的位址 ...

elf 格式簡析

elf 格式簡析 elf file type is exec executable file entry point 0x308000 there are 4 program headers,starting at offset 52 program headers type offset virt...