• XSS跨站脚本攻击


    XSS定义:指恶意攻击者向Web 页面里面插入的恶意脚本代码,当用户浏览该页时,潜入 Web 里面的脚本代码会被执行,从而达到恶意用户的特殊目的。

    由于没有对输入的请求进行验证就进行了输出,从而会执行客户端的脚本代码。

    如何防范:XSS 攻击主要是因为不检查数据造成的,一般情况下,对请求的数据进行转换和过滤就可以有效防范 XSS 攻击。

          数据的转换是可以在接受数据时,进入数据库时及输出数据时进行,因此,对于开发者,应该首先把经历放在对所有用户提交内容进行可靠的输入验证上,这些提交内容包括对 URL、查询关键字、HTTP 报头、POST 数据等。只接受在所规定长度范围内、采用适当格式及所希望的字符,过滤或者忽略其他内容。

          如果 Web 应用程序必须支持用户提交 HTML 格式内容,那么应用的安全性将大大降低,因此除非必须这么做,否则一定不要提供此内容。

          但也有一些措施来保护 Web 应用程序,首先就是确认所接收的 HTML 被妥善的格式化,仅包含最小化的、安全的标签(绝对没有 script元素),并且去掉任何对远程内容的引用(尤其是样式表和 JavaScript)。

         仅仅在客户端过滤是不够的,还要在服务器端进行过滤。

         一些应用程序服务器提供了实用功能,可以执行请求验证,这是一个请求过滤的方式。

        应该仔细地评估应用程序中所有形式的输入,并确保对它们进行了正确的验证和编码,或者确保应用程序在处理数据或将信息发送回客户端之前已推出。除此之外,别无他法。

  • 相关阅读:
    java对象的四种引用:强引用、软引用、弱引用和虚引用
    css引入的两种方法link和@import的区别和用法
    java注解和自定义注解的简单使用
    java代理:静态代理和动态代理
    java设计模式:面向对象设计的7个原则
    java设计模式:概述与GoF的23种设计模式
    java依赖的斗争:依赖倒置、控制反转和依赖注入
    Official Program for CVPR 2015
    Official Program for CVPR 2015
    2013计算机视觉代码合集一
  • 原文地址:https://www.cnblogs.com/chengmingxiaowu/p/7791902.html
Copyright © 2020-2023  润新知