SQL注入攻击原理和攻击实例_第1页
SQL注入攻击原理和攻击实例_第2页
SQL注入攻击原理和攻击实例_第3页
SQL注入攻击原理和攻击实例_第4页
SQL注入攻击原理和攻击实例_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

简说SQL注入攻击原理和攻击摘要:随着网络技术的高速发展,互联网已经渗入到人们生活的方方面面,人们对其依赖程度越来越高,截至6月,我国网民规模达亿,人均周上网时长达小时。大多数的网站的顾客注册数量不停增加,攻击网站盗取顾客信息的网络犯罪不停增加。其中,SQL注入攻击为主的web脚本攻击作为进入内网的首选,成为黑客渗入测试中重要的技术之一。核心字:SQL注入,web应用程序IIS防备什么是SQL注入攻击程序员的水平及经验也参差不齐,相称大一部分程序员在编写代码的时候,没有对顾客输入数据的正当性进行判断,使应用程序存在安全隐患。攻击者能够提交一段精心构造的数据库查询代码,根据返回的成果,获得某些他想得知的数据,这就是所谓的SQLInjection,即SQL注入。可能造成SQL注入的隐患1、随着B/S(浏览器/服务器)模式应用开发的发展,从事动态网页以及脚本编程的程序员越来越多,通过一段时间的学习,程序员就能编写一种看起来完美的动态网站,在功效上,很容易就能实现。但是由于程序员的水平及经验也参差不齐,相称大一部分程序员在编写代码时意识不到或看不出漏洞的存在,给攻击者提供便利条件。程序或系统对顾客输入的参数不进行检查和过滤,没有对顾客输入数据的正当性进行判断,或者程序中本身的变量解决不当,使应用程序存在安全隐患。3、由于SQL注入是从正常的www端口访问,重要是针对web应用程序提交数据库查询请求的攻击,与正常的顾客访问没有什么区别,因此能够容易的绕过防火墙直接访问数据库,甚至能够获得数据库所在的服务器的访问权限。SQL注入的重要危害1、未经授权状况下操作数据库中的数据,例如管理员账号和密码,顾客账号和密码等信息;2、恶意篡改网页内容,宣传虚假信息等;3、私自添加系统帐号或者是数据库使用者帐号;4、网页挂广告、木马病毒等;5、上传webshell,进一步得到系统权限,控制电脑.获得肉鸡。SQL注入的特点广泛性:SQL注入攻击能够跨越Windows、UNIX、Linux等多个操作系统进行攻击,其攻击目的非常广泛。并且现在web应用程序应用广泛,而存在的漏洞也都大致含有相似性。隐蔽性SQL注入是从正常的www(80)端口访问,它是为HTTP即超文本传输合同开放的,是万维网传输信息使用最多的合同。通过该端口的数据都是被防火墙所许可的,因此防火墙不会对SQL注入的攻击进行拦截,使得攻击者能够顺利的通过防火墙。如果管理员没查看IIS日志的习惯,可能被入侵很长时间都不会发现。3、攻击时间短可在短短几秒到几分钟内完毕一次数据窃取、一次木马种植、完毕对整个数据库或Web服务器的控制。4、危害大现在的电子商务等都是基于WEB的服务,交易量巨大,一旦遭到攻击后果不堪构想。另首先,是有关个人信息的窃取,用之前的12306网站顾客资料泄露来说引发了很大的社会反响。SQL注入攻击实现原理SQL注入攻击是存在于常见的多连接的应用程序中的一种漏洞,攻击者通过在应用程序预先定义好的查询语句结尾加上额外的SQL语句元素,欺骗数据库服务器执行非授权的任意查询。这类应用程序普通是Web应用程序,它允许顾客输入查询条件,并将查询条件嵌入SQL语句中,提交到数据库中执行。通过构造畸形SQL语句攻击者能够获取额外的信息数据。当应用程序使用输入内容来构造动态SQL语句以访问数据库时,会发生SQL注入攻击。如果代码使用存储过程,而这些存储过程作为包含未筛选的顾客输入的字符串来传递,也会发生SQL注入。SQL注入可能造成攻击者使用应用程序登陆在数据库中执行命令。如果应用程序使用特权过高的帐户连接到数据库,这种问题会变得很严重。在某些表单中,顾客输入的内容直接用来构造动态SQL命令,或者作为存储过程的输入参数,这些表单特别容易受到SQL注入的攻击。而许多网站程序在编写时,没有对顾客输入的正当性进行判断或者程序中本身的变量解决不当,使应用程序存在安全隐患。这样,顾客就能够提交一段数据库查询的代码,根据程序返回的成果,获得某些敏感的信息或者控制整个服务器,于是SQL注入就发生了。

SQL注入攻击过程进行SQL注入时普通会用到两种方式,第一是手工注入,第二是工具注入。我理解到的对于猜解管理员的密码方面普通用Pangolin或者NBSI,找后台普通用明小子,啊D。其总体思路是:(1)扫描目的网络信息(判断与否存在SQL注入漏洞);(2)判断后台数据库类型;(3)发现WEB虚拟目录(4)上传ASP木马;(5)得到管理员权限。具体介绍以下:1、SQL注入普通存在于形如:的网站中。2、在背面追加“and1=1”,并访问该网址即and1=1应当与访问原地址得到的成果相似。3、在背面追加“and1=2”,并访问该网址即and1=2应当与访问原地址得到的成果不同,并提示数据库错误。(2,3同时满足则此网站必然存在SQL漏洞,能够进行sql注入攻击。)4、访问andexists(select*from网站数据库惯用表段名)网站数据库惯用表段名:adminusersadministrator等,如果进入的网页像环节二同样,是正常网页,证明存在该表段名。找寻该SQL数据库使用的表名,进而寻找网站的管理员名、密码等信息。5、访问andexists(select[网站数据库惯用字段名]from第4步找到的可入侵表名)网站数据库惯用字段名:adminpasswordusername等,如果进入的网页像环节2同样,是正常网页,证明存在该字段名。找寻该SQL数据库使用的字段名,进而寻找网站的管理员名、密码等信息。6、访问andexists(select*from第4步找到的可入侵表名where第5步找到的可入侵字段名like'_‘)7、访问可入侵后门字段名,找到网站后门。8、运用从数据库中查到的敏感数据进入网站后门。SQL注入实例演示现在的Web应用中,绝大多数都会向顾客提供一种接口,用来进行权限验证、搜索、查询信息等功效。这很容易被运用进行SQL注入。假设一种网站,顾客必须输入产品ID才能够查看该产品的具体信息,顾客仅仅能够查看懂得ID的产品。假设产品信息都寄存在一种叫做products的表中。格式Select*from表名where字段=xx所使用的语句Select*fromproductswhereproduct_id=‘+顾客输入的ID+’正常状况下:Select*fromproductswhereproduct_id=‘325’异常状况输入ID为‘or‘1’=‘1Select*fromproductswhereproduct_id=‘‘or‘1’=‘1’条件永远为真,相称于Select*fromProductsSQL注入实例假设这样一种情景,一种网页的后台入口处需要验证顾客名和密码,验证程序的SQL语句是这样写:Select*fromadminwhereuser=‘’andpass=‘’如果顾客填写的顾客名和密码都是:‘abc’or‘1’=‘1’那么将造成SQL语句是:Select*fromadminwhereuser=‘abc’or‘1’=‘1’andpass=‘abc’or‘1’=‘1’这条语句是永真式,那么攻击者就成功登陆了后台。这就是最简朴的SQL注入方式。SQL注入攻击的防备1、SQL注入攻击防备办法:(1)程序员加强本身技术水平,使用固定开发的原则;(2)在提交服务端解决之前对数据的正当性进行检查;(3)封装客户端提交信息;(4)替代或删除敏感字符、字符串;(5)错误信息不返回给顾客;(6)数据敏感信息非常规加密,避免信息外泄。(7)加强数据库检查(表构造与否出现异常、与否有多出数据等)、IIS日志检查(SQL注入攻击往往会大量访问某一种存在漏洞的网页,日志文献会急剧增加,通过查看日志文献的大小以及日志文献中的内容。);(8)不用字串连接建立SQL查询,而使用SQL变量,由于变量不是能够执行的脚本;(9)使用SQL注入防备系统。2、SQL注入攻击防备系统:防备系统对访问网页提交的核心字(涉及Get、Post方式以及cookie)进行过滤,一旦发现违法的核心字的时候(如‘、;、and、exec、select、insert等)就提示非法访问,并将该IP地址存入服务器黑名单数据库,使得该IP不能再访问该网址。SQL注入防备系统的流程图:web应用布署前使用防止工具进行严格的安全性测试,如PangolinPangolin(中文译名为穿山甲)一款协助渗入测试人员进行Sql注入测试的安全工具,是深圳宇造诺赛科技有限公司(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论