当前位置:主页   - 电脑 - 网络技术 - 网络安全
详解网站SQL注入攻击解决全过程
来源:网络   作者:   更新时间:2010-09-27
收藏此页】    【字号    】    【打印】    【关闭

  2009年3月17日上午,冠群金辰公司的工程师小李刚到公司,就接到了用户的电话:“怎么回事?我们的网站从今天早上开始就不能正常访问,是不是被黑了?”网站出了问题的用户显得格外着急。

  小李打开用户的网站主页,发现果然无法访问,页面一片空白,只是显示出如图1的一行英文,果然是受到了黑客攻击: 

详解网站SQL注入攻击解决全过程

  图片看不清楚?请点击这里查看原图(大图)。 

  找到问题

  小李当即决定赶到用户现场解决问题,确定网站受到了何种攻击。赶到现场之后,经过简单的测试,他判断用户主页是被进行了SQL注入攻击,因此不能正常访问。

  什么叫做SQL注入?其实就是一种利用一些网站程序员在编写代码的时候,没有对用户输入数据的合法性进行判断从而使应用程序存在的安全隐患,提交一段数据库查询代码,从而获得某些非公开数据的黑客攻击行为。也就是所谓的SQL Injection。

  于是小李利用专业的工具,对用户的网站进行了风险评估。结果不出所料,用户的网站存在着不少可以被黑客们利用的漏洞。

  首先小李使用专业的测试工具,对网站进行了测试评估,评估结果如图: 

详解网站SQL注入攻击解决全过程

  图片看不清楚?请点击这里查看原图(大图)。 

  从工具测试来看,此网站共有6个SQL注入点,48个 跨点攻击点!因此这个网站存在着很大的安全风险,需要立即对代码的安全加固进行防御,以保证网站的安全。

  解决问题

  随后,冠群金辰工程师对用户网站代码进行了人工分析,针对SQL的注入点进行查找,通过对数据库进行分析,发现早在2月份,用户的数据库已经被进行了SQL注入,以下是通过分析找到的多个表的注入点,如图:  

详解网站SQL注入攻击解决全过程

  图片看不清楚?请点击这里查看原图(大图)。 

  小李很快就将通过SQL注入而被破坏的数据进行了恢复,并且针对检测出来的漏洞,对用户网站进行了全面的安全加固,使网站得以正常访问。而整个过程,从小李来到客户现场之后到最终解决问题,只不过用了区区1小时!

  小李告诉用户,SQL注入是从正常的WWW端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以目前市面的防火墙都不会对SQL注入发出警报,如果管理员没查看IIS日志的习惯,可能被入侵很长时间都不会发觉。直到一段时间之后发现网页不能访问,才会发现网站早已经被侵入。而在发现网站被进行了SQL注入之后,一定要对网站应用程序进行多方面的测试查找,这样才能找到注入点,并对网站进行全面加固。

  想要避免网站受到SQL注入,冠群金辰工程师有以下安全建议:

  1.建议关闭或删除不必要的交互式提交表单页面,因为他们是黑客进行SQL注入的途径,关闭这些交互式页面可有效的阻止某些XSS跨站脚本的攻击与注入。而最有效的防治注入及跨站脚本攻击的方法,是在代码层就屏蔽掉不安全的script等危险字符。

  2.对漏洞注入点相关代码进行代码及SQL注入关键字的过滤,以规范代码安全性。

  3.不要在服务器端放置备份的文件以免受到感染,或备份的文件含有漏洞,造成切入点,比如index1.asp index2.asp products1.asp等。

其它资源
来源声明

版权与免责声明
1、本站所发布的文章仅供技术交流参考,本站不主张将其做为决策的依据,浏览者可自愿选择采信与否,本站不对因采信这些信息所产生的任何问题负责。
2、本站部分文章来源于网络,其版权为原权利人所有。由于来源之故,有的文章未能获得作者姓名,署“未知”或“佚名”。对于这些文章,有知悉作者姓名的请告知本站,以便及时署名。如果作者要求删除,我们将予以删除。除此之外本站不再承担其它责任。
3、本站部分文章来源于本站原创,本站拥有所有权利。
4、如对本站发布的信息有异议,请联系我们,经本站确认后,将在三个工作日内做出修改或删除处理。
请参阅权责声明