美文网首页
安全问题

安全问题

作者: 励志摆脱懒癌的少女酱 | 来源:发表于2018-07-23 20:20 被阅读19次

XSS(跨站点脚本攻击)漏洞

  1. 攻击原理
      攻击者向有xss漏洞的网站中传入恶意的html代码,其他用户浏览该网站时,这段html代码会自动执行,从而达到攻击的目的。

  2. XSS分类
    (1)反射型XSS:被动的非持久性XSS—恶意数据紧跟请求立即返回浏览器,当用户点击URL带攻击代码的连接(通过多网址服务将之缩短),服务器解析后响应,再返回的响应内容中隐藏和嵌入攻击者的XSS代码,被浏览器执行,从而攻击用户。
    (2)持久性(存储性)XSS:主动提交恶意数据(HTML/JS)到服务器存入数据库,攻击者在数据中嵌入代码,因此当其他用户请求后,服务器将数据返回给用户,用户浏览此页面时可能就收到了攻击。

  • 恶意用户的HTML/JS输入服务器 -> 进入数据库 -> 服务器响应查询数据库 -> 用户浏览器;
    (3)Dom-based XSS:从document.location/document.URL/document.referrer获取数据在本地执行;
  1. 防范
    (1)使用XSS filter
  • 输入过滤:对用户提交的数据进行有效性验证,阻止或忽略非期望格式的内容提交;
  • 输出转义:输出HTML属性时使用HTMLEncode进行处理,输出到<script>中,可以进行JS编码;
    (2)使用HttpOnly Cookie:浏览器向web服务器发起请求时会带上cookie字段,但是在js脚本中却不能访问cookie,避免xss攻击利用js的document.cookie获取cookie;

csrf(跨站请求伪造)攻击

  1. 攻击原理
      源于web的隐式身份验证机制(可以保证一个请求来自某个用户的浏览器,但无法保证该请求是用户批准主动发送的);
  2. 攻击条件
    (1)客户端必须先登陆目标网站A,并在本地生成cookie;
    (2)在不退出网站A的情况下,客户端访问危险网站B,危险网站B伪造网站A的url请求,让该请求从客户端的浏览器并携带网站A的cookie发出去(session并没有过期);
  3. 防范
    (1)验证Http Referer字段:Referer字段记录了该Http请求的来源地址—目标网站A只要对每一个http请求的Referer值进行验证,若不是自己允许的网站请求,则拒绝该请求;
  • 优点:给所有安全敏感的请求统一加一个拦截器检查Referer的值即可,无须改变当前系统的任何已有代码和逻辑;
  • 缺点
    • 安全性都依赖浏览器保障,若对用户浏览器的Referer值进行篡改就会有安全问题;
    • 用户关闭Referer字段,即设置浏览器在其发送请求时不再提供Referer字段;
      验证http referer字段
      (2)验证码;
      (3)随机数token验证:在请求中放入攻击者不能伪造的信息,即不存于cookie中,服务器增加一个拦截器验证这个token,若请求没有token或token内容不正确则拒绝该请求;
  • 在请求地址中添加token并验证;
  • 在http headers中自定义csrftoken字段并验证;— 通过XMLHttpRequest设置header;

csrf与xss的区别

  1. xss:HTML的问题—内容没有过滤导致浏览器将攻击者的输入当代码执行,盗取cookie干坏事;
  2. csrf:HTTP的问题—浏览器发送HTTP请求时会自动带上cookie,而一般session都存在cookie里,借cookie干坏事,实质上没有拿到受害者的cookie;

相关文章

  • Java线程安全

    线程安全问题的概述 线程安全问题的代码实现 线程安全问题产生的原理 解决线程安全问题_同步代码块 同步代码块:sy...

  • 7.2 Handler消息传递机制

    简介:handler消息处理者,用来发生和处理消息,用于解决线程安全问题; 线程安全问题:多线程导致线程安全问题,...

  • HTTPS中的密码学

    一 HTTPS 存在意义 HTTP协议有些安全问题,HTTPS为解决这些安全问题造成的,主要有哪些安全问题那: 机...

  • 线程安全问题

    线程安全问题 本篇主要讲解 线程安全问题,演示什么情况下会出现线程安全问题,以及介绍了 Java内存模型 、vol...

  • 五 异常与多线程——第三节 线程同步机制

    1、线程安全问题的概述 多线程访问了共享的数据,就会产生线程安全问题 2、线程安全问题的代码实现 输出:会出现重复...

  • 你的应用安全吗?应用安全问题知多少?

    你的应用安全吗?应用安全问题知多少? 安全问题 安全问题的本质是信任的问题 比如启停tomcat用户要非root用...

  • 大城小锅价目表

    餐饮安全关乎生命,在餐饮行业中要时刻注意餐饮安全问题,避免出现餐饮安全问题,那么究竟应该如何对餐饮安全问题进行预防...

  • 一次Linux系统被攻击的分析过程

    IT行业发展到现在,安全问题已经变得至关重要,从最近的“棱镜门”事件中,折射出了很多安全问题,信息安全问题已变得刻...

  • 一次Linux系统被攻击的分析过程

    IT行业发展到现在,安全问题已经变得至关重要,从最近的“棱镜门”事件中,折射出了很多安全问题,信息安全问题已变得刻...

  • volatile关键字

    线程安全问题 Java多线程带来的一个问题是数据安全问题,判断一段Java代码是否有线程安全问题可从以下几点入手:...

网友评论

      本文标题:安全问题

      本文链接:https://www.haomeiwen.com/subject/igmhmftx.html