PHP通用防注入安全代码

安全|防注入

简述:
/*************************

说明:

判断传递的变量中是否含有非法字符

如$_POST、$_GET

功能:

防注入

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

<?php

//要过滤的非法字符

$ArrFiltrate=array("'",";","union");

//出错后要跳转的url,不填则默认前一页

$StrGoUrl="";

//是否存在数组中的值

function FunStringExist($StrFiltrate,$ArrFiltrate){

foreach ($ArrFiltrate as $key=>$value){

if (eregi($value,$StrFiltrate)){

return true;

}

}

return false;

}

//合并$_POST 和 $_GET

if(function_exists(array_merge)){

$ArrPostAndGet=array_merge($HTTP_POST_VARS,$HTTP_GET_VARS);

}else{

foreach($HTTP_POST_VARS as $key=>$value){

$ArrPostAndGet[]=$value;

}

foreach($HTTP_GET_VARS as $key=>$value){

$ArrPostAndGet[]=$value;

}

}

//验证开始

foreach($ArrPostAndGet as $key=>$value){

if (FunStringExist($value,$ArrFiltrate)){

echo "<script language=\"javascript\">alert(\"Neeao提示,非法字符\");</script>";

if (empty($StrGoUrl)){

echo "<script language=\"javascript\">history.go(-1);</script>";

}else{

echo "<script language=\"javascript\">window.location=\"".$StrGoUrl."\";</script>";

}

exit;

}

}

?>
保存为checkpostandget.php

然后在每个php文件前加include(“checkpostandget.php“);即可

时间: 2024-08-31 07:32:59

PHP通用防注入安全代码的相关文章

php通用防注入与注入详细说明

还有服务器和mysql教程也要加强一些安全防范. 对于linux服务器的安全设置: 加密口令,使用"/usr/sbin/authconfig"工具打开密码的shadow功能,对password进行加密. 禁止访问重要文件,进入linux命令界面,在提示符下输入: #chmod 600 /etc/inetd.conf    //改变文件属性为600 #chattr +i  /etc/inetd.conf     //保证文件属主为root #chattr –i  /etc/inetd.c

ASP通用防注入代码.杜绝SQL注入隐患.提升网站安全

ASP通用防注入代码.杜绝SQL注入隐患.提升网站安全 <% '''''''''''''''''''''''''''''''''''''''''''''''' 'ASP通用防注入代码 '您可以把该代码COPY到头文件中.也可以单独作 '为一个文件存在,每次调用使用 '作者:y3gu - 2005-7-29 '''''''''''''''''''''''''''''''''''''''''''''''' Dim GetFlag Rem(提交方式) Dim ErrorSql Rem(非法字符) Di

通过cookies注入破解ASP通用防注入程序

在一次网站被注入木马后,很是郁闷,网站已经放入了通用的ASP防注入程序,但依然被注入. 在查阅了大量的资料后,终于发现了问题所在. 现在很多网站都加了防注入系统代码,你输入注入语句将无法注入~~感觉这样的防注入系统不错,但防注入系统没有注意到 Cookies 的问题!所以就有了Cookies注入~~ 我们来研究一下怎样情况下才会有Cookies注入!如果你学过ASP你应该会知道 Request.QueryString (GET) 或 Request.Form (POST)!呵,没错,这就是我们用

MSSQL通用防注入程序的漏洞

现在基于web的攻击一般都是注入.导致注入的原因一般为对变量的过滤不完全,从而可以使入侵者非法执行程序或查询修改任意数据.随着注入攻击的愈演愈烈,一些专门的过滤代码应运而生.但一些过滤代码的不完善很可能导致新的攻击.下面就以目前应用最广泛的过滤代码--SQL通用防注入程序为下列说明漏洞的成因.利用方法及防范措施. SQL通用防注入程序是由火狐的枫知秋编写的,功能相当完善的防注入代码.它能对定义的过滤字符实现get提交的过滤,并能记录攻击者的IP提交的数据信息.使用时只须在要防注入的文件头中加入代

PHP防注入函数代码总结

为了安全,我们常用到下面的函数来过滤一些传递过来的非法字符: PHP防注入函数  代码如下 复制代码 <?php //要过滤的非法字符 $ArrFiltrate=array("'",";","union","select","delete","'","or","and","="); //出错后要跳转的url,不填则默认前一

sql通用防注入系统

//防注入  代码如下 复制代码 $arrfiltrate=array("update","delete","selert","drop","exec","cast","'","union"); //出错后要跳转的url,不填则默认前一页 $strgourl=""; //是否存在数组中的值 function funstringe

经典php防注入函数代码

<?php教程 /************************* 说明: 判断传递的变量中是否含有非法字符 如$_post.$_get 功能: 防注入 **************************/ //要过滤的非法字符  这个过滤的字符 还可以增加 $arrfiltrate=array("'",";","union"); //出错后要跳转的url,不填则默认前一页 $strgourl=""; //是否存在数

.net 通用防注入代码

  using System;namespace web.comm{    /**//// <summary>    /// ProcessRequest 的摘要说明.    /// </summary>    public class ProcessRequest    {        public ProcessRequest()        {            //            // TODO: 在此处添加构造函数逻辑            //     

php通用防注入程序 推荐_php技巧

复制代码 代码如下: function jk1986_checksql() { $bad_str = "and|select|update|'|delete|insert|*"; $bad_Array = explode("|",$bad_str); /** 过滤Get参数 **/ foreach ($bad_Array as $bad_a) { foreach ($_GET as $g) { if (substr_count(strtolower($g),$bad