黑客们不断开发新的方法获得未经授权的Web应用程序访问,一般他们也会采用一些技术来实现攻击。
1SQL注入,一些应用程序通过复制Web客户端输入来创建数据库查询。黑客通过构造一些应用程序没有仔细检查和会被拒绝的字符串,来获取返回的机密数据。
2跨站点脚本,黑客插入脚本代码(如JavaScript或ActiveX)到一个输入字符串,导致Web服务器泄漏用户名和密码等信息。
3操作系统命令注入,一些应用程序从web输入来创建操作系统命令,就像访问一个文件和显示文件内容。如果输入的字符串没有仔细检查机制,黑客就可以创建输入来显示未经授权的数据、修改文件或系统参数。
4会话劫持,黑客通过猜测基于令牌格式知识的会话令牌的内容来获得登录会话的权利。这使得黑客能接管会话并可以得到原来的用户帐户信息。篡改参数或URL:web应用程序通常在返回的的web页面中嵌入参数和URL,或者用授权的参数更新缓存。黑客可以修改这些参数、URL或缓存,使Web服务器返回不应泄漏的信息。
5缓冲区溢出,应用程序代码应该检查输入数据的长度,以确保输入数据不会超出剩余的缓冲区和修改相邻的存储。黑客很快就会发现应用程序不检查溢出,并创建输入来导致溢出。
Web应用防火墙检查每一个传入的数据包的内容来检测上述类型的攻击。例如,web应用防火墙会扫描SQL查询字符串,来检测和删除那些导致返回的数据多余应用程序要求的字符串。增值厂商应仔细监测新发展的攻击类型并跟踪检测他们的最新产品。
Web应用防火墙不仅检测上述已知类型的攻击,而且还监测异常的使用模式来检测目前未知的攻击方法。例如,通常Web应用程序与web客户端的信息交流数量是有限的。如果WAF检测到Web服务器正在返回一个比预期大很多的数据量,它就会及时切断传输,以防止更多的数据泄露。黑客们不断开发新的方法获得未经授权的Web应用程序访问,一般他们也会采用一些技术来实现攻击。