<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        淺析MySQL的注入安全問題_MySQL

        來源:懂視網 責編:小采 時間:2020-11-09 19:50:54
        文檔

        淺析MySQL的注入安全問題_MySQL

        淺析MySQL的注入安全問題_MySQL:如果把用戶輸入到一個網頁,將其插入到MySQL數據庫,有機會離開了發生安全問題被稱為SQL注入敞開。這一課將教如何幫助防止這種情況的發生,并幫助保護腳本和MySQL語句。 注入通常發生在處理一個用戶輸入,如他們的名字,而不是一個名字,他們給一個會在不知不
        推薦度:
        導讀淺析MySQL的注入安全問題_MySQL:如果把用戶輸入到一個網頁,將其插入到MySQL數據庫,有機會離開了發生安全問題被稱為SQL注入敞開。這一課將教如何幫助防止這種情況的發生,并幫助保護腳本和MySQL語句。 注入通常發生在處理一個用戶輸入,如他們的名字,而不是一個名字,他們給一個會在不知不

        如果把用戶輸入到一個網頁,將其插入到MySQL數據庫,有機會離開了發生安全問題被稱為SQL注入敞開。這一課將教如何幫助防止這種情況的發生,并幫助保護腳本和MySQL語句。

        注入通常發生在處理一個用戶輸入,如他們的名字,而不是一個名字,他們給一個會在不知不覺中你的數據庫上運行的MySQL語句。

        永遠不要信任用戶提供的數據,只能驗證后處理這些數據,作為一項規則,這是通過模式匹配。在下面的例子中,用戶名被限制為字母數字字符加下劃線的長度在8到20個字符之間 - 根據需要修改這些規則。

        if (preg_match("/^\w{8,20}$/", $_GET['username'], $matches))
        {
         $result = mysql_query("SELECT * FROM users 
         WHERE username=$matches[0]");
        }
         else 
        {
         echo "username not accepted";
        }
        
        

        為了說明這個問題,認為這是摘要:

        // supposed input
        $name = "Qadir'; DELETE FROM users;";
        mysql_query("SELECT * FROM users WHERE name='{$name}'");
        
        

        函數調用應該是從用戶表中的名稱列的名稱相匹配用戶指定的檢索記錄。在正常情況下,名稱只包含字母數字字符或空間,如字符串髂骨。但在這里,給$name通過附加一個全新的查詢,調用數據庫變成災難:注入DELETE查詢刪除用戶的所有記錄。

        幸運的是,如果使用MySQL,在mysql_query()函數不會允許查詢堆疊,或在一個單一的函數調用執行多個查詢。如果嘗試到堆放查詢則調用失敗。

        其他PHP數據庫擴展,如SQLite和PostgreSQL則愉快地進行堆查詢,執行在一個字符串中的所有的查詢,并創建一個嚴重的安全問題。
        防止SQL注入:

        可以處理所有的轉義字符巧妙的腳本語言,比如Perl和PHP。 PHP的MySQL擴展提供的函數mysql_real_escape_string()輸入到MySQL的特殊字符進行轉義。

        if (get_magic_quotes_gpc()) 
        {
         $name = stripslashes($name);
        }
        $name = mysql_real_escape_string($name);
        mysql_query("SELECT * FROM users WHERE name='{$name}'");
        
        

        LIKE困境:

        為了解決的LIKE問題,一個自定義的轉義機制必須用戶提供的%和_字符轉換成文字。使用addcslashes()函數,讓可以指定一個字符范圍轉義。

        $sub = addcslashes(mysql_real_escape_string("%something_"), "%_");
        // $sub == \%something\_
        mysql_query("SELECT * FROM messages WHERE subject LIKE '{$sub}%'");
        
        

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        淺析MySQL的注入安全問題_MySQL

        淺析MySQL的注入安全問題_MySQL:如果把用戶輸入到一個網頁,將其插入到MySQL數據庫,有機會離開了發生安全問題被稱為SQL注入敞開。這一課將教如何幫助防止這種情況的發生,并幫助保護腳本和MySQL語句。 注入通常發生在處理一個用戶輸入,如他們的名字,而不是一個名字,他們給一個會在不知不
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产高清不卡免费在线| 老司机免费午夜精品视频| 亚洲成a人片在线观看中文动漫| 在线精品亚洲一区二区三区| 亚洲精品国产精品乱码在线观看| 久久精品国产亚洲AV无码娇色| 亚洲最大成人网色香蕉| 亚洲国产成人久久综合| 三级黄色免费观看| 91频在线观看免费大全| 亚洲妇女水蜜桃av网网站| 爱情岛论坛免费视频| 五月婷婷亚洲综合| 亚洲不卡1卡2卡三卡2021麻豆| 免费一级特黄特色大片| 最近免费视频中文字幕大全| 四虎永久在线精品免费影视| 亚洲成在人线av| sss日本免费完整版在线观看| 无码人妻一区二区三区免费| 亚洲性日韩精品国产一区二区| 亚洲欧洲校园自拍都市| 日韩欧美一区二区三区免费观看| 久久综合九九亚洲一区| 福利片免费一区二区三区| 成人免费毛片内射美女APP| 精品无码专区亚洲| 免费a级毛片高清视频不卡 | 香蕉视频在线观看免费| 丁香五月亚洲综合深深爱| 99久久免费中文字幕精品| 国产亚洲欧洲Aⅴ综合一区 | 亚洲熟妇少妇任你躁在线观看无码| A国产一区二区免费入口| 亚洲?V无码成人精品区日韩| 中文字幕成人免费高清在线视频| 亚洲黄色中文字幕| 99xxoo视频在线永久免费观看| 国产精品亚洲专区在线观看 | 久久亚洲国产伦理| 成**人免费一级毛片|