当前位置:七道奇文章资讯安全技术网络技术
日期:2010-03-13 11:40:00  来源:本站整理

解析禁止或减轻SQL注入攻击实用招数[网络技术]

赞助商链接



  本文“解析禁止或减轻SQL注入攻击实用招数[网络技术]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

SQL注入攻击对企业安全形成宏大潜在威胁.一旦这种攻击得逞,黑客可操纵这种攻击危害你的网络并拜候破坏你的数据,乃至掌握你的电脑.

  什么是SQL注入?

  SQL注入的原理非常简单.当利用把客户数据当作一种输入的时刻,那些心胸不轨的人就有机会注入决心编写的数据,这些数据会招致输入行为会成为SQL查询的一部份.

  SQL注入是通过把SQL号令插入到Web表单递交或输入域名或页面恳求的查询字符串,终究到达拐骗服务器履行恶意的SQL号令,比方先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单分外简单遭到SQL注入式攻击.

  当利用程序利用输入内容来构造动态sql语句以拜候数据库时,会发生sql注入攻击.假如代码利用存储历程,而这些存储历程作为包含未挑选的用户输入的字符串来传送,也会发生sql注入.sql注入大概招致攻击者利用利用程序登陆在数据库中履行号令.假如利用程序利用特权太高的帐户衔接到数据库,这种问题会变得很严重.在某些表单中,用户输入的内容直接用来构造(大概影响)动态sql号令,大概作为存储历程的输入参数,这些表单分外简单遭到sql注入的攻击.而很多网站程序在编写时,没有对用户输入的合理性举行判断大概程序中本身的变量处理不当,使利用程序存在安全隐患.这样,用户便可以提交一段数据库查询的代码,按照程序返回的后果,得到一些敏感的信息大概掌握整个服务器,于是sql注入就发生了.

  比方,以下列代码为例:

  SELECT * FROM Users WHERE Username='$username' AND Password='$password'

  该代码旨在展示用户列表的用户名和密码记录.利用Web界面,当系统提醒输入用户名和密码的时刻,黑客大概会输入:

  1 or 1=1

  1 or 1=1

  后果是:

  SELECT * FROM Users WHERE Username='1' OR '1' = '1' AND Password='1' OR '1' = '1'

  黑客已经将OR条件成功注入考证历程.更糟糕的是,条件'1' = '1'普通为真,因此这个SQL查询常常会招致黑客绕过考证历程.

  用近似“;”的标记将另一个查询附加到已有查询之后(此附加查询还对一部份已有查询举行注释).黑客大概删除你的整个列表,乃至更改此中的数据.黑客可以用号令来掌握你的操作系统,从而操控你的电脑,并将之作为攻击你其他网络的一此中间站.总而言之,SQL注入攻击可带来以下后果:

  数据私密性的丧失

  数据完好性的丧失

  数据泄露

  侵害整个网络
若何才能避免SQL注入攻击呢?

  要做到防微杜渐,最重要的是清理数据和考证数据,这两项工作不能呈现怠惰.清理数据是指通过函数运行任何递交的数据(如MySQL的mysql_real_escape_string()函数),以确保任何有威胁的字符,如“’”, 不会以数据方法输入到SQL查询.

[1] [2]  下一页


  以上是“解析禁止或减轻SQL注入攻击实用招数[网络技术]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 解析禁止或减轻SQL注入攻击实用招数
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .