SQL注入攻击_百度百科

概念

SQL注入攻击是黑客对数据库进行攻击的常用手段之一。随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。
       SQL注入攻击属于数据库安全攻击手段之一,可以通过数据库安全防护技术实现有效防护,数据库安全防护技术包括:数据库漏扫、数据库加密、数据库防火墙、数据脱敏、数据库安全审计系统。

SQL注入攻击会导致的数据库安全风险包括:刷库、拖库、撞库。

SQL注入是从正常的WWW端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以市面的防火墙都不会对SQL注入发出警报,如果管理员没查看ⅡS日志的习惯,可能被入侵很长时间都不会发觉。但是,SQL注入的手法相当灵活,在注入的时候会碰到很多意外的情况,需要构造巧妙的SQL语句,从而成功获取想要的数据。

思路

1、发现SQL注入位置
       2、判断后台数据库类型
       3、确定XP_CMDSHELL可执行情况
       4、发现WEB虚拟目录
       5、上传ASP木马
       6、得到管理员权限

例子

1、某个网站的登录验证的SQL查询代码为:

strSQL = "SELECT * FROM users WHERE (name = '" + userName + "') and (pw = '"+ passWord +"');" 

2、恶意填入

userName = "1' OR '1'='1";

passWord = "1' OR '1'='1";

3、导致原本的SQL字符串被填为

strSQL = "SELECT * FROM users WHERE (name = '1' OR '1'='1') and (pw = '1' OR '1'='1');"

4、也就是实际上运行的SQL命令会变成下面这样的

strSQL = "SELECT * FROM users;"

因此达到无账号密码,亦可登录网站。所以SQL注入攻击被俗称为黑客的填空游戏。

应对办法

从安全技术手段上来说,可以通过数据库防火墙实现对SQL注入攻击的防范,因为SQL注入攻击往往是通过应用程序来进攻,可以使用虚拟补丁技术实现对注入攻击的SQL特征识别,实现实时攻击阻断。

具体是加入对SQL语句的类型及字符内容判断。

数据库 -- SQL注入攻击相关推荐

  1. PHP的SQL注入攻击的技术实现以及预防措施

    最近在折腾 PHP + MYSQL 的编程.了解了一些 PHP SQL 注入攻击的知识,总结一下经验.在我看来,引发 SQL 注入攻击的主要原因,是因为以下两点原因: 1. php 配置文件 php. ...

  2. SQL Server安全-加密术和SQL注入攻击

    SQL Server上的加密术 SQL Server上内置了加密术用来保护各种类型的敏感数据.在很多时候,这个加密术对于你来说是完全透明的:当数据被存储时候被加密,它们被使用的时候就会自动加密.在其他 ...

  3. ADO.NET笔记——带参数的查询防止SQL注入攻击

    相关知识: 把单引号替换成两个单引号,虽然能起到一定的防止SQL注入攻击的作用,但是更为有效的办法是把要拼接的内容做成"参数" SQLCommand支持带参数的查询,也就是说,可以 ...

  4. 防止sql注入攻击的方法总结

    SQL注入是一种利用未过滤/未审核用户输入的攻击方法("缓存溢出"和这个不同),意思就是让应用运行本不应该运行的SQL代码.通过把SQL命令插入到Web表单递交或输入域名或页面请求 ...

  5. 第三百九十二节,Django+Xadmin打造上线标准的在线教育平台—sql注入攻击,xss攻击,csrf攻击...

    第三百九十二节,Django+Xadmin打造上线标准的在线教育平台-sql注入攻击,xss攻击,csrf攻击 sql注入攻击 也就是黑客通过表单提交的地方,在表单里输入了sql语句,就是通过SQL语 ...

  6. jdbc之防sql注入攻击

    1.SQL注入攻击:     由于dao中执行的SQL语句是拼接出来的,其中有一部分内容是由用户从客户端传入,所以当用户传入的数据中包含sql关键字时,就有可能通过这些关键字改变sql语句的语义,从而 ...

  7. php安全编程—sql注入攻击

    原文:php安全编程-sql注入攻击 php安全编程--sql注入攻击 定义 SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语 ...

  8. Java程序员从笨鸟到菜鸟之(一百)sql注入攻击详解(一)sql注入原理详解

    前段时间,在很多博客和微博中暴漏出了12306铁道部网站的一些漏洞,作为这么大的一个项目,要说有漏洞也不是没可能,但其漏洞确是一些菜鸟级程序员才会犯的错误.其实sql注入漏洞就是一个.作为一个菜鸟小程 ...

  9. SQL注入攻击的种类和防范手段

    观察近来的一些安全事件及其后果,安全专家们已经得到一个结论,这些威胁主要是通过SQL注入造成的.虽然前面有许多文章讨论了SQL注入,但今天所讨论的内容也许可帮助你检查自己的服务器,并采取相应防范措施. ...

最新文章

  1. java 实现违章_基于JAVA的车辆违章查询数据调用代码实例
  2. 数字图像处理领域的二十四个典型算法及vc实现、第一章
  3. 网页上的图片怎么提取出来_如何在网站上提取图片素材
  4. 话里话外:实现信息化综合集成需要经历的五个阶段
  5. dataBinding和retrofit的使用
  6. C++空间分配器简述学习笔记
  7. ALGO-146算法训练 4-2找公倍数
  8. php excel数据导出
  9. 常用1寸,2寸照片标准尺寸
  10. css样式给标签加上小手图标
  11. win11自带的照片查看器无法打印问题解决
  12. 通过修复VMware软件解决虚拟机无法识别到U盘设备的问题
  13. python菜鸟教程官网绘图-Python Tkinter 画布(Canvas)
  14. BZOJ 2006超级钢琴
  15. EasyMesh - A Two-Dimensional Quality Mesh Generator
  16. java nio rewind_java.nio.ByteBuffer中的flip()、rewind()、compact()等方法的使用和区别
  17. 关于global_step参数
  18. 基于Django框架的零食商城系统之Python毕设选题推荐
  19. 重装系统+驱动安装过程(win10,华为magicbook,清洁安装)
  20. 2016年校园招聘总结

热门文章

  1. Flutter CustomScrollView使用介绍
  2. linux建.php文件,怎么在Linux创建文件?
  3. 你还在用浏览器翻译?华为手机按下1个“神奇”按钮,一键轻松翻译
  4. 虹科案例|虹科物联网安全防护平台-Realtek RTL8195A Wi-Fi 模块的主要漏洞
  5. Python 抛出异常
  6. java springboot公益捐款众筹小程序源码
  7. 【css】CSS3有哪些新特性
  8. java flyway_Flyway详解以及Springboot集成Flyway(转)
  9. 【C语言】经典题目(二)
  10. 七天学会python量化交易(一)