2016-05-14 63 views
0

我正在创建一个博客网站。我想阻止用户(所有用户甚至是用户类型都是管理员)将任何脚本标签输入到wordpress文章中。如果用户在脚本中输入脚本标签,然后点击发布,它应该给用户提供错误信息,或者直接从内容中删除脚本标签。我对wordpress并不熟悉。请建议我如何做到这一点。防止用户将脚本输入到WordPress后

在此先感谢

回答

0

设置

define('DISALLOW_UNFILTERED_HTML', true); 

wp-config.php是推荐的方式来做到这一点。

为什么有些用户允许发布未经过滤的HTML?

具有管理员或编辑者角色的用户可以在发布标题,发布内容和评论中发布未经过滤的HTML。毕竟,WordPress是一种发布工具,人们需要能够包含他们需要沟通的任何标记。不允许权限较小的用户发布未经过滤的内容。

如果您针对WordPress运行安全测试,请使用较低权限的用户,以便过滤所有内容。如果您担心管理员将XSS放入内容并窃取cookie,请注意所有Cookie都标记为仅HTTP传输,并分为用于管理页面的特权cookie和用于公共页面的非特权cookie。内容永远不会在管理员中显示。无论如何,管理员拥有广泛的超级权力,其中未过滤的HTML是较少的。

在WordPress多站点中,只有超级管理员可以发布未经过滤的HTML,因为所有其他用户都被视为不可信。

要为所有用户(包括管理员)禁用未经过滤的HTML,可以将define('DISALLOW_UNFILTERED_HTML', true);添加到wp-config.php

https://make.wordpress.org/core/handbook/testing/reporting-security-vulnerabilities/#why-are-some-users-allowed-to-post-unfiltered-html