`
lfc_jack
  • 浏览: 139861 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类

防止SQL注入的几种方式

 
阅读更多
1、什么是SQL注入

简而言之,就是客户端向服务端发送请求时,将SQL指令插入到FORM表单或者URL中,达到欺骗服务器的目的,最终这些注入进去的SQL指令就会被服务器误认为是正常的SQL指令而执行,因此服务端的信息就存在被破坏或是泄露的危险。


2、SQL注入的防护

了解了SQL注入,就需要有针对性的进行预防,简单来说,可以考虑一下几种方式;


1)、永远不要信任客户端提交的数据,一定要对客户端提交的数据进行校验,校验可以考虑数据类型,字符长度或者正则表达式等方式。

2)、对客户端提交的数据进行转义,例如将" ' "转义为" \' "。

3)、采用预编译绑定变量的SQL语句而不是直接拼接SQL语句。

4)、避免在生产环境中,直接输出错误信息,因为这些错误信息有可能被攻击者利用。

5)、严格执行数据库账号权限管理。

6)、对用户敏感信息特别是密码做严格加密处理。
分享到:
评论

相关推荐

    C#防SQL注入代码的三种方法

    对于网站的安全性,是每个网站开发者和运营者最关心的问题。网站一旦出现漏洞,那势必将造成很大的损失。为了提高网站的安全性,首先网站要防注入,最重要的是服务器的安全... C#防SQL注入方法一  在Web.config文件中

    有效防止SQL注入的5种方法总结

    SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的...下面这篇文章主要给大家介绍了关于防止SQL注入的5种方法,教大家有效的防止sql注入,需要的朋友可以参考学习。

    Hibernate使用中防止SQL注入的几种方案

    Hibernate使用中防止SQL注入的几种方案 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。  在获取便利操作的同时...

    基于jQuery的SQL注入攻击防范实现

    其二, 编写动态网页的脚本语言多样化, 每种脚本对应一种防止SQL注入方法, 使程序不具有可 读性、标准性。文中着力解决基于服务器端处理SQL 注入攻击的缺陷, 故探寻了一种在客服端实现的基于jQuery 防止 SQL 注入...

    如何防止SQL注入.pdf

    防止SQL注入主要依赖于以下几种方法: 1. 使用参数化查询(预编译语句) 参数化查询是防止SQL注入的最有效手段之一。通过使用预编译语句(例如,在Java中使用PreparedStatement),可以确保用户输入被当作参数处理...

    SQL注入攻击的原理及其防范措施

    4.使用Web应用程序防火墙:使用Web应用程序防火墙,可以检测和防止SQL注入攻击。 5.定期更新和修补:定期更新和修补Web应用程序和数据库系统,可以防止已知的漏洞被攻击者利用。 在防范SQL注入攻击时,需要注意以下...

    php防止sql注入示例分析和几种常见攻击正则表达式

    主要介绍了php防止sql注入漏洞代码和分析,最近提供了几种常见攻击的正则表达式,大家参考使用吧

    PHP防止SQL注入与几种正则表达式讲解

    注入漏洞代码和分析  代码如下: <?php function customerror($errno, $errstr, $errfile, $errline) { echo <b>error number:</b> [$errno],error on line $errline in $errfile ; die(); } set...

    什么是SQL注入法攻击

    SQL 注入法攻击是指攻击者通过向数据库提交恶意的 SQL 代码,获取或修改数据库中的敏感信息或数据,或者获取系统管理员权限的攻击方式。这种攻击方式非常危险,因为它可以使攻击者获得对网站和数据库的完全控制权,...

    sql注入学习入门篇

    而在SQL Server数据库中,我们可以使用以下几种方式: * Error-based注入:使用错误信息来获取数据库信息。 * Union注入:使用union关键字来连接两个查询结果,从而获取更多的信息。 * stacked queries注入:使用...

    node-mysql中防止SQL注入的方法总结

    大家都知道SQL注入对于网站或者服务器来讲都是一个非常危险的问题,如果这一方面没处理好的话网站可能随时给注入了,所以这篇文章就给大家总结了node-mysql中防止SQL注入的几种常用做法,有需要的朋友们可以参考借鉴...

    动态代理模拟实现MybatisPlus SQL注入的功能.zip

    Mabits的动态SQL还允许开发者使用参数化查询,可以防止SQL注入攻击,并增强程序的安全性 学习经常用的几个标签 2.标签 标签是Mabits动态SQL中最常用的一个标签之一,它的作用是根据给定条件包含或排除不同的部分,以...

    MySQL解决SQL注入的另类方法详解

    主要介绍了MySQL解决SQL注入的另类方法,结合实例形式列举分析了几种防止SQL注入的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

    一款IDEA插件,可以实现生成Mysql的动态SQL,适合新手使用mybatis来写项目,加快项目落地周期.zip

    Mabits的动态SQL还允许开发者使用参数化查询,可以防止SQL注入攻击,并增强程序的安全性 学习经常用的几个标签 2.标签 标签是Mabits动态SQL中最常用的一个标签之一,它的作用是根据给定条件包含或排除不同的部分,以...

    MyBatis Dynamic SQL 动态sql案例.zip

    Mabits的动态SQL还允许开发者使用参数化查询,可以防止SQL注入攻击,并增强程序的安全性 学习经常用的几个标签 2.标签 标签是Mabits动态SQL中最常用的一个标签之一,它的作用是根据给定条件包含或排除不同的部分,以...

    UrlScan3.1_X86_X64工具及使用文档

    UrlScan3.1_X86_X64工具及使用文档 任何一种使用数据库web程序(当然,也包括桌面程序)都有被SQL注入的风险。防止被SQL注入,最基本的方法是在...我介绍几种对于ASP和ASP.NET有效的防止SQL注入的方案,而且是免费的。

    PHP100视频教程 53:PHP如何防止注入及开发安全

    就知道2 我们可以替换成我们需要的SQL语句如:and exists (select id from admin) 2、防止注入的几种办法3、PHP其他地方安全设置1、register_globals = Off 设置为关闭状态2、SQL语句书写时尽量不要省略小引号和单...

    PHP100视频教程 53:PHP如何防止注入及开发安全.rar

    2、防止注入的几种办法 3、PHP其他地方安全设置 1、register_globals = Off 设置为关闭状态 2、SQL语句书写时尽量不要省略小引号和单引号 3、正确的使用 $_POST $_GET $_SESSION 等接受参数,并加以过滤 4...

Global site tag (gtag.js) - Google Analytics