前端安全- 常见的网络攻击

1. xss 攻击

  • 跨站脚本攻击
1.1 反射性攻击
  • url参数直接注入(地址栏运行脚本)
1.2 影响
  • 利用虚假输入表单骗取用户个人信息
  • 利用脚本窃取用户的cookie值,被害者在不知情的情况下,帮助攻击者发送恶意请求
  • 显示伪造的文章或图片
1.3 存储型攻击
  • 存储到DB读取时注入
1.4 防御
  • ctx.set(‘X-XSS-Protect’,‘0’)
  • csp内容安全策略 ;白名单法:xss库,找到允许的代码;黑名单法:script和<去掉,防御替换掉这些
  • httpOnly cookie,将cookie信息设置为只读
    response.addHeader(“set-Cookie”,“uid=112;path=/;HttpOnly”)

2. csrf 攻击

  • 跨站请求伪造
  • 用户登录站点A,并再本地记录了cookie,用于被引入一个其他网站,其他网站拿去站点A的cookie,伪造请求
2.1 影响
  • 利用用户登录状态
  • 用户不知情
  • 完成业务请求
  • 盗取用户资金
  • 冒充用户发帖背锅
  • 损害网站声誉
2.2 防御
  • 验证码
  • cookie值进行hash

3. 点击劫持- clickjacking

  • 视觉欺骗的攻击手段,攻击者需要将攻击网站通过iframe进行嵌套自己的网站中,并把iframe设置为透明,在页面透出一个按钮引诱用户点击
3.1 防御
  • X-FRAME_OPTIONS是一个http响应头,三个可选值,DENY不允许有iframe,SAMEORIGIN统一域名下可以用iframe,ALLOW-FROM页面指定来源的iframe中展示
  • js方式:通过iframe方式加载页面时,直接不展示所有内容

4. SQL注入

  • ‘1’ or ‘1’ = ‘1’
  • 网站可能会判断密码正确
4. 1防御
  • 对参数进行转码
  • 用户提供最低权限
  • 限制变量类型
  • 数据库的特殊字符进行转义

5. OS命令

  • 掺入参数删除所有内容命令

6. 请求劫持

  • HTTP劫持:需要升级到HTTPS
  • DNS劫持:修改DNS解析结果

7. DDOS

  • SYN Flood: tcp握手,握手两次不予理会,多次握手
  • HTTP flood:
  • 备份网站 、http请求拦截、带宽扩容

你可能感兴趣的:(前端工程,前端,安全,web安全)