学习手册:窥探Web前端黑客技术

作者:CQITer小编 时间:2019-04-08 16:37

字号

安全之路任重而道远,前端安全是众多安全中的一个分支。随着互联网的发达,各种WEB应用也变得越来越复杂,满足了用户的各种需求,但是随之而来的就是各种网络安全的问题。

学习手册:窥探Web前端黑客技术

一、安全关键词

先了解几个定义:域、脚本、授权、读写、资源、同源策略、信任、社工。

1. 域

同域要求两个站点:同协议、同域名、同端口。

下表展示了所列站点与是否同域的情况。

学习手册:窥探Web前端黑客技术

2. 脚本

主要指JavaScript和ActionScript,当然也包括VBScript(相对较孤立)。

3. 授权

如Ajax跨域,默认情况下是不允许跨域访问的,只有目标站点(假如是)明确返回http响应头 Access-Control-Allow-Origin:时,站点上的客户端脚本才能有权通过Ajax技术对上的数据进行读写操作。

4. 读写权限

Web上的资源有很多,有的只有读权限,有的同时拥有读和写的权限。比如:http请求头里的Referer只可读,而document.cookie则具备读写权限。

5. 资源

同源策略里的资源是指web客户端的资源。一般来说,包括:http消息头、整个DOM树、浏览器存储(Cookies、FlashCookies、localStorage等)。

6. 同源策略

不同域的客户端脚本在未经授权的情况下不能读写对方的资源。

如果没有同源策略,Web世界会发生什么?

当你登录邮箱,并打开另一个站点e时,e站点上的JavaScript就可以跨域读取你的邮箱数据,导致隐私泄露。

7. 信任

安全问题从某种程度上讲就是信任问题。同源策略也是信任的一种表现,默认情况下,不同源则不信任。

以下两个场景有利于小伙伴们理解:

场景一:

学习手册:窥探Web前端黑客技术

一个Web服务器上有两个网站A和B,黑客入侵目标是A,但是直接入侵A遇到了巨大困难,而入侵B却成功了。由于A与B之间过于信任(在同一个文件系统里,且没有有效的文件权限配置),未能做很好的分离,黑客就可以轻松地攻克网站A。

场景二:

学习手册:窥探Web前端黑客技术

网站本身是很安全的,由于嵌入了第三方内容(如统计脚本),建立了信任关系,如果第三方的统计脚本被黑客挂马,将导致网站不安全。虽然这样不会导致你的网站直接被入侵,但却危害到了访问你网站的广大用户。

8. 社工

社会工程学,简称社工。百度定义,为某些非容易的获取讯息,利用社会科学(此指其中的社会常识)尤其心理学,语言学,欺诈学将其进行综合,有效的利用(如人性的弱点),并最终获得信息为最终目的学科称为“社会工程学”。

二、漏洞利用

了解了基础定义,还需要了解安全定义。

1. Cookie安全

Cookie是一小段文本信息,只能保存字符串,伴随着用户请求和页面在Web服务器和浏览器间传递,用来保持Web中的回话状态和缓存信息,记录用户的状态。Cookie的使用方便了人们的网上生活,但同时对用户的许多隐私信息构成了威胁。cookie在http协议中是明文传输的,并且直接附在http报文的前面,所以只要在网络中加个嗅探工具,获取http包,就可以分析并获得cookie的值。

当我们获取到别人的cookie的值,就产生了一种攻击漏洞,即cookie欺骗。我们将获取到的cookie值加在http请求前,服务器就会把我们当作是该cookie的用户,我们就成功的冒充了其他用户,可以使用其他用户在服务器的资源等。

Cookie欺骗是攻击者登录的是受害者的身份。而Cookie 注入是认证为攻击者的攻击方式,受害者登录的是攻击者的身份。

Cookie注入简单来说就是利用Cookie而发起的注入攻击。从本质上来讲,Cookie注入与一般的注入(例如,传统的SQL注入)并无不同,两者都是针对数据库的注入,只是表现形式上略有不同。Cookie 注入就是将提交的参数以cookie的方式提交。而一般的注入是使用get和post方式提交。Get方式提交就是直接在网址之后加需注入的内容,而post 是经过表单提取的方式。Post和get不同就在于,get方式我们可以在ie地址栏看到我们提交的参数,而post 不能。

责任编辑:CQITer新闻报料:400-888-8888   本站原创,未经授权不得转载
继续阅读
热新闻
推荐
关于我们联系我们免责声明隐私政策 友情链接