常见前端安全问题以及防御措施
XSS ( cross-site-scripting ),跨站脚本攻击;注入恶意代码到网页,并使用户加载执行,目的可能是获取当前用户的在这个网站的cookie,从而拿到用户的敏感信息;
分为非持久性攻击和持久性攻击;
非持久性攻击:即时性,恶意代码不需要存在数据库中去;每次设置都可能触发一次xss攻击;
场景:
恶意代码一
http://abcd.com?q=<script>alert(document.cookie)</script> // 不成功,因为浏览器已经对script等一些危险标签的插入做了拦截过滤恶意代码二
http://abcd.com?q=<img src="" onerror="alert(document.cookie)" /> // 成功获取cookie
把src设置为空,这样就会触发onerror事件,弹出cookie;
持久性:将恶意代码存入数据库中;
XSS防御措施:
使用html转义;对所有外部插入的代码做一次转义,将script等危险标签做过滤和转义替换,同时尽量避免会用innerHtml、documnet.write、outerHtml等,而是使用安全性更高的textContent等;
开启CSP防护,在http响应头中设置content-security-policy属性:
当属性值设置为script-src ‘self’
Content-Security-Policy:script-src ‘self’
不允许内联脚本加载执行,禁止加载外域代码,禁止外域提交;
CSRF(cross-site request forgery),跨站请求伪造
流程:
用户登录目标网站a;
用户以某种方式接触到恶意网站b的链接;
用户点击链接访问网站b,网站b中的js代码执行,偷偷向目标网站b发送某个请求;
由于用户登录过网站a,因此请求携带了网站a的相关cookie’凭证,最后请求执行;
场景:
<img src="A.com/delete" style="visibility:hidden"/>
假如b网站有这么一段代码,就会删除用户在a网站的数据;
CSRF防御措施:
1.设置cookie的SameSite属性;
设置方法:
Set-cookie:widget_session=abc123;SameSite=None;Secure
除了设置值以外,还要设置SameSite属性;
有3个属性值:
strict:跨站点时,任何情况都不会发送cookie,只有当前网页的url与请求目标一致时,才会带上cookie;
lax:大多数情况下额不发送第三方cookie;
None:表示关闭samesite属性;
2.csrf token
服务端算法生成token,返回给前端,前端保存在localstrorage或者sessionstrorage中,会后每次发送请求都会带上这个token,而第三方网站没有办法获取token,因此服务器可以识别是否为第三方的请求;
3.手机验证码、邮箱验证,进行二次验证;
常见前端安全问题以及防御措施相关推荐
- Web安全:常见的安全问题及防范措施
前言 随着互联网的高速发展,信息安全问题已经成为行业最为关注的焦点之一.总的来说安全是很复杂的一个领域,在移动互联网时代,前端人员除了传统的 XSS.CSRF 等安全问题之外,还时常遭遇网络劫持.非法 ...
- 前端安全问题及防范措施
在现代 Web 应用程序开发中,前端安全问题备受关注.前端安全问题主要包括 XSS 攻击.CSRF 攻击.SQL 注入等.这篇文章将介绍这些安全问题以及如何防范它们,帮助读者更好地保护前端应用程序的安 ...
- 常见的DNS攻击与相应的防御措施
DNS查询通常都是基于UDP的,这就导致了在查询过程中验证机制的缺失,黑客很容易利用该漏洞进行分析.DNS服务可能面临如下DNS攻击风险: 黑客伪造客户端源IP地址发送大量的DNS请求报文,造成DNS ...
- Web前端攻击方式及防御措施
一.XSS [Cross Site Script]跨站脚本攻击 恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户 ...
- 常见的前端安全问题(xss / csrf / sql / ddos / cdn...)
目录 1. xss(Cross Site Scripting)跨站脚本攻击 1.1 持久型(存储型)攻击 / 非持久型(反射型)攻击 是什么? 1.2 xss 出现的场景?造成的危害? 1.3 防御 ...
- 常见漏洞的防御措施整理
文章目录 0x01 注入攻击 风险说明 预防措施 0x02 文件上传漏洞 系统运行时的防御 系统开发阶段的防御 系统维护阶段 0x03 认证会话管理 0x04 访问控制 风险说明 防御措施 0x05 ...
- 文件上传漏洞总结(含原因+防御措施)+白名单+黑名单+内容、头+解析漏洞/修补方案
文件上传漏洞简单总结+白名单+黑名单+内容.头+解析漏洞/修补方案 问题 什么是文件上传漏洞? 危害? 防御措施? 文件上传(验证/绕过)措施? 前端 js类绕过? 后端 黑名单绕过 特殊解析后缀 . ...
- 如何解决Web前端安全问题?
我国网络技术水平的提升,带动着WEB前端业务量的显著增长,人们对于网络服务的需求也日益复杂,与此同时,越来越多的黑客出现,其攻击水平也有了明显提升,WEB前端也成为了众多黑客进行网络攻击的主要目标. ...
- 汽车车内CAN总线 网络安全分析及防御措施
汽车车内CAN总线网络安全分析及防御措施智能化和信息化的发展,汽车电气系统变得日益复杂,当前汽车普遍拥有数十个电子控制单元(ECU),一辆高级轿车运行代码接近1亿行,而这些车载信息是通过车内总线 ...
最新文章
- Java发送邮件工具类(可发送匿名邮件)
- 团队作业——随堂小测(同学录)
- oracle 体系结构认识,Oracle数据库体系结构简单认识一
- AtCoder Beginner Contest 096 题解
- java笔记类与对象3.7-3.10 2020.3.17
- 二维数组数组名的使用
- leetcode 1338. Reduce Array Size to The Half | 1338. 数组大小减半(Java)
- python爬虫京东中文乱码_python3爬虫中文乱码之请求头‘Accept-Encoding’:br 的问题...
- 抽象工厂和工厂方法示例_工厂方法设计模式示例
- 易语言 网页用什么编码_通常提到的编码器是干什么用的
- 函数sigsuspend
- Spring AOP是什么?
- (五)洞悉linux下的Netfilteriptables:如何理解连接跟踪机制?(1)
- mysql自增id 重置
- Cadence画PCB的傻瓜式教程
- 使用C++对himawari8(9)卫星数据的读取
- Dbeaver Phoenix 各种报错
- po vo pojo domain 区别
- Android12之OpenSL ES中IObject_Realize和CEngine_Realize区别(十四)
- plc串口通讯 qt_Qt 编写串口调试助手