【编者按】本文为了能够更为清晰的表述SQL注入在Ajax时代依然是安全隐患,在互联网上随机搜索到存在此类安全漏洞的网站。
这个例子也证明了SQL注入并非是Web1.0时代的专利,当新兴技术如Ajax发展促使互联网演进到2.0时代时,这种入侵方法依然存在,依然值得我们警惕。
同时我们郑重声明,本文作者寻找漏洞只是为了“依靠事实说话”而已,没真正入侵其服务器。我们承认较之以往,Ajax技术给我们带来的诸多便利,但这并不表明Ajax技术是功能较多的,用户再也不需要自己动手处理安全问题。
【IT168 专稿】 Ajax时代来临了,它已经成为Web 2.0技术核心支柱。然而在这个新时代即将来临之时,我们想提醒的是,以前有的安全隐患并不会因为新技术的应用而消失,其最明显的例子就是,SQL注入安全隐患。
许多网站程序在编写时,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码(一般是在浏览器地址栏进行,通过正常的www端口访问),根据程序返回的结果,获得某些想得知的数据,这就是所谓的SQL Injection,即SQL注入。
SQL注入通过网页对网站数据库进行修改。它能够直接在数据库中添加具有管理员权限的用户,从而最终获得系统管理员权限。黑客可以利用获得的管理员权限任意获得网站上的文件或者在网页上加挂木马和各种恶意程序,对网站和访问该网站的网友都带来巨大危害。
SQL注入基本概念请见:SQL注入入门篇(http://www.ixpub.net/thread-655768-1-1.html)
在我们的实际生活中,寻找“ajax+sql注入”的例子并不困难,而且其寻找过程也很简单,只需经过以下五个步骤即可:
1, 搜索“用户注册”,搜索出来的记录一个一个打开。
2, 测试是否使用了Ajax。
3, 找到check页面。
4, 在check页面里的提交用户名参数那里,给用户名做下手脚然后在地址栏重新提交。
5, 如果发现500错误(web服务器默认错误—服务器内部错误),就说明他存在注入漏洞。
按照上面的步骤,竟然发现了某大型IT网站的注入漏洞!步骤写的简单,具体的方法也有取巧的部分,首先打开找到的网页(当然是用户注册页面),输入会员名称。继续输入密码,弹出消息框:
![]() |
