简单的sql注入是通过web页面中的输入框输入特殊的查询字符在程序没有顾虑的情况下可以非法登录或获取数据库的信息。
//像下面简单的判断用户名密码的sql语句
$name = $this->params['form']['name'];
$pwd = $this->params['form']['pwd'];
$loginSql = "select * from users where username = $name and password = $pwd ";
因为sql语句中包含and , or,;,等特殊字符,在没对用户输入进行过滤的情况下很容易造成sql注入,下面看几种常见的sql
1.知道用户名admin 不知道密码的情况下的注入,
归纳一下,主要有以下几点:
1.永远不要信任用户的输入。对用户的输入进行校验,可以通过正则表达式,或限制长度;对单引号和
双"-"进行转换等。
2.永远不要使用动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取。
3.永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。
4.不要把机密信息直接存放,加密或者hash掉密码和敏感的信息。
5.应用的异常信息应该给出尽可能少的提示,最好使用自定义的错误信息对原始错误信息进行包装
分享到:
相关推荐
SQL注入原理及程序开发预防,大家可以参考一下
SQL注入攻击是黑客常用的网络攻击手段之一。文章分析了SQL注入攻击的原理和攻击步骤,针对性地提出了从程序编写和服务器设置两方面有效预防SQL注入攻击的方法。
一、什么是XSS攻击 XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。...攻击者利用XSS漏洞旁路掉访问控制——例如同源策略(same origin policy)。...
案例预防SQL注入漏洞函数,一个word文档,网上转摘的。
ASP.NET下如何防范SQL注入式攻击
Asp.Net通用Sql防注入源码 Asp.Net程序员预防程序被sql注入攻击的必备知识.
ASP防SQL注入 news表的id字段是Integer型的,title字段是nvarchar(50)型的,执行的结果是把news表中id字段为10的记录的title字段的内容改成“1'2'3”.......
关于SQL注入步骤及预防攻略,具体设计到access和sqlserver
SQL注入攻击方法及预防措施的研究.pdf
SQL注入攻击全面预防办法及其应用.pdf
现在网络关于SQL注入方面的教程比较零散,大多数是针对某一类具体应用,难以作为预防SQL注入的完整解决方案。本书弥补了这一缺憾。
基于SQL注入的攻击与预防.docx
sql注入防护,预编译示例
SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库。下面这篇文章主要给大家介绍了关于防止SQL注入的5种方法,...
好在要防止ASP.NET应用被SQL注入式攻击闯入并不是一件特别困难的事情,只要在利用表单输入的内容构造SQL命令之前,把所有输入内容过滤一番就可以了。过滤输入内容可以按多种方式进行。
改压缩包包含一个工程,使用VS2005打开,主要内容有SQL注入的原理,预防方法(2_3种)。可查看详细的源代码
在ASP.net中如何预防SQL注入式攻击.pdf
Web应用系统中SQL注入的分析与预防 (1).pdf
本文实例讲述了PHP简单预防sql注入的方法。分享给大家供大家参考,具体如下: 出现sql注入一般都是因为语法不规范不严谨造成的,问题出现在sql语句上,而起决定性的是quote(’)。如下: $sql = "delete from ...