国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

淺談保護(hù)代碼安全,PHP如何進(jìn)行注入

2024-05-04 21:52:39
字體:
供稿:網(wǎng)友
我們主要是從兩點(diǎn)出發(fā),因?yàn)槲覀兊墨@取的變量一般都是通過GET或者POST方式提交過來的,那么我們只要對GET和POST過來的變量進(jìn)行過濾,那么就能夠達(dá)到防止注入的效果。而且我們的PHP真是非常好,已經(jīng)內(nèi)置了$_GET和$_POST兩個(gè)數(shù)組來存儲所有變量,我們要做的工作就是過濾每個(gè)變量就可以了。

下面看具體的代碼:
/*
PHP開發(fā)資源網(wǎng) = 全球最大的PHP中文社群 = PHPer的網(wǎng)上家園
*/

/* Author: heiyeluren */
/* 過濾所有GET過來變量 */
foreach ($_GET as $get_key=%26gt;$get_var)
{
if (is_numeric($get_var))
if (is_numeric($get_var)) {
$get[strtolower($get_key)] = get_int($get_var);
} else {
$get[strtolower($get_key)] = get_str($get_var);
}
}

/* 過濾所有POST過來的變量 */
foreach ($_POST as $post_key=%26gt;$post_var)
{
if (is_numeric($post_var)) {
$post[strtolower($post_key)] = get_int($post_var);
} else {
$post[strtolower($post_key)] = get_str($post_var);
}
}

/* 過濾函數(shù) */
//整型過濾函數(shù)
function get_int($number)
{
return intval($number);
}
//字符串型過濾函數(shù)
function get_str($string)
{
if (!get_magic_quotes_gpc()) {
return addslashes($string);
}
return $string;
} a

那么我們把以上代碼放到一個(gè)公共的文件里,比如security.inc.php里面,每個(gè)文件里都include一下這個(gè)文件,那么就能夠給任何一個(gè)程序進(jìn)行提交的所有變量進(jìn)行過濾了,就達(dá)到了我們一勞永逸的效果。

另外,還有一些其他的過濾方法,比如采用我以前使用的關(guān)鍵字過濾的方法:http://dev.csdn.net/article/71/71475.shtm
還可以參考三尺寒冰寫的方法:http://www.fanghei.com/html/2005-06/20050607114008.htm

方法是不同的,但是核心就是為了我們的代碼更加安全。 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 景泰县| 巴林左旗| 株洲县| 宣威市| 闽清县| 普兰县| 张家港市| 昔阳县| 兰西县| 宁海县| 麦盖提县| 湟中县| 临洮县| 蕉岭县| 商丘市| 庐江县| 大连市| 大城县| 驻马店市| 秀山| 永新县| 留坝县| 明光市| 都兰县| 塔河县| 白城市| 邓州市| 教育| 普陀区| 左云县| 和田市| 象州县| 临湘市| 南昌市| 龙海市| 肃宁县| 台前县| 无极县| 耒阳市| 富源县| 拜城县|