问题标签 [htmlpurifier]

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 投票
2 回答
3674 浏览

php - 如何正确使用 HTML Purifier?

我在我的 PHP 项目中使用HTML Purifier ,但无法让它与用户输入一起正常工作。

我让用户使用 WYSIWYG 编辑器(TinyMCE)输入 HTML,但每当用户输入 HTML 实体 (不间断空格)时,它都会作为这个奇怪的外来字符(Â)保存到数据库中。

但是,问题是,当我使用 WYSIWYG 编辑器编辑保存的条目时,它会正确显示为 . 它在显示时也能正常工作,只是在源代码中它显示为一个真实的空格,而不是不间断的空格字符。

此外,在 MySQL 数据库中,它显示为奇怪的外来字符。

我阅读了有关Unicode 和 HTML Purifier的文档,并将我的数据库和网页编码更改为 UTF-8,但我仍然遇到不破坏空格字符的问题。其他 HTML 实体,例如&lt;and &gt;,被保存为<and >,但为什么不&nbsp;呢?

0 投票
4 回答
2405 浏览

php - 在 Zend_Loader 中包含 HTMLpurifier

我想将 HTMLpurifier 与 Zend 框架结合使用。我很想用 Zend_Loader 加载类及其文件。你将如何包括它?您会只使用 HTMLPurifier.auto.php 还是您知道更好的方法?

0 投票
1 回答
2147 浏览

attributes - 如何使用 HTMLpurifier 将某些属性列入白名单?

如何使用 HTMLpurifier 将某些属性列入白名单?我希望 HTMLpurifier 删除所有其他不允许的属性。

0 投票
1 回答
1576 浏览

php - HTML Purifier 选择性地吃掉特殊字符

针对 UTF-8 兼容的数据库使用 PHP。这是输入的方式。

  1. 用户在 textarea 中输入输入
  2. 用 javascript escape() 编码的文本区域
  3. 通过 HTTP post 传递
  4. 用 PHP rawurldecode() 解码
  5. 使用默认设置通过 HTMLPurifier
  6. 为 MySQL 转义并存储在数据库中

它以通常的方式出现,我在页面加载时运行 unescape() 。这是为了让人们可以直接从 Word 文档中复制和粘贴,并显示智能引号。

但是 HTMLPurifier 似乎正在破坏非 UTF-8 特殊字符,那些转义()到一个简单的 % 表达式的字符,比如 Ö,它转义到 %D6,而 smartquotes 转义到 %u2024 或其他东西并以这种方式进入数据库。它取出特殊字符和紧随其后的字符。

我需要在这个过程中改变一些东西。也许我需要改变很多事情。

我该怎么做才能不破坏特殊字符?

0 投票
1 回答
105 浏览

drupal - 关闭 htmlpurifier 升级消息

在 drupal 中,不断从 htmlpurifier 获得整个站点的升级消息,表明 4.0 可用。Ran 升级(上传文件并运行 update.php)但仍有消息。当我用谷歌搜索时,没有发现这个。

假设 maintenace 文件夹中的 flush.php 将刷新它的缓存(与 Drupal 缓存的其余部分不方便地分开),但尝试在浏览器中执行会出错。

升级失败或需要刷新缓存,或者只是关闭此消息。建议?

0 投票
4 回答
4210 浏览

php - HTML Purifier - 净化什么?

我正在使用 HTML Purifier 来保护我的应用程序免受 XSS 攻击。目前我正在从 WYSIWYG 编辑器中净化内容,因为这是唯一允许用户使用 XHTML 标记的地方。

我的问题是,我是否应该在登录身份验证系统中的用户名和密码(或注册页面的输入字段,如电子邮件、姓名、地址等)上也使用 HTML Purifier?那里有XSS攻击的机会吗?

0 投票
2 回答
2635 浏览

php - 允许使用 HTMLPurifier 嵌入/对象/参数 HTML 标签?

是否可以允许使用 HTMLPurifier 嵌入、对象和参数 HTML 标签?我试图允许嵌入 YouTube、Vimeo 等视频,但无论我尝试什么,它们总是被剥离。我明白这些是允许的风险标签。

如果不可能,PHP 有哪些其他 HTML 过滤选项?Tidy 似乎不是为过滤而设计的……是吗?而且 strip_tags() 并没有给我我正在寻找的控制级别——例如只允许某些属性。

谢谢你的帮助!

0 投票
3 回答
1009 浏览

php - HTMLPurifier,检查整个 HTML 文档

我正在使用 HTMLPurifier 检查整个 HTML 文档中的 XSS。问题是它似乎去掉了任何不在<body>标签内的东西。但是,我想保留一切,只需要注意严重的 XSS 攻击。

任何想法如何允许<HTML><HEAD><META>

0 投票
1 回答
893 浏览

php - 使用 HTML Purifier 停止指向自己网站的链接

我已经使用HTML 净化器清除了来自我面向公众的所见即所得编辑器的任何可疑内容。传入的 HTML 也会显示在网站的公共部分。

我已允许链接,并且我还自动以纯文本链接 URL(使用净化器)。

有没有办法允许外部链接,但禁止链接到同一个域?例如,我的域是 www.example.com

http://www.google.com将被链接。

http://www.example.com/logout/不会被链接。

我正在考虑尽量减少来自恶意用户的任何干扰。我应该让我的注销链接成为一个带有 POST 键/值对的表单操作来阻止这种情况发生吗?

谢谢

0 投票
1 回答
3721 浏览

php - 向 HTML Purifier 过滤器添加属性?

我试图在 HTML Purifier 过滤器中的元素中允许 rel 属性。我正在关注本指南http://htmlpurifier.org/docs/enduser-customize.html,这是我的代码:

但是,HTML 净化器仍在过滤掉所有 rel 属性......我有点困惑问题可能是什么。

当我使用:

我收到此错误:

注意:使用不推荐使用的 API:在第 1819行的文件中的$config->set('Attr.AllowedRel', ...)第 191行使用C:\wamp\www\neonet\application\modules\admin\controllers\IndexController.phpC:\wamp\www\neonet\library\My\htmlpurifier-4.0.0-standalone\HTMLPurifier.standalone.php

编辑:

新代码:

当我使用:

Rel 属性仍然被过滤。