php防止sql注入代码实例
放到公用调用文件(如conn数据库链接文件),对所有GET或POST的数据进行过滤特殊字符串,以实现简单有效的SQL注入过滤
Function inject_check($sql_str) {
return eregi('select|insert|and|or|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile', $sql_str);
}
if (inject_check($_SERVER['QUERY_STRING'])==1 or inject_check(file_get_contents("php://input"))==1){
//echo "警告 非法访问!";
header("Location: Error.php");
}
相关推荐
-
php防止sql注入示例分析和几种常见攻击正则表达式
注入漏洞代码和分析 复制代码 代码如下: <?php function customError($errno, $errstr, $errfile, $errline) { echo "<b>Error number:</b> [$errno],error on line $errline in $errfile<br />"; die(); } set_error_handler("customError"
-
php中防止SQL注入的最佳解决方法
如果用户输入的是直接插入到一个SQL语句中的查询,应用程序会很容易受到SQL注入,例如下面的例子: 复制代码 代码如下: $unsafe_variable = $_POST['user_input'];mysql_query("INSERT INTO table (column) VALUES ('" . $unsafe_variable . "')"); 这是因为用户可以输入类似VALUE"); DROP TABLE表; - ,使查询变成: 复制代码 代
-
discuz的php防止sql注入函数
最近在做一个主题投票网站,客户懂一些程序方面的东西.有特别要求需要过滤一些字符防止sql注入.本来这方面就没有特别的研究过.呵呵,又发扬了一回拿来主义.把discuz论坛的sql防注入函数取了来! 复制代码 代码如下: $magic_quotes_gpc = get_magic_quotes_gpc(); @extract(daddslashes($_COOKIE)); @extract(daddslashes($_POST)); @extract(daddslashes($_GET)); if
-
PHP中防止SQL注入攻击和XSS攻击的两个简单方法
mysql_real_escape_string() 所以得SQL语句如果有类似这样的写法:"select * from cdr where src =".$userId; 都要改成 $userId=mysql_real_escape_string($userId) 所有有打印的语句如echo,print等 在打印前都要使用htmlentities() 进行过滤,这样可以防止Xss,注意中文要写出htmlentities($name,ENT_NOQUOTES,GB2312) .
-
探讨php中防止SQL注入最好的方法是什么
如果用户输入的是直接插入到一个SQL语句中的查询,应用程序会很容易受到SQL注入,例如下面的例子: 复制代码 代码如下: $unsafe_variable = $_POST['user_input'];mysql_query("INSERT INTO table (column) VALUES ('" . $unsafe_variable . "')"); 这是因为用户可以输入类似VALUE"); DROP TABLE表; - ,使查询变成: 复制代码 代
-
php防止sql注入的方法详解
一.什么是SQL注入式攻击? 所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令.在某些表单中,用户输入的内容直接用来构造(或者影响)动态SQL命令,或作为存储过程的输入参数,这类表单特别容易受到SQL注入式攻击.常见的SQL注入式攻击过程类如: ⑴ 某个ASP.NET Web应用有一个登录页面,这个登录页面控制着用户是否有权访问应用,它要求用户输入一个名称和密码. ⑵ 登录页面中输入的内容将直接用来构造动态的S
-
php防止SQL注入详解及防范
一个是没有对输入的数据进行过滤(过滤输入),还有一个是没有对发送到数据库的数据进行转义(转义输出).这两个重要的步骤缺一不可,需要同时加以特别关注以减少程序错误.对于攻击者来说,进行SQL注入攻击需要思考和试验,对数据库方案进行有根有据的推理非常有必要(当然假设攻击者看不到你的源程序和数据库方案),考虑以下简单的登录表单: 复制代码 代码如下: <form action="/login.php" method="POST"><p>Userna
-
PHP中防止SQL注入实现代码
一. 注入式攻击的类型 可能存在许多不同类型的攻击动机,但是乍看上去,似乎存在更多的类型.这是非常真实的-如果恶意用户发现了一个能够执行多个查询的办法的话.本文后面,我们会对此作详细讨论. 如 果你的脚本正在执行一个SELECT指令,那么,攻击者可以强迫显示一个表格中的每一行记录-通过把一个例如"1=1"这样的条件注入到WHERE子句中,如下所示(其中,注入部分以粗体显示): SELECT * FROM wines WHERE variety = 'lagrein' OR 1=1;'
-
浅析php过滤html字符串,防止SQL注入的方法
批量过滤post,get敏感数据 复制代码 代码如下: $_GET = stripslashes_array($_GET);$_POST = stripslashes_array($_POST); 数据过滤函数 复制代码 代码如下: function stripslashes_array(&$array) { while(list($key,$var) = each($array)) { if ($key != 'argc' && $key != 'argv' &&
-
PHP中怎样防止SQL注入分析
本文实例分析了PHP中怎样防止SQL注入.分享给大家供大家参考.具体分析如下: 一.问题描述: 如果用户输入的数据在未经处理的情况下插入到一条SQL查询语句,那么应用将很可能遭受到SQL注入攻击,正如下面的例子: 复制代码 代码如下: $unsafe_variable = $_POST['user_input']; mysql_query("INSERT INTO `table` (`column`) VALUES ('" . $unsafe_variable . "')
随机推荐
- angular4实现tab栏切换的方法示例
- vue.js学习之UI组件开发教程
- perl的INC设置分析
- 11个有用的Linux命令
- 利用python微信库itchat实现微信自动回复功能
- JS+CSS实现感应鼠标渐变显示DIV层的方法
- 详解JavaScript的表达式与运算符
- KnockoutJS 3.X API 第四章之表单textInput、hasFocus、checked绑定
- PHP图片加水印实现方法
- 在 Express 中使用模板引擎
- MYSQL事务回滚的2个问题分析
- php 模拟GMAIL,HOTMAIL(MSN),YAHOO,163,126邮箱登录的详细介绍
- PHP开发中常用的十个代码样例
- Python实现Mysql数据库连接池实例详解
- js读写cookie实现一个底部广告浮层效果的两种方法
- JS和jQuery通过this获取html标签中的属性值(实例代码)
- ruby 去掉文件里重复的行
- jquery.validate提示错误信息位置方法
- WordPress中的shortcode短代码功能使用详解
- Apache2+SVN+MYSQL认证 配置项详细步骤