`

SQL注入相关概念

阅读更多
SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。

具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。

首先让我们了解什么时候可能发生SQL Injection。

假设我们在浏览器中输入URL www.sample.com,由于它只是对页面的简单请求无需对数据库动进行动态请求,所以它不存在SQL Injection,当我们输入www.sample.com?testid=23时,我们在URL中传递变量testid,并且提供值为23,由于它是对数据库进行动态查询的请求(其中?testid=23表示数据库查询变量),所以我们可以该URL中嵌入恶意SQL语句。

现在大家已经对SQL Injection的攻击有了初步的了解了,接下让我们学习如何防止SQL Injection。

总的来说有以下几点:

1.永远不要信任用户的输入,要对用户的输入进行校验,可以通过正则表达式,或限制长度,对单引号和双"-"进行转换等。

2.永远不要使用动态拼装SQL,可以使用参数化的SQL或者直接使用存储过程进行数据查询存取。

3.永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。

4.不要把机密信息明文存放,请加密或者hash掉密码和敏感的信息。

5.应用的异常信息应该给出尽可能少的提示,最好使用自定义的错误信息对原始错误信息进行包装,把异常信息存放在独立的表中。
分享到:
评论

相关推荐

    5_SQL注入简介.pptx

    数据库相关概念,SQL注入相关概念,注入漏洞分类SQL,注入利用工具防御,SQL注入漏洞等相关攻防。

    SQL注入的基本概念

    通过合规策略对服务器进行监控,确保服务器的运行、帐号在服务器上的操作符合预设的规则。日志:收集、整理服务器的日志信息,提供给管理员查看,并作为异常判断、故障排查的依据。进程:监控服务器上的进程,并对...

    五分钟快速搞懂什么是SQL注入-SQL注入详解(干货满满)

    文章以通俗易懂的语言和幽默感,介绍了SQL注入的概念、防范方法、实际案例等。通过生动的例子和简单的故事,读者可以快速上手SQL注入,并在实际项目中应用。 ### 适用人群 本文适用于所有对SQL注入感兴趣的初学者,...

    SQL注入原理及PHP防注入代码.pdf

    SQL注入基本概念,原理,防注入php代码以及 相关的图片实例,具体可下载查看。

    防止sql注入

    关于sql注入的概念,场景,及处理方法,对于想了解sql注入是什么及sql注入的解决方式,下载此文档是很有帮助的

    基于ASP.NET下SQL注入攻击防范与应用

    针对在ASP.NET下数据库的安全性,介绍了SQL注入攻击的概念,详细分析了几种攻击方式,并提出一些防范SQL注入攻击的措施,极大地减少SQL注入攻击的可能性,尽可能保证数据库安全,最后通过项目实例说明如何运用ASP...

    论文研究-基于ASP.NET的SQL注入分析及防范 .pdf

    基于ASP.NET的SQL注入分析及防范,宁璇,,本文介绍了SQL注入攻击的概念和攻击方式,总结了一套有效的防御方案,并通过ASP.NET开发的WEB应用程序对该方案进行了验证,极大地减

    防范SQL注入的应用分析

    Web服务器脚本攻击事件的增多反映出各种Web服务器漏洞的非...文章简要介绍了SQL注入攻击的概念和原理,以及SQL注入攻击的特点和实现过程,并在此基础上叙述了如何检测SQL注入攻击,总结了一般的SQL注入攻击的防范方法。

    实例讲解SQL注入攻击

    这是安全评估的一个部分,所以尽管我们之前没有使用过SQL注入来渗透网络,但对其概念也相当熟悉了。最后我们在这项任务中大获成功,现在来回顾一下这个过程的每一步,将它记录为一个案例。我们记录下了在多次错误的...

    使用PDO防sql注入的原理分析

    本文使用pdo的预处理方式可以避免sql注入。下面话不多说了,来一起看看详细的介绍吧 在php手册中’PDO–预处理语句与存储过程’下的说明: 很多更成熟的数据库都支持预处理语句的概念。什么是预处理语句?可以把它...

    SQL Server中视图,存储过程,注入

    存储过程优点三.SQL注入1.SQL注入概念2.如何防止SQL注入(1)不要使用动态SQL(2)不要将敏感数据保留在纯文本中(3)限制数据库权限和特权(4)避免直接向用户显示数据库错误(5)使用Web应用程序防火墙(WAF)(6)将数据库...

    10-IoC配置-依赖注入概念(DI)

    我相信很多朋友学习IOC概念的时候,查找了很多资料结果还是一头雾水,感觉高深难懂或者一知半解,而我这篇博客就是以通俗易懂的话语,用故事的方式,讲解IOC(控制反转)和DI(依赖注入)的概念,让大家不再晕,不再觉得...

    程序员的SQL金典.rar

     10.1.1 SQL注入漏洞原理  10.1.2 过滤敏感字符  10.1.3 使用参数化SQL  10.2 SQL调优  10.2.1 SQL调优的基本原则  10.2.2 索引  10.2.3 全表扫描和索引查找  10.2.4 优化手法  10.3 事务  10.3.1 事务...

    WebCruiser

    WebCruiser - Web 漏洞扫描器, 是一款非常实用的Web安全扫描工具,能够扫描SQL注入(SQL注入), Cross Site Scripting(跨站), Local File Inclusion(本地文件包含), Remote File Inclusion(远程文件包含), ...

    WebCruiser漏洞扫描器 v3.5.3.zip

    WebCruiser - Web 漏洞扫描器, 是一款轻量级但非常实用的Web安全扫描工具,能够扫描SQL注入(SQL注入), Cross Site Scripting(跨站), Local File Inclusion(本地文件包含), Remote File Inclusion(远程文件...

    Oracle Advanced PL/SQL Developer Professional Guide

    除了编程之外,本书还提供了有关开发工具SQL Developer的使用的工具建议,采用数据库环境中的最佳实践并保护PL / SQL代码中的易受攻击区域以避免代码注入。 关于作者 Saurabh K. Gupta是一位经验丰富的数据库技术...

    SQL插入表样例,数值自己可以替换

    简介AI生成,不保证简介正确。 SQL插入表资源简介 ...安全性考虑:强调在插入数据时需要考虑的安全性问题,如防止SQL注入攻击。 进阶技巧:介绍一些高级插入技巧,如使用子查询进行插入、批量插入等。

Global site tag (gtag.js) - Google Analytics