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

PHP魔術(shù)引號(hào)所帶來(lái)的安全問(wèn)題分析

 更新時(shí)間:2014年07月15日 08:50:02   投稿:shichen2014  
這篇文章主要介紹了PHP魔術(shù)引號(hào)所帶來(lái)的安全問(wèn)題分析,對(duì)于安全編碼來(lái)說(shuō)非常重要!需要的朋友可以參考下

PHP通過(guò)提取魔術(shù)引號(hào)產(chǎn)生的“\”字符會(huì)帶來(lái)一定的安全問(wèn)題,例如下面這段代碼片段:

// 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 \

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

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

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

相關(guān)文章

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

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

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

    關(guān)于PHP自動(dòng)判斷字符集并轉(zhuǎn)碼的詳解

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

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

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

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

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

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

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

    PHP序列化操作方法分析

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

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

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

    PHP 設(shè)置MySQL連接字符集的方法

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

    PHP中實(shí)現(xiàn)漢字轉(zhuǎn)區(qū)位碼應(yīng)用源碼實(shí)例解析

    PHP里如何實(shí)現(xiàn)漢字轉(zhuǎn)區(qū)位碼這個(gè)問(wèn)題一直困擾這大多程序員,那么下面這個(gè)源碼實(shí)例相信能給大家?guī)?lái)很大的幫助。
    2010-06-06
  • PHP實(shí)現(xiàn)登錄搜狐廣告獲取廣告聯(lián)盟數(shù)據(jù)的方法【附demo源碼】

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

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

最新評(píng)論