- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于HTML5技术新农村信息化移动服务平台安全问题研究
基于HTML5技术新农村信息化移动服务平台安全问题研究
摘 要:HTML5是新一代的Web应用程序构建基准,它包含了全新的标签格式、改良的通信机制、本地存储、离线应用和多线程等诸多令人激动的新特性。但同时这些新特性也引入了新的安全问题。本文针对新农村信息化服务平台使用对象的特殊性,论述了利用HTML5这个新的技术来开发此服务平台更应该考虑的安全问题,并给出了相应的对策。
关键词:HTML5;新农村;安全;攻击;信息化
中图分类号:TP311.52
随着信息技术和通信技术的高速发展和广泛应用,信息化已经是社会各个角落不可缺少的一部分,更加让我们难以预料的是,人们对信息的获取方式已经从原来的只能在固定的场所、单一的电脑上获得,到现在的人们无论何时何地,只要有一部智能手机就可以获得想要的信息。对于新农村的建设中一个重要部分——信息化建设,也在追随着新技术带来的快感,人们都在将自己的信息化服务平台从电脑移植到手机。
对于移动开发技术,HTML5现在得到主流移动设备的普遍支持,并成为创建和部署面向移动平台浏览器内容的最佳解决方案。虽然HTML5对旧有的安全策略进行了非常多的补充,如HTML5为iframe元素增加了sandbox属性防止不信任的Web页面执行某些操作,访问父页面的DOM、执行脚本、访问本地存储或者本地数据库等等。但是这也对HTML5开发的面向移动的应用程序面临新的被攻击风险。
1 HTML5新技术带来的攻击与防御
在新农村信息化移动服务平台的建设中,如何有效的防范HTML5新技术带来的攻击问题,应从以下几方面防范:
1.1 防御CORS攻击。CORS-CrossOrigin Resources Sharing,也即跨源资源共享,它定义了一种浏览器和服务器交互的方式来确定是否允许跨域请求。
CORS非常有用,可以共享许多内容,不过这里存在风险。因为它完全是一个盲目的协议,只是通过HTTP头来控制。它的风险包括:(1)HTTP头只能说明请求来自一个特定的域,但是并不能保证这个事实。因为HTTP头可以被伪造。所以未经身份验证的跨域请求应该永远不会被信任。如果一些重要的功能需要暴露或者返回敏感信息,应该需要验证Session ID。(2)第三??有可能被入侵。举一个场景,FriendFeed通过跨域请求访问Twitter,FriendFeed请求tweets、提交tweets并且执行一些用户操作,Twitter提供响应。两者都互相相信对方,所以FriendFeed并不验证获取数据的有效性,Twitter也针对Twitter开放了大部分的功能。
对于CORS攻击,首先应该做到不信任未经身份验证的跨域请求,必须先验证Session ID或者Cookie;其次对于请求方来说验证接收的数据有效性,服务方仅暴露最少最必须的功能;再次通过多种条件屏蔽掉非法的请求,例如HTTP头、参数等。
1.2 防御Web Storage攻击。HTML5支持Web Storage,开发者可以为应用创建本地存储,存储一些有用的信息。LocalStorage的API都是通过Javascript提供的,这样攻击者可以通过XSS攻击窃取信息,例如用户token或者资料。攻击者可以用下面的脚本遍历本地存储。
if(localStorage.length){
for(I in localStorage) {
console.log(i);
console.log(localStorage.getItem(i));
}
}
对于Web Storage攻击,我们应尽量做到数据放在合适的作用域里,并且不要存储敏感的信息。
1.3 防御Web SQL攻击。数据库安全一直是后端人员广泛关注和需要预防的问题。但是自从HTML5引入本地数据库和Web SQL之后,前端开发对于数据库的安全也必须要有所了解和警惕。Web SQL的安全问题通常表现为两个部分:
第一种是SQL注入:攻击者可以通过SQL注入点来进行数据库攻击。如我们有一个URL为http://hfahe?id=1,它接收了一个id参数来进行本地数据库查询并输出,对应的SQL语句为“select name from user where id = 1”。针对这个简单的SQL查询,攻击者可以构造一个虚假的输入数据“1 or 1 = 1”,那么我们的SQL语句将变为“select name from user where id = 1 or 1 = 1”。这就相当糟糕了,因为1=1这个条件总是成立的,那么这条语句将遍历数据库user表里的所有记录并进行输出。
另外一方面,如果Web App有XSS漏洞,
文档评论(0)