欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP魔術引號所帶來的安全問題分析

 更新時間:2014年07月15日 08:50:02   投稿:shichen2014  
這篇文章主要介紹了PHP魔術引號所帶來的安全問題分析,對于安全編碼來說非常重要!需要的朋友可以參考下

PHP通過提取魔術引號產生的“\”字符會帶來一定的安全問題,例如下面這段代碼片段:

// foo.php?xigr='ryat
function daddslashes($string, $force = 0) {
!defined('MAGIC_QUOTES_GPC') && define('MAGIC_QUOTES_GPC', get_magic_quotes_gpc());
if(!MAGIC_QUOTES_GPC || $force) {
if(is_array($string)) {
foreach($string as $key => $val) {
$string[$key] = daddslashes($val, $force);
}
} else {
$string = addslashes($string);
}
}
return $string;
}
...
foreach(array('_COOKIE', '_POST', '_GET') as $_request) {
foreach($$_request as $_key => $_value) {
$_key{0} != '_' && $$_key = daddslashes($_value);
}
}
echo $xigr['hi'];
// echo \

上面的代碼原本期望得到一個經過daddslashes()安全處理后的數(shù)組變量$xigr['hi'],但是沒有對變量$xigr做嚴格的類型規(guī)定,當我們提交一個字符串變量$xigr='ryat,經過上面的處理變?yōu)閈'ryat,到最后$xigr['hi']就會輸出\,如果這個變量引入到SQL語句,那么就會引起嚴重的安全問題了,對此再來看下面的代碼片段:

...
if($xigr) {
foreach($xigr as $k => $v) {
$uids[] = $v['uid'];
}
$query = $db->query("SELECT uid FROM users WHERE uid IN ('".implode("','", $uids)."')");

利用上面提到的思路,通過提交foo.php?xigr[]='&xigr[][uid]=evilcode這樣的構造形式可以很容易的突破GPC或類似的安全處理,形成SQL注射漏洞!對此應給與足夠的重視!

相關文章

  • PHP重定向與偽靜態(tài)區(qū)別

    PHP重定向與偽靜態(tài)區(qū)別

    偽靜態(tài)是SEO重要的方法,通過重定向來實現(xiàn),并且可以通過重定向來隱藏網站的技術,過濾異常訪問。本課分為兩部分,前半部分詳細介紹Apache重定向的基礎知識,后半部分通過多個實際案例再次加深對重定向的理解,并且會演示各種重定向設置后的實際效果。
    2017-02-02
  • 關于PHP自動判斷字符集并轉碼的詳解

    關于PHP自動判斷字符集并轉碼的詳解

    本篇文章是對PHP自動判斷字符集并轉碼進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • PHP下escape解碼函數(shù)的實現(xiàn)方法

    PHP下escape解碼函數(shù)的實現(xiàn)方法

    很多時候需要用到js的escape函數(shù)來轉換中文字符,可是用js轉換后的字符怎么用php來轉換回來呢,下面我就找到了兩個很實用的函數(shù)。
    2010-08-08
  • PHP中使用foreach()遍歷二維數(shù)組的簡單實例

    PHP中使用foreach()遍歷二維數(shù)組的簡單實例

    下面小編就為大家?guī)硪黄狿HP中使用foreach()遍歷二維數(shù)組的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • PHP使用PDO抽象層獲取查詢結果的方法示例

    PHP使用PDO抽象層獲取查詢結果的方法示例

    這篇文章主要介紹了PHP使用PDO抽象層獲取查詢結果的方法,結合實例形式分析了php使用PDO抽象層獲取查詢結果的三種常用方式及相關函數(shù)使用技巧,需要的朋友可以參考下
    2018-05-05
  • PHP序列化操作方法分析

    PHP序列化操作方法分析

    這篇文章主要介紹了PHP序列化操作方法,結合實例形式分析了php序列化的原理、實現(xiàn)方法、相關函數(shù)與操作技巧,需要的朋友可以參考下
    2016-09-09
  • PHP延遲靜態(tài)綁定的深入講解

    PHP延遲靜態(tài)綁定的深入講解

    這篇文章主要給大家介紹了關于PHP延遲靜態(tài)綁定的相關資料,這是最近工作中遇到的一個功能,通過查找相關的資料整理了這篇文章,分享出來供大家參考學習,需要的朋友們下面隨著小編來一起學習學習吧。
    2018-04-04
  • PHP 設置MySQL連接字符集的方法

    PHP 設置MySQL連接字符集的方法

    我之前總是使用 mysql_query("SET NAMES 'utf8'"); 來設置 MySQL 的默認連接字符集;但是今天發(fā)現(xiàn)了一個 PHP 推薦的代替這個方法的設置 MySQL 連接字符集的函數(shù)
    2011-01-01
  • PHP中實現(xiàn)漢字轉區(qū)位碼應用源碼實例解析

    PHP中實現(xiàn)漢字轉區(qū)位碼應用源碼實例解析

    PHP里如何實現(xiàn)漢字轉區(qū)位碼這個問題一直困擾這大多程序員,那么下面這個源碼實例相信能給大家?guī)砗艽蟮膸椭?/div> 2010-06-06
  • PHP實現(xiàn)登錄搜狐廣告獲取廣告聯(lián)盟數(shù)據的方法【附demo源碼】

    PHP實現(xiàn)登錄搜狐廣告獲取廣告聯(lián)盟數(shù)據的方法【附demo源碼】

    這篇文章主要介紹了PHP實現(xiàn)登錄搜狐廣告獲取廣告聯(lián)盟數(shù)據的方法,涉及php基于curl的遠程數(shù)據操作相關技巧,需要的朋友可以參考下
    2016-10-10

最新評論