3.4.3 针对Web应用的攻击1.SQL注入
1)原理和危害
SQL注入攻击是黑客对数据库进行攻击的手段之一。随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员水平及经验参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注人。
注入攻击的根源在于程序的命令和用户数据(即用户输入)之间没有做到泾渭分明。这使得攻击者有机会将程序命令当做用户输入的数据提交给Web程序,以执行恶意代码,为所欲为。
注入攻击可能造成的危害有:非法查询其他数据库资源,比如管理员账号;执行系统命令;获取服务器root权限等。