如何防止使用javascript编写跨站点脚本

如何防止使用javascript编写跨站点脚本,javascript,jquery,xss,Javascript,Jquery,Xss,我想停止文本区域上的跨站点脚本编写。以下代码作为输入数据,在文本区域易受攻击: <script>alert("Hello")</script> 警报(“你好”) 有人能用一个示例代码帮助防止跨站点脚本攻击吗?跨站点脚本攻击比您想象的要严重得多,而且肯定不限于您提到的代码警报(“Hello”)。这些类型的XSS攻击严格限制在您的问题中,可以通过许多php库来防止。我将在下面提到一些 HTML净化器 PHP AntiXSS XSP保护 XSS HTML过滤器 xss_c

我想停止文本区域上的跨站点脚本编写。以下代码作为输入数据,在文本区域易受攻击:

<script>alert("Hello")</script>
警报(“你好”)

有人能用一个示例代码帮助防止跨站点脚本攻击吗?

跨站点脚本攻击比您想象的要严重得多,而且肯定不限于您提到的代码
警报(“Hello”)
。这些类型的XSS攻击严格限制在您的问题中,可以通过许多php库来防止。我将在下面提到一些

  • HTML净化器
  • PHP AntiXSS
  • XSP保护
  • XSS HTML过滤器
  • xss_clean.php过滤器
  • 更新php版本
让我们来谈谈防止XSS攻击最有效的方法是Php AntiXss

为防止XSS(跨站点)而开发的PHP反XSS库 脚本)web应用程序上的漏洞。PHP反XSS 库自动检测所需数据的编码 过滤器,如果您希望它再次编码您的数据。还有3个 筛选选项的类型

这里有3种类型的过滤选项

  • 黑名单过滤
  • 白名单过滤
  • 灰名单过滤
  • 用法:

    方法1: 设置数据的编码

    $data = AntiXSS::setEncoding($data, "UTF-8");
    
    方法2:

    为数据设置过滤器

    $data = AntiXSS::setFilter($data, "whitelist", "string");
    

    常用用法:

    Xssescape是一个用于防止cross brower中的跨站点脚本(xss)攻击的包

    用法:

    npm install xssescape
    
    app.js

    var xs = require('xssescape')
    var htmlStr = "<script> alert(document.cookie); </script>";
       xs.strictEscape(htmlStr);
    
    var xs=require('xssescape'))
    var htmlStr=“警报(document.cookie);”;
    严格景观(htmlStr);
    

    var htmlStr=“警报(document.cookie);”;
    xs.unescape(htmlStr);
    

    var browserURL=”http://example.com/? document.cookie”;
    xs.unSafeUrl('/home');//你可以保留任何你想要的路径名。
    //它将在默认url之后使用/home重新加载/刷新页面。
    
    非常感谢sai kiran!我们可以不使用任何库来实现这一点。我只需要用javascript来实现。@Raj我将对此问题进行练习,并尽快向您报告。据我所知,我们需要使用某些库或其他库。
    var htmlStr = "<script> alert(document.cookie); </script>";
       xs.unescape(htmlStr);
    
    var browserURL = "http://example.com/?<script> document.cookie </script>";
       xs.unSafeUrl('/home');   // eg. you can keep what ever you want as a path name.
    
       // it will reload/refresh the page  with /home after the default url.