亚洲综合社区欧美综合色-欧美逼逼一区二区三区-国产老熟女高潮精品网站-国产日韩最新视频在线看

始創(chuàng)于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業(yè)
  • 60秒人工響應(yīng)
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補(bǔ)償
全部產(chǎn)品
您的位置: 網(wǎng)站首頁 > 幫助中心>文章內(nèi)容

利用PHP程序設(shè)定防止MySQL注入或HTML表單濫用

發(fā)布時間:  2012/5/29 18:12:43

MySQL注入的意圖是接管網(wǎng)站:(1tcdy.com)數(shù)據(jù)庫并竊取信息。常見的開源數(shù)據(jù)庫,如MySQL,已經(jīng)被許多網(wǎng)站:(1tcdy.com)開發(fā)人員用來儲存重要信息,如密碼,個人信息和管理信息。

MySQL之所以流行,是因為它與最流行的億恩科技服務(wù)器端腳本語言PHP一起使用。而且,PHP是主導(dǎo)互聯(lián)網(wǎng)的Linux- Apache億恩科技服務(wù)器的主要語言。因此,這意味著黑客可以很容易地利用PHP就像Windows的間諜軟件一樣。

黑客向一個無擔(dān)保的網(wǎng)頁表單輸入大量惡意代碼(通過下拉菜單,搜索框,聯(lián)系表單,查詢表單和復(fù)選框)。

惡意代碼將被送到MySQL數(shù)據(jù)庫,然后“注入”。要查看這個過程,首先考慮以下基本的MySQL SELECT查詢語句:

SELECT * FROM xmen WHERE username = ‘wolverine’

此查詢會向有“xmen”表的數(shù)據(jù)庫要求返回某一段MySQL中用戶名為“wolverine”的數(shù)據(jù)。

在Web表單中,用戶將輸入wolverine,然后這些數(shù)據(jù)將被傳到MySQL查詢。

如果輸入無效,黑客還有其他方法控制數(shù)據(jù)庫,如設(shè)置用戶名:

‘ OR ’‘=’‘

你可能認(rèn)為使用正常的PHP和MySQL句法執(zhí)行輸入是安全的,因為每當(dāng)有人輸入惡意代碼,他們將會得到一個“無效的查詢”的消息,但事實并非如此。黑客很聰明,且因為涉及數(shù)據(jù)庫清理和重設(shè)管理權(quán)限,任何一個安全漏洞都不容易糾正。

兩種對MySQL注入攻擊的常見誤解如下:

1.網(wǎng)管認(rèn)為惡意注入可用防病毒軟件或反間諜軟件清理。事實是,這種類型的感染利用了MySQL數(shù)據(jù)庫的弱點(diǎn)。它不能簡單地被任何反間諜軟件或防病毒程序刪除。

2. MySQL注入是由于復(fù)制了從另一臺億恩科技服務(wù)器或外部來源被感染的文件。事實并非如此。這種類型的感染是由于有人將惡意代碼輸入到網(wǎng)站:(1tcdy.com)不受保護(hù)表單,然后訪問數(shù)據(jù)庫。MySQL注入可通過刪除惡意腳本清除掉,而不是使用防病毒程序。

用戶輸入驗證流程

備份一個清潔的數(shù)據(jù)庫,并放置在億恩科技服務(wù)器外。輸出一套MySQL表并保存在桌面。

然后轉(zhuǎn)到億恩科技服務(wù)器,先暫時關(guān)閉表單輸入。這意味著表單不能處理數(shù)據(jù),網(wǎng)站:(1tcdy.com)被關(guān)閉了。

然后啟動清理進(jìn)程。首先,在您的億恩科技服務(wù)器上,清理遺留的混亂的MySQL注入。更改所有的數(shù)據(jù)庫,F(xiàn)TP和網(wǎng)站:(1tcdy.com)的密碼。

在最壞的情況下,如果你清理遲了,你可以再次檢查在您億恩科技服務(wù)器上運(yùn)行的隱藏程序。這些隱藏程序是黑客安裝的木馬。將其完全刪除并更改所有FTP權(quán)限。掃描億恩科技服務(wù)器上所有木馬程序和惡意軟件。

當(dāng)您修改PHP腳本程序時,將處理表單數(shù)據(jù)。防止MySQL注入的一個好辦法是:連用戶數(shù)據(jù)也不信任。用戶輸入驗證對于防止MySQL注入是相當(dāng)重要的。

設(shè)計一個過濾器篩選出用戶輸入,以下是幾點(diǎn)提示:

1.輸入到表單的是數(shù)字。你可以通過測試它等于或大于0.001 (假設(shè)你不接受一個零)驗證它是不是數(shù)字。

2.如果是Email地址。驗證其是否由允許的字符組合構(gòu)成,如“ @ ” ,A-Z,a-z或一些數(shù)字。

3.如果是人名或用戶名?梢酝ㄟ^是否包含任何非法字符驗證它,如and和*,是可用于SQL注入的惡意字符。

驗證數(shù)字輸入

下面的腳本驗證了是否輸入一個從0.001至無限大的有效數(shù)字。值得一提的是,在一個PHP程序中,甚至可以允許使用一定范圍內(nèi)的數(shù)字。使用此驗證腳本可確保輸入到表單的只是一個數(shù)字。

假設(shè)在程序中有三個數(shù)字變量;您需要將它們進(jìn)行驗證,我們將它們命名num1 , num2和num3:

//Validate numerical input

  if($_POST['num1'] >= 0.001 && $_POST['num2'] >= 0.001 && $_POST['num3'] >= 0.001)

  {

  }

  else

  {

  }

  ?>

And條件可被延長到能容納超過三個數(shù)字。所以,如果你有10個,您將只需要擴(kuò)展AND語句。

這可以用來驗證一個只接受數(shù)字的表單,如合同數(shù)量,許可證號碼,電話號碼等。

驗證文字和郵件地址的輸入

以下可以用于驗證諸如用戶名,名字以及電子郵件地址的表單輸入:

//Validate text input

  if (! preg_match('/^[-a-z.-@,'s]*$/i',$_POST['name']))

  {

  }

  else

  if ($empty==0)

  {

  }

  else

  {

  }

  ?>

該驗證腳本的一個優(yōu)點(diǎn)是,它不接受空白輸入。一些惡意用戶還通過空白投入操縱數(shù)據(jù)庫。使用上面的腳本,只驗證一個文字變量, “ $name”。這意味著,如果有三個文字變量,你可以分別對每個變量設(shè)置一個驗證腳本,以確保每一個變量都在進(jìn)入數(shù)據(jù)庫前通過了審查。


本文出自:億恩科技【1tcdy.com】

服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經(jīng)營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經(jīng)營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經(jīng)營性ICP/ISP證:贛B2-20080012
  • 服務(wù)器/云主機(jī) 24小時售后服務(wù)電話:0371-60135900
  • 虛擬主機(jī)/智能建站 24小時售后服務(wù)電話:0371-60135900
  • 專注服務(wù)器托管17年
    掃掃關(guān)注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號總部企業(yè)基地億恩大廈  法律顧問:河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號
      1
     
     
     
     

    0371-60135900
    7*24小時客服服務(wù)熱線