前端网络安全

2023-03-09 10:19:41 浏览数 (1)

一、xss跨站脚本攻击

1、类型 ​ 1)反射型:通过网络请求参数中加入恶意脚本,解析后执行触发。 ​ 2)文档型:请求传输数据中截取网络数据包,对html代码插入再返回。 ​ 3)存储型:通过输入发送到服务端存储到数据库。 2、防范措施 ​ 1)对用户输入进行过滤或转码。 ​ 2)csp(内容安全策略)。 ​ 使CSP可用, 你需要配置你的网络服务器返回 HTTP头部

代码语言:javascript复制
Content-Security-Policy: policypolicy参数是一个包含了各种描述你的CSP策略指令的字符串
代码语言:javascript复制
除此之外,  <meta>  元素也可以被用来配置该策略, 例如<meta http-equiv="Content-Security-Policy"content="default-src 'self'; img-src https://*; child-src 'none';">

​ 参考资料:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CSP ​ 3) cookie中httpOnly。 ​ JavaScript {{domxref(“ Document.cookie”)}} API 无法访问带有 HttpOnly 属性的cookie;此类 Cookie 仅作用于服务器。例如,持久化服务器端会话的 Cookie 不需要对 JavaScript 可用,而应具有 HttpOnly 属性。

二、csrf跨站请求伪造,利用当前登录状态发起跨站请求

1、CSRF攻击原理及过程 ​ 1)用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A; ​ 2)在用户信息通过验证后,网站A产生Cookie信息并返回给浏览器,此时用户登录网站A成功,可以正常发送请求到网站A; ​ 3)用户未退出网站A之前,在同一浏览器中,打开一个TAB页访问网站B; ​ 4)网站B接收到用户请求后,返回一些攻击性代码,并发出一个请求要求访问第三方站点A; ​ 5)浏览器在接收到这些攻击性代码后,根据网站B的请求,在用户不知情的情况下携带Cookie信息,向网站A发出请求。网站A并不知道该请求其实是由B发起的,所以会根据用户C的Cookie信息以C的权限处理该请求,导致来自网站B的恶意代码被执行。 2、类型 ​ 1)自动发起get请求:改了类似图片src代码。 ​ 2)自动发起post请求:恶意插入表单脚本进行提交。 ​ 3)主动发起get请求:放入一个恶意链接提供点击。 3、防范措施 ​ 1)cookie的SameSite属性,SameSite Cookie 允许服务器要求某个 cookie 在跨站请求时不会被发送,从而可以阻止跨站请求伪造攻击。 ​ SameSite 可以有下面三种值: None。浏览器会在同站请求、跨站请求下继续发送 cookies,不区分大小写。 **Strict。**浏览器将只在访问相同站点时发送 cookie。 **Lax。**与 Strict 类似,但用户从外部站点导航至URL时除外。 在新版本浏览器中,为默认选项,Same-site cookies 将会为一些跨站子请求保留,如图片加载或者 frames 的调用,但只有当用户从外部站点导航到URL时才会发送。如 link 链接 参考资料:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Cookies ​ 2)验证来源站点,请求头中加入两个字段:origin域名信息和referer具体的url路径,检查是否是正常页面过来的请求

代码语言:javascript复制
Origin:https://developer.mozilla.org
Referer:https://developer.mozilla.org/en-US/docs/Web/JavaScript

​ 3)csrf 增加token验证 csrf在ajax提交的时候通过请求头传递的给后台的 csrf在前端的key为:X-CSRFtoken,到后端的时候进行验证 csrf在form中提交的时需要在前端form中添加{%csrftoken%}

三、中间人攻击

1、什么是中间人攻击? 当数据传输发生在一个设备(PC/手机)和网络服务器之间时,攻击者使用其技能和工具将自己置于两个端点之间并截获数据;尽管交谈的两方认为他们是在与对方交谈,但是实际上他们是在与干坏事的人交流,这便是中间人攻击。 攻击方式: 嗅探:嗅探或数据包嗅探是一种用于捕获流进和流出系统/网络的数据包的技术。网络中的数据包嗅探就好像电话中的监听。记住,如果使用正确,数据包嗅探是合法的;许多公司出于“安全目的”都会使用它。 会话劫持:你曾经遇到过“会话超时”错误吗?如果你进行过网上支付或填写过一个表格,你应该知道它们。在你登录进你的银行账户和退出登录这一段期间便称为一个会话。这些会话通常都是黑客的攻击目标,因为它们包含潜在的重要信息。在大多数案例中,黑客会潜伏在会话中,并最终控制它。这些攻击的执行方式有多种。 SSL剥离:SSL剥离或SSL降级攻击是MiTM攻击的一种十分罕见的方式,但是也是最危险的一种。众所周知,SSL/TLS证书通过加密保护着我们的通讯安全。在SSL剥离攻击中,攻击者使SSL/TLS连接剥落,随之协议便从安全的HTTPS变成了不安全的HTTP。 2、防范措施 确保在URL前你所访问的网站有HTTPS 点击电子邮件前,检查电子邮件的发件人 如果你是一个网站管理员,你应当执行HSTS协议 不要在公共Wi-Fi网络上购买或发送敏感数据 确保你的网站没有任何混合内容 如果你的网站使用了SSL,确保你禁用了不安全的SSL/TLS协议。你应当只启用了TLS 1.1和TLS 1.2 不要点击恶意链接或电子邮件 不要下载盗版内容 将安全工具正确地安装在系统上

0 人点赞