<em id="0a85b"><option id="0a85b"></option></em>

<abbr id="0a85b"></abbr>

      <nobr id="0a85b"></nobr>
        <tr id="0a85b"></tr>
        9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
        學習啦 > 學習電腦 > 網(wǎng)絡知識 > 路由器 > 路由器基礎 > 如何修復SQL注入漏洞

        如何修復SQL注入漏洞

        時間: 若木632 分享

        如何修復SQL注入漏洞

          以下是OMG小編為大家收集整理的文章,希望對大家有所幫助。

          SQL注入是通過把SQL命令插入到Web表單遞交或輸入域名或頁面請求的查詢字符串,最終達到欺騙服務器執(zhí)行惡意的SQL命令。其實就是就是提交精心構造的數(shù)據(jù)庫語句,使其反饋一些有用的數(shù)據(jù)。說白了就是去欺騙數(shù)據(jù)庫,假如只有web服務器的話,是沒法進行SQL注入的。

          網(wǎng)上常用的注入手法有兩種,一種是猜測,讓數(shù)據(jù)庫暴出用戶名、密碼等信息;另一種直接繞過認證,取得權限。相對應,要想修復此類漏洞,就必須禁止特殊數(shù)據(jù)的提交或將特殊提交的數(shù)據(jù)修改。

          下面是不同腳本語言下的防注入過濾代碼,其實思想是一致的。

          1、 PHP防注入過濾代碼

          php 代碼復制內容到剪貼板

          

          /*************************

          說明: 判斷傳遞的變量中是否含有非法字符 如$_POST、$_GET

          功能: 防注入

          使用方法: 將下列代碼保存為ak,php,調用方式 在數(shù)據(jù)提交頁加上include("ak.php");

          **************************/

          function dowith_sql($str)

          //實現(xiàn)將特征碼兩邊加.

          {

          $refuse_str="exec|and|or|select|update|from|where|order|by|*|delete||insert|into|values|create|table|

          database|set|char|asc|cast|declare|

          //定義防注入的字符

          $arr=explode("|",$refuse_str);

          //將$refuse_str中的值單獨取出

          for($i=0;$i

          {

          $replace="[".$arr[$i]."]";

          $str=str_replace($arr[$i],$replace,$str);

          //在變量$str中搜索字符串$arr[$i],并將其替換為字符串[$replace]

          }

          return $str;

          }

          foreach ($_GET as $key=>$value)

          //遍歷獲GET方法獲得的參數(shù)$_GET的值傳給$key,并賦值給$value

          {

          $_GET[$key]=dowith_sql($value);

          //將$value中的特征碼處理傳個$_GET[$key]

          }

          foreach ($_POST as $key=>$value)

          {

          $_POST[$key]=dowith_sql($value);

          }

          ?>

          上面的防注入的方法只是防了GET與POST方法提交的數(shù)據(jù),但是,WEB服務器讀取數(shù)據(jù)的順序是,先取GET中的數(shù)據(jù),沒有再去POST中的數(shù)據(jù),沒有還會再去COOKIES中的數(shù)據(jù),上面的代碼還沒有防cookies注入。防cookies注入就比較簡單了,cookies的id值一般只為阿拉伯數(shù)字,但是cookies注入必須得在id中構造代碼,只要在獲得參數(shù)UID后,對其進行過濾就可以了,代碼如下:

          php 代碼復制內容到剪貼板

          

          if($_COOKIE[id]!=null) {

          //判斷cookies不為空

          foreach ($_COOKIE[id] as $key=>$id){

          //讀取cookies中的值

          if (is_numeric($id)<0){

          echo " ";

          }

          }

          }

          ?>

          將上述代碼保存為hk.php。

          所以在平時應用時,在網(wǎng)頁上加上include("ak.php");與include("hk.php");

          2、 ASP防注入過濾代碼

          <%

          --------說明------------------

          使用方法: 在需要防注的頁面頭部用 ???? SSI ????????
        包含就可以了

          友情提示:把代碼復制到CONN.asp(數(shù)據(jù)庫連接文件) 那么,只要包含了CONN的所有文件都防注了

          -------- ------------------------

          Dim xf_Post,xf_Get,xf_In,xf_Inf,xf_Xh,xf_db,xf_dbstr

          自定義需要過濾的字串,用 "|" 分隔

          xf_In = "|;|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"

          xf_Inf = split(xf_In,"|")

          If Request.Form<>"" Then

          For Each xf_Post In Request.Form

          For xf_Xh=0 To Ubound(xf_Inf)

          If Instr(LCase(Request.Form(xf_Post)),xf_Inf(xf_Xh))<>0 Then

          Response.Write ""

          Response.Write "非法操作!系統(tǒng)做了如下記錄↓
        "

          Response.Write "操作IP:"&Request.ServerVariables("REMOTE_ADDR")&"
        "

          Response.Write "操作時間:"&Now&"
        "

          Response.Write "操作頁面:"&Request.ServerVariables("URL")&"
        "

          Response.Write "提交方式:POST
        "

          Response.Write "提交參數(shù):"&xf_Post&"
        "

          Response.Write "提交數(shù)據(jù):"&Request.Form(xf_Post)

          Response.End

          End If

          Next

          Next

          End If

          If Request.QueryString<>"" Then

          For Each xf_Get In Request.QueryString

          For xf_Xh=0 To Ubound(xf_Inf)

          If Instr(LCase(Request.QueryString(xf_Get)),xf_Inf(xf_Xh))<>0 Then

          Response.Write ""

          Response.Write "非法操作!系統(tǒng)已經(jīng)給你做了如下記錄↓
        "

          Response.Write "操作IP:"&Request.ServerVariables("REMOTE_ADDR")&"
        "

          Response.Write "操作時間:"&Now&"
        "

          Response.Write "操作頁面:"&Request.ServerVariables("URL")&"
        "

          Response.Write "提交方式:GET
        "

          Response.Write "提交參數(shù):"&xf_Get&"
        "

          Response.Write "提交數(shù)據(jù):"&Request.QueryString(xf_Get)

          Response.End

          End If

          Next

          Next

          End If

          %>

          同樣,再將cookies防一下,代碼加在數(shù)據(jù)提交頁。

          if(Request.Cookies["uid"]!=null)

          {

          uid=Request.Cookies["uid"].value;

          isnumeric cooidesID = new isnumeric();

          //這是一個類

          if (cooidesID.reIsnumeric(ruid))

          //如果是數(shù)字就運行下面的

          {

          string str="select * from userTable where id="+uid;

          ...

          }

          }

          3、 JSP防注入過濾代碼

          

        75381 主站蜘蛛池模板: 亚洲黄色成人在线观看| 乳欲人妻办公室奶水| 欧美伊人色综合久久天天| 120秒试看无码体验区| 偷窥盗摄国产在线视频| 久久午夜私人影院| 韩国 日本 亚洲 国产 不卡| 农村乱色一区二区高清视频| 最近中文字幕国产精品| 久久精品第九区免费观看| 人妻丝袜中文无码av影音先锋| 久久亚洲av午夜福利精品一区| 少妇潮喷无码白浆水视频| 无码人妻aⅴ一区二区三区日本| 福利视频一区二区在线| 波多野结衣av无码| 日本中文一二区有码在线| 精品国产高清中文字幕| 精品夜恋影院亚洲欧洲| 福利一区二区不卡国产| 国产精品午夜福利视频| 国产麻豆放荡av激情演绎| 中文字幕免费不卡二区| 中文字幕久区久久中文字幕| 精品偷拍一区二区三区在| 免费无码一区无码东京热| av永久天堂一区| free性国产高清videos| 亚洲国产韩国一区二区| 一本大道久久香蕉成人网| 人妻一本久道久久综合鬼色| 国产精品一区中文字幕| 在线A级毛片无码免费真人| 精品自在拍精选久久| 最近中文字幕在线视频1| 国产一区二区在线影院| 亚洲伊人精品久视频国产| 亚洲午夜成人精品电影在线观看| 久久人人爽人人爽人人av| 久久天堂综合亚洲伊人HD妓女| 亚洲国产精品乱码一区二区|