博客
关于我
常见WEB攻击及防御技术
阅读量:237 次
发布时间:2019-03-01

本文共 1035 字,大约阅读时间需要 3 分钟。

常见Web攻击及防御技术

XSS攻击

介绍

XSS(Cross-Site Scripting)攻击是通过在用户输入的内容中注入可执行的JavaScript代码,从而在用户浏览页面时执行攻击代码。例如,在表单中提交含有脚本的内容时,如果服务器未对输入进行过滤或转义,这些脚本会被发布到页面上。当其他用户访问该页面时,浏览器会执行这些脚本,窃取用户的cookie等敏感信息。

防御

  • 对敏感cookie信息使用HttpOnly属性,使其不在document对象中可见。
  • 对用户输入的内容进行转义,避免直接输出未经处理的用户输入。
  • CSRF攻击

    介绍

    CSRF(Cross-Site Request Forgery)攻击是通过伪造请求,诱导用户执行不安全操作。例如,用户在银行网站A未退出时,访问携带CSRF攻击代码的网站B,导致银行网站A执行转账操作,资金被盗。

    防御

  • 在敏感请求中添加验证码,确保请求来源合法。
  • 检查Referer字段,验证请求来源域名是否合法。
  • 在请求中添加token并验证,确保每次请求都有授权。
  • 将token放在HTTP头中,避免暴露于浏览器地址栏。
  • SQL注入

    介绍

    SQL注入攻击通过在表单输入中注入SQL语句,绕过数据库安全机制,执行恶意操作。例如,登录表单中的输入若未转义,会拼接到查询语句中,导致数据库操作异常或数据泄露。

    防御

  • 对输入数据进行过滤,拒绝特殊字符。
  • 最小化数据库权限,限制操作范围。
  • 使用参数化查询接口,避免直接拼接SQL语句。
  • 身份认证和会话

    攻击

    黑客利用浏览器JS禁用校验,绕过客户端验证,执行异常操作。

    防御

  • 隐藏敏感信息。
  • 对敏感信息加密存储。
  • 定期失效session,避免长时间有效性。
  • 权限与访问控制

    攻击

    通过修改URL参数,访问他人页面,泄露隐私。

    防御

  • 添加权限校验,确保访问权限合法。
  • 不安全加密存储

    防御

  • 加密存储敏感信息。
  • 使用常用加密算法。
  • 上传漏洞

    攻击

    上传非图片文件,远程执行脚本攻击服务器。

    防御

  • 限制文件类型。
  • 使用第三方文件托管。
  • 传输层未加密

    防御

  • 使用安全的HTTPS版本。
  • 异性信息使用HTTPS传输。
  • 未验证的重定向和转发

    攻击

    钓鱼攻击,诱导用户点击恶意链接。

    防御

  • 添加跳转白名单。
  • 提前提示用户跳转来源。
  • WebShell攻击

    防御

  • 识别文件类型,限制特殊定义。
  • 脚本注入

    防御

  • 对用户输入进行数据过滤,确保页面安全。
  • 跨站攻击

    防御

  • 对URL参数进行校验,确保来源可靠。
  • 转载地址:http://abkt.baihongyu.com/

    你可能感兴趣的文章
    nodejs图片转换字节保存
    查看>>
    nodejs字符与字节之间的转换
    查看>>
    NodeJs学习笔记001--npm换源
    查看>>
    NodeJs学习笔记002--npm常用命令详解
    查看>>
    nodejs学习笔记一——nodejs安装
    查看>>
    nodejs封装http请求
    查看>>
    nodejs常用组件
    查看>>
    nodejs开发公众号报错 40164,白名单配置找不到,竟然是这个原因
    查看>>
    Nodejs异步回调的处理方法总结
    查看>>
    NodeJS报错 Fatal error: ENOSPC: System limit for number of file watchers reached, watch ‘...path...‘
    查看>>
    Nodejs教程09:实现一个带接口请求的简单服务器
    查看>>
    nodejs服务端实现post请求
    查看>>
    nodejs框架,原理,组件,核心,跟npm和vue的关系
    查看>>
    Nodejs模块、自定义模块、CommonJs的概念和使用
    查看>>
    nodejs生成多层目录和生成文件的通用方法
    查看>>
    nodejs端口被占用原因及解决方案
    查看>>
    Nodejs简介以及Windows上安装Nodejs
    查看>>
    nodejs系列之express
    查看>>
    nodejs系列之Koa2
    查看>>
    Nodejs连接mysql
    查看>>