HTML5安全风险之Web Storage攻击详解
一、webstorage简介
html5支持webstorage,开发者可以为应用创建本地存储,存储一些有用的信息。例如localstorage可以长期存储,而且存放空间很大,一般是5m,极大的解决了之前只能用cookie来存储数据的容量小、存取不便、容易被清除的问题。这个功能为客户端提供了极大的灵活性。
二、攻击方式
localstorage的api都是通过javascript提供的,这样攻击者可以通过xss攻击窃取信息,例如用户token或者资料。攻击者可以用下面的脚本遍历本地存储。
同时要提一句,localstorage并不是唯一暴露本地信息的方式。我们现在很多开发者有一个不好的习惯,为了方便,把很多关键信息放在全局变量里,例如用户名、密码、邮箱等等。数据不放在合适的作用域里会带来严重的安全问题,例如我们可以用下面的脚本遍历全局变量来获取信息。
三、攻击工具
html5dump的定义是“javascriptthat dump all html5 local storage”,它也能输出html5 sessionstorage、全局变量、localstorage和本地数据库存储。
四、防御之道
对于webstorage攻击的防御措施是:
1、数据放在合适的作用域里
例如用户sessionid就不要用localstorage存储,而需要放在sessionstorage里。而用户数据不要储存在全局变量里,而应该放在临时变量或者局部变量里。
2、不要存储敏感的信息
因为我们总也无法知道页面上是否会存在一些安全性的问题,一定不要将重要的数据存储在webstorage里。
以上就是web storage攻击详细介绍,希望对大家学习web storage攻击有所帮助。
下一篇: python备份文件的脚本