Web安全

同源策略

何为同源

同源策略指的是协议、域名、端口都相同。

同源策略的目的

如果没有同源策略,当我们打开一个银行的网站的时候,如果这时候打开了另外一个恶意网站,恶意网站将会做很多事情,比如:

  • 修改银行站点的DOM、CSSDOM等
  • 在银行站点内部插入javascript脚本
  • 劫持用户登陆的用户名和密码
  • 读取银行网站的cookie、indexDB等数据
  • 伪造转账请求等 由此课件,如果不加限制,网络世界将变得十分混乱。所以同源策略的目的是:保护用户信息的安全,防止网站恶意的窃取数据。
限制内容

虽然同源策略的限制都很有必要,但是有的时候会很不方便,合理的用途也会收到影响。那么如何合理的规避这些限制呢?下面我们分析一下。

  • 数据层面:cookie、localStorage、IndexDB无法读取* cookie:cookie是写入浏览器的一小段信息,但是只有同源才能共享,但是对于两个只有二级域名不同的网页,可以通过document.domain来设置* LocalStorage和IndexDB:使用postMessage
  • Dom层面:Dom无法获得* postMessage
  • 网络层面:Ajax请求无法发送* JSONP:利用<script>标签没有跨域限制的“漏洞”。网页通过添加一个<script>标签,向服务端请求json数据,服务端接收到请求之后,将数据放在一个指定名字的回调函数里返回来。* CORS:全称是跨域资源共享,实现CORS通信的关键是服务器。只要服务器实现了CORS接口,就可以跨源通信。

XSS 攻击

什么是XSS攻击

XSS(Cross Site Scripting)全称就是跨站脚本攻击。我们的页面中是可以引用第三方资源的,黑客往HTML或者DOM中注入了恶意脚本,从而在用户浏览页面的时候利用注入的恶意脚本对用户实施攻击。最开始这种攻击是通过跨域来实现的,但是发展到现在之后,跨域已经不是唯一的方式了,但是XSS这个名字却一直沿用至今。

恶意脚本会导致什么问题呢?
  • 窃取用户信息:js可以通过document.cookie获取cookie信息,就可以在其他电脑上模拟用户的登陆。
  • 监听用户行为:可以使用addEventListener来监听事件,比如键盘输入身份证号
  • 修改dom:伪造假的登陆窗口
  • 在页面内生成浮窗广告,影响用户体验
恶意脚本常见的注入方式
  • 存储型XSS攻击* 利用网站漏洞输入一段js代码,并将此代码存入到数据库中。用户向网站请求包含了恶意js脚本的页面。恶意脚本将用户的cookie等信息窃取。
  • 反射型XSS攻击* 脚本代码加入到url参数中,比如当打开http://localhost:3000/?xss=<script>alert('你被xss攻击了')</script>这段URL时,页面会显示弹框。黑客可能会利用此漏洞,诱导我们点击QQ或者邮件的恶意连接。
  • 基于DOM的XSS攻击:在 Web 资源传输过程或者在用户使用页面的过程中修改 Web 页面的数据。
如何阻止XSS攻击呢?
  • HttpOnly:由于很多XSS攻击都是来盗用Cookie的,因此还可以通过使用HttpOnly属性来保护我们Cookie的安全。
  • 通过服务器对输入的内容进行过滤或者转码
  • 充分利用CSP

CSRF攻击

什么是CSRF攻击?

CSRF又称跨站请求伪造,是指黑客引诱用户点开黑客的网站,利用用户的登陆状态发起跨站请求,简单来讲,CSRF攻击就是黑客利用了用户的登陆状态,并通过第三方的站点来做一些坏事。

如何阻止CSRF攻击呢?
  • Cookie的SameSite属性:具体讲解可以观看cookie的讲解。对于防范CSRF攻击,我们可以针对实际情况将一些关键的Cookie设置为Strict或者Lax模式
  • 验证请求的来源站点:在服务器端验证请求来源的站点
  • CSRF Token:在浏览器向服务器发起请求时,服务器生成一个 CSRF Token。在浏览器端如果要发起转账的请求,那么需要带上页面中的 CSRF Token,然后服务器会验证该 Token 是否合法。### 如何入门网络安全
建议

多看书

阅读永远是最有效的方法,尽管书籍并不一定是最好的入门方式,但书籍的理解需要一定的基础;但是就目前来看,书籍是比较靠谱的入门资料。

现在Web安全书籍比较多,因此大家在学习的过程中可以少走了不少的弯路。如果以上推荐书籍阅读有困难,那就找自己能看得进的 Web 安全的书

当然纸上谈兵终觉浅,最好还是实践一下。

对于那些没有学习方向和资料的同学,可以看下我整理的资源,这份资料经历过社会的实践,可以说是当下全网较全的网络安全知识体系:
①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥网络安全必备书籍
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值