标签: htmlpurifier

mod_security和htmlpurifier都是矫枉过正吗?

我们之前已将htmlpurifier集成到我们基于LAMP的产品中,但它有点慢.最近,我们开启了mod_security.这两个都是OWASP项目的一部分(owasp在内部使用htmlpurifer,我检查过),所以我认为安全性是多余的.

你会建议什么?关闭htmpurifier是一个可行的选择吗?谢谢你的回答.

php security mod-security htmlpurifier owasp

1
推荐指数
1
解决办法
328
查看次数

HTML Purifier 根本没有 HTML

如果我想删除文本中的所有 HTML 代码,但仍然保留可理解的文本,我应该使用哪种方法?

我应该使用 HTML Purifier 还是以$Configuracion->set('HTML.Allowed', '');其他方式使用?

php htmlpurifier

1
推荐指数
1
解决办法
3015
查看次数

在WYSIWYG中纯化后呈现脚本标签

我在使用HTMLPurifier php库时遇到问题.我正在为我的应用程序中的所有文本区域使用名为"Summernote"的WYSIWYG编辑器.

在sommernote里面写一些东西时:

<script>alert('test');</script>

帖子数据来自

<p>&lt;script&gt;alert('test');&lt;/script&gt;</p>

但是,一旦通过HTMLPurifier运行,它就不会删除转换为常规字符的脚本标记.因此,当我在summernote中编辑此文本时,它实际上运行脚本!

这是处理编辑器的内容的图像:

HTML Purifier问题

以下是它如何存储在数据库中:

HTML Purifier问题 -  2

如果有人有任何想法,请告诉我!

编辑:另外,如果我禁用Summernote WYSIWYG编辑器,则在使用HTMLPurifier进行清理时,会从textarea中成功删除标记.

sanitization htmlpurifier laravel

1
推荐指数
1
解决办法
2274
查看次数

HTML Purifier 移除 TinyMCE HTML 5 视频标签

我在 Symfony2 应用程序中使用 TinyMCE 和 HTMLPurifier。

我需要使用 TinyMCE 嵌入网站的一些内部视频。问题是 HTML Purifier不接受 HTML5 视频标签并将其删除。

有人让我知道如何配置 TinyMCE/HTMLPurifier 以允许视频嵌入?

php tinymce htmlpurifier html5-video symfony

1
推荐指数
1
解决办法
1847
查看次数

如何在 $request 对象上使用 Laravel 5 HTML Purifier?

我正在使用HTMLPurifier for Laravel 5包来清理我的输入字段。目前我的store()方法是这样的:

public function store(Request $request)
{
    // Some business logic goes here

    $post = Post::create($request->all());

    // More business logic
}
Run Code Online (Sandbox Code Playgroud)

我的$request变量包含这些:

{
  "_token": "zbyUnJuAbSliem40B6xjWJfGOayoFlRSVIvrDlDM",
  "title": "Test Title",
  "slug": "test-title",
  "category_id": "1",
  "tags": [
    "2"
  ],
  "body": "<p>Test body.</p>"
}
Run Code Online (Sandbox Code Playgroud)

如何仅在变量Purifier::clean()上使用方法$request来净化$request->body元素?

如果我使用Purifier::clean($request->all()),那么它将<p>标记添加到对象的所有元素,$request而不是仅添加body这样的元素:

{
  "_token": "<p>zbyUnJuAbSliem40B6xjWJfGOayoFlRSVIvrDlDM</p>",
  "title": "<p>Test Title</p>",
  "slug": "<p>test-title</p>",
  "category_id": "<p>1</p>",
  "tags": [
    "<p>2</p>"
  ],
  "body": "<p>Test …
Run Code Online (Sandbox Code Playgroud)

php htmlpurifier laravel laravel-5

1
推荐指数
1
解决办法
4149
查看次数

如何阻止HTMLpurifier在markdown中转义PHP简写语法示例?

我正在使用markdown和HTMLpurifier,我希望<?= $variable ?>在markdown代码中使用简写PHP()的示例(使用缩进语法),但HTMLpurifier不会将标记识别<为允许元素并且正在转义它.

知道我需要在HTMLpurifier中启用什么配置选项来阻止它逃避这个吗?

php markdown htmlpurifier htmlspecialchars

0
推荐指数
1
解决办法
359
查看次数

如何识别文本是否为HTML?(在PHP中)

我想从数据库中读取文本条目,其中一些实际上是HTML条目,另一些只是可能包含HTML标记的纯文本,应该显示为文本.

那些纯文本应该转换为HTML,首先调用PHP的htmlspecialchars()函数,然后通过HTMLPurifier运行结果.

或者换句话说,我正在寻找有关如何实现isHTML()函数的一些技巧:

$text = getTextFromDatabase();
if (!isHTML($text)) {
    $text = htmlspecialchars($text);
}
$purifier = new HTMLPurifier();
$clean_html = $purifier->purify($text);
Run Code Online (Sandbox Code Playgroud)

因此,例如以下文本将贯穿htmlspecialchars:

The <p> tag of HTML has to be followed by a </p> tag to end the paragraph.
Run Code Online (Sandbox Code Playgroud)

以下文字将不会贯穿htmlspecialchars:

<p>These are few lines of HTML.</p>
<div>There might be multiple independent</div>
<p>but valid HTML blocks in it.</p>
Run Code Online (Sandbox Code Playgroud)

似乎应该已经有了一个isHTML()功能,但我不能碰巧找到它,我不想重新发明轮子:-).也许甚至可以使用某种HTMLPurifier设置来做到这一点?

请注意,如果HTML代码有问题,则应由HTMLPurifier处理,并且不应运行代码htmlspecialchars.:-)例如,<p></p>HTML代码中确实应该有一个结束标记时,有一个开始标记.

任何帮助表示赞赏,谢谢:-),
Robert.

html php text htmlpurifier

0
推荐指数
4
解决办法
6002
查看次数

Laravel Package Purifer不适用于iframe

似乎即使在添加Config params以启用YouTube和Vimeo Iframe之后,我仍然会收到异常错误."不支持元素'iframe'[..]"

return array(
   'encoding' => 'UTF-8',
       'finalize' => true,
       'preload'  => false,
       'settings' => array(
       'default' => array(
              'HTML.Doctype'             => 'XHTML 1.0 Strict',
              'HTML.Allowed'             => 'blockquote,div,b,strong,i,em,a[href|title],ul,ol,li,p[style],br,span[style],img[width|height|alt|src]',
              'CSS.AllowedProperties'    => 'font,font-size,font-weight,font-style,font-family,text-decoration,padding-left,color,background-color,text-align',
              "HTML.SafeIframe"          => 'true',
              "URI.SafeIframeRegexp"     => "%^(http://|https://|//)(www.youtube.com/embed/|player.vimeo.com/video/|api.soundcloud.com/tracks/)%",
        'AutoFormat.AutoParagraph' => true,
        'AutoFormat.RemoveEmpty'   => true,
    ),
),
Run Code Online (Sandbox Code Playgroud)

htmlpurifier laravel-4

0
推荐指数
1
解决办法
554
查看次数