YII2框架学习 安全篇(一) XSS攻击和防范(上)

在如今的web开发中,网络安全,信息安全应该是最重要的一环。常见的攻击主要有四类,XSS攻击、CSRF攻击、SQL注入和文件上传漏洞。在接下来的安全篇里,我会依次说明YII框架是如何应对这些攻击的。本篇要学习的就是XSS攻击和防范之存储。

XSS攻击的意思是跨站脚本攻击,XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。比如这些代码包括HTML代码和客户端脚本。攻击者利用XSS漏洞旁路掉访问控制——例如同源策略(same origin policy)。这种类型的漏洞由于被黑客用来编写危害性更大的网络钓鱼(Phishing)攻击而变得广为人知。对于跨站脚本攻击,黑客界共识是:跨站脚本攻击是新型的“缓冲区溢出攻击“,而JavaScript是新型的“ShellCode”。下面就以实际例子说明把。

1)盗取用户账号(基于存储的XSS攻击

大概说一下盗号的原理。在用户登陆网站后,网站服务器会生成相应的session存储该用户登陆信息,并返回给用户浏览器cookie存储起来。下次向服务器请求数据的时候带上cookie里面的数据,就可以行驶用户权限了。那么,黑客只要通过js注入得到了这个cookie就可以伪装为用户了。

那么,重点来了怎么防止cookies泄露呢。httponly出现了,只要在cookie添加这个属性,那么js(document.cookie)就提取不到这个信息。

2)非法转账(基于反射的XSS攻击

如果在用户的支付界面植入一段js代码,自动填写收款人和金额并提交,就能完成转账。植入js代码的方法是,让别人点击植入了js代码的链接,如

http://www.amazon.cn/search?name=

在这个前提,你就可以在别人的界面为非作歹了。还好,yii框架会让浏览器自动过滤js代码。

比较晚了,明天出下篇,继续讲反射xss还有蠕虫

你可能感兴趣的:(YII框架学习)