sql注入

概念和原因

比如在登錄輸入框內(nèi)輸入“delete from xx”,點擊提交就會刪掉xx表。

windows環(huán)境發(fā)現(xiàn)注入點

使用sqlmap工具檢測注入點是否存在

安裝python(安裝sqlmap之前)

下載地址:https://www.python.org/downloads/,選擇2.7的python版本下載。
安裝注意:
1.安裝路徑一般默認是C:\Python27,可以修改,但是請記住。
2.將“Add python.exe to Path"項勾選,勾選后安裝完成不再需要單獨添加環(huán)境變量,默認是“去勾選”的。如果忘記勾選了,可以重新安裝或者手動添加C:\Python27到環(huán)境變量(不懂可以搜素環(huán)境變量的安裝)。
3.設(shè)置python到環(huán)境變量之后,重啟系統(tǒng),查看是否生效,“Win+R”,輸入cmd,然后輸入python,出現(xiàn)python版本等信息,證明安裝python成功。

安裝sqlmap

下載地址:http://sqlmap.org/
安裝注意:
1.將下載的SQLMAP安裝包解壓到文件夾sqlmap中,并拷貝到 "C:\Python27" 目錄下;
2.“Win+R”,輸入cmd,cd到剛剛的sqlmap文件夾,輸入sqlmap.py -h,出現(xiàn)sqlmap幫助信息,證明安裝成功了

sqlmap脫褲過程

“Win+R”,輸入cmd,cd到剛剛的sqlmap文件夾,
例子一:
輸入:sqlmap.py -u http://local.plat.twyyx.com/product/detail?id=9786 --dbs
結(jié)果:爆出所有的數(shù)據(jù)庫名稱
例子二:
輸入:-u "要查的url" --tables -D "要看database"
結(jié)果:爆出要查詢數(shù)據(jù)庫的所有表
例子三:
輸入:sqlmap.py -u http://local.plat.twyyx.com/product/detail?id=9786 --password
結(jié)果:爆出所有的數(shù)據(jù)庫用戶和密碼
具體更多功能可網(wǎng)上查找,對于需要登錄的注入點,可使用cookie參數(shù)

解決方法

1.單請求過濾用戶輸入
如果知道這個輸入值是int的,可以使用類型轉(zhuǎn)化成對應(yīng)的類型

2.全局過濾用戶輸入

function isExistSqlInject($inject_value) {
    $is_exist_sql_inject = false;
  // 注入關(guān)鍵字
    $inject_keyword = "'|and|exec|union|create|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare|xp_|or|--|+";
    $inject_value = strtolower($inject_value);
    $inject_keyword_arr = explode('|', $inject_keyword);
    foreach($inject_keyword_arr as $inject_keyword_one) {
        if (strpos($inject_keyword_one, $inject_value) >= 0) {
            $is_exist_sql_inject = true;
            break;
        }
    }

    return $is_exist_sql_inject; 
}

過濾值可補充,不建議使用此方法

3.使用pdo的參數(shù)綁定
一般的php框架都會使用pdo參數(shù)綁定,前提是要使用數(shù)組的方式傳參

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前提 sqlmap是基于python2.x進行開發(fā)的,所以要使用sqlmap請先安裝python2,建議安裝pyt...
    keitwo閱讀 4,159評論 0 2
  • 1.非盲注(頁面顯示查詢結(jié)果): 通過burpsuite抓包,獲取到post形式請求的id參數(shù)有漏洞,并直接用“o...
    夏夜星語閱讀 3,469評論 0 1
  • SQL注入 概念 危害 原理 實例 防御 基礎(chǔ) - ### SQL語句所用符號不同數(shù)據(jù)庫的sql注入與提權(quán)常見S...
    yddchsc君閱讀 1,515評論 1 10
  • 以下內(nèi)容來自《白帽子講web安全》一書 Step 查找注入點 輸入單引號',如果Web服務(wù)器開啟了錯誤回顯,那定是...
    creepycool閱讀 771評論 0 0
  • 1.SQL InjectionSQL注入) 使用工具:sqlmap 前提條件:安裝pythonget接口命令:p...
    James黃杰閱讀 478評論 0 1

友情鏈接更多精彩內(nèi)容