gpt4 book ai didi

java - 使用 Google App Engine (GAE) 防止跨站点脚本编写的最简单方法(框架/库/调用)是什么?

转载 作者:行者123 更新时间:2023-12-01 16:00:43 25 4
gpt4 key购买 nike

我想以最小的努力安全地存储然后显示用户输入的内容(我的目标是一个网络应用程序,而不是编写一堆与安全相关的代码)。

编辑:Google App Engine for Java

最佳答案

我自己也正在处理同样的问题;但我还没有机会把它带入现实世界;所以请记住,我的答案未经实战测试。使用风险由您自行承担。

首先,您需要询问自己是否允许用户使用任何 html 标记。例如,用户可以输入链接吗?将文本加粗怎么样?

如果答案是否定的,那么事情就相当简单了。以下是如何设置过滤器的想法:

http://greatwebguy.com/programming/java/simple-cross-site-scripting-xss-servlet-filter/

但就我个人而言,我不喜欢第一个示例中使用的过滤器;我把它放在那里只是为了向您展示如何设置过滤器。

我建议使用这个过滤器:

http://xss-html-filter.sourceforge.net/

所以基本上:

  1. 从第一个链接设置示例,使其正常工作
  2. 从第二个链接下载示例,将其放入您的项目中,以便您可以从代码中访问它。
  3. 重写 cleanXSS 方法以使用您从第二个链接下载的内容。所以可能是这样的:

    private String cleanXSS(String value) {
    return new HTMLInputFilter().filter( input );
    }

如果您确实想允许 HTML(例如 anchor 标记等),那么看起来 HTMLInputFilter 具有允许这样做的机制;但它没有记录在案,因此您必须通过自己查看代码或提供您自己的过滤方式来弄清楚。

关于java - 使用 Google App Engine (GAE) 防止跨站点脚本编写的最简单方法(框架/库/调用)是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4008013/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com