问题标签 [html-sanitizing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
7319 浏览

java - 如何让 Jsoup 白名单接受某些属性内容

我正在使用带有宽松白名单的 Jsoup。它看起来很完美,但我想保留嵌入的图像标签,如<img alt="" src="data:;base64.

有没有办法修改白名单以接受那些img?

编辑

如果我使用Whitelist.relaxed().addProtocols("img","src","data"),则不会删除这些 img 标签。但它接受“data:”之后的任何内容,如果 src 内容以“data:;base64”开头,我只想保留它们。jsoup可以吗?

0 投票
0 回答
99 浏览

html - 流式 HTML 清理器

是否有任何支持任何语言流式传输的 HTML 清理程序?

如果答案是否定的,那有什么原因吗?

使用像StAX这样的API是不可能的吗?

或者仅仅是因为还没有人尝试建造一个?

0 投票
1 回答
577 浏览

python - lxml.htm.clean 背后的目的是从标签中删除“样式”

我正在使用 lxml.html.clean 来清理 html。它似乎从所有标签中删除了“样式”属性,出于我的目的,我需要不删除样式属性。

在我开始允许之前,我很想了解在清理 html 时不删除样式属性是否存在任何安全隐患。

专家们对此事的任何见解都将受到高度赞赏。

(请注意,我的应用程序允许最终用户创建保存在后端数据库中的 html,然后在页面上呈现。上面的“干净”可以很好地在保存之前从 html 中删除任何恶意 html(例如 javascript 等)后续渲染)。

每个feedparser HTML 清理网站- 'style' 不在'safe_attrs' 列表中

(另外,如果这是一个行人问题,我很抱歉。我是 html/sanitization 和相关安全方面的新手)

0 投票
1 回答
1490 浏览

node.js - 使用 mongoose 转义一些 HTML 标签

我刚刚开始使用 mongoose,并且我有一个用例,我希望拥有一个“安全”HTML 标签(即 、 、 、其他)的白名单<i><b><u>我想删除恶意标签,例如<script>. 我目前正在尝试找到一个支持类似这样的清理中间件,但到目前为止,我发现的只是validator.js似乎不支持将 HTML 列入白名单,而只是将字符列入白名单。

我的用例如下:我想使用summernote创建一些依赖用户输入的格式良好的东西,使用猫鼬将它们保存到mongodb,然后在其他地方显示特定的HTML。

是否有一些中间件可以帮助我解决这个问题?

0 投票
3 回答
2820 浏览

php - 致命错误:调用未定义的函数 filter()

为了过滤 post 变量,我在包含文件中使用以下函数

当我使用以下代码过滤主文件中的 post 数组时

我收到

任何想法?

0 投票
1 回答
1717 浏览

jsf - JSF 的服务器端 HTML 清理程序/清理程序

任何 JSF 实用工具包或 PrimeFaces/OmniFaces 等库中是否有任何 HTML 清理程序或清理方法?

escape="true"我需要按照 stackexchange 样式通过 p:editor 清理用户输入的 HTML,并使用 显示安全的 HTML 输出。在显示 HTML 之前,我正在考虑将经过清理的输入数据存储到数据库中,以便可以安全使用,escape="true"并且 XSS 不会造成危险。

0 投票
0 回答
70 浏览

javascript - 剥离 html 标签,'RegExp-free-way'

我最近对通过使用正则表达式“清理”html字符串来处理任务的解决方案有点偏执。它们在很大程度上取决于给定正则表达式的“防弹”程度。所以,我想出了这个片段,并希望从社区中得到一些关于它的反馈。谢谢。

0 投票
1 回答
472 浏览

sanitization - HTML Purifier 对于评论系统来说太慢了吗?有更好的选择吗?

我正在stackoverflow上写一个类似here的评论系统,我不确定在输出之前清理用户内容的最佳方法。

真的很想在将内容输出到页面时对其进行清理,因为如果我在将内容插入数据库之前对其进行清理,我可以想到可能会发生的各种问题。

到目前为止,我一直只是简单地运行我的用户内容

据我了解,这使得输出安全。

但是,我用于评论系统的 WYSIWYG 编辑器允许使用以下 HTML 标记进行格式化:

因此,我需要能够输出这些标签而不是对其进行编码,以便正确显示注释。

我正在使用的 WYSIWYG 编辑器的文档(Redactor)建议通过 运行用户内容strip_tags(),将上述标签作为允许的标签参数传递。但是,我在 stackoverflow 上阅读的问题和答案表明这可能还不够。

在假设下操作strip_tags()还不够好,我一直在寻找替代方案,似乎最受推崇的选项之一是 HTML Purifier。但是,我一直在这里阅读问题和答案,表明 HTML Purifier非常慢。

由于评论的呈现方式,每个评论都必须单独纯化(我不能将所有评论都作为一个字符串),我想知道如果有 HTML Purifier,这是否会太慢一个线程中有数十甚至数百条评论。

概括:

  • 对于这种类型的评论系统,HTML Purifier 会不会太慢?
  • 有更好的选择吗?
  • stackoverflow 是如何处理这个问题的?
0 投票
1 回答
339 浏览

owasp - owasp html sanitizer 中的 isValid() 方法

我的应用程序中有一个页面,用户可以在其中输入 HTML 输入。现在为了避免 XSS 攻击,我正在使用 OWASP HTML Sanitizer 来清理用户输入。如果根据策略用户输入无效,我只想将用户赶出去。

有没有一种方法可以简单地检查输入的 html 是否对策略有效而不进行清理?

就像是

public static boolean isValid(字符串输入,策略策略);

0 投票
1 回答
728 浏览

regex - 如何允许文本框只接受特定的 HTML 标签?

我的 MVC 视图中有一个文本框,允许用户输入 HTML 标签,但只有少数标签(例如 B、I、U 和 A)。为此,我将 POST 操作上的 ValidateInput 属性设置为 False,因此它允许用户输入 HTML 标记。但现在我想限制用户输入其他 HTML 标签,例如(INPUT、SCRIPT 等)。我的意思是,除了我想允许的那些之外的任何东西。

我想,一种方法是使用正则表达式,但我无法为此找到合适的正则表达式。

知道如何实现这一目标吗?对此非常感谢任何帮助。

谢谢并恭祝安康