应使用哪些KES以及何时使用?

时间:2011-06-15 作者:WraithKenny

WP来源显示wp_filter_kseswp_filter_post_kses 传递的数据“预期将用斜杠转义”

另一方面wp_kses_data 是传递的“预期不会转义”的数据,并且wp_kses_post 具有类似于wp\\u kses\\u数据的代码。

将未知(用斜杠转义)数据传递给这些函数有多安全?

第一套能比第二套更受欢迎吗?还是第二套更安全?

或者,在这种情况下,您绝对需要知道数据的状态是否已被删除?

--更新--

我现在想,如果你不知道数据是否被转义,你可以使用wp_kses_data( stripslashes_deep( $data ) ); 如果最后需要转义,请通过addslashes()运行return。

1 个回复
最合适的回答,由SO网友:two7s_clash 整理而成

抄本:

wp\\u filter\\u kses通常应优先于wp\\u kses\\u数据,因为wp\\u magic\\u引号在钩子系统中相当早地转义$\\u GET、$\\u POST、$\\u COOKIE、$\\u SERVER和$\\u REQUEST,在“plugins\\u loaded”之后不久,但在“init”或“wp\\u loaded”之前。

然后首选第一组。更多的问题是,“剥离斜杠是否更安全?”它们都使用相同的允许HTML。嗯,是的,这取决于,在绝对情况下,但我会假设,这样做比不这样做更安全。

KSE的基本用途:

$filtered = wp_kses($unfiltered, $allowed_html, $allowed_protocols);
所有wordpress kses函数都可以

$filtered = wp_kses($unfiltered, $allowedtags);
因此:

$filtered = wp_kses_data($unfiltered);
$filtered = wp_filter_kses($unfiltered); // does the same, but will also slash escape the data
thepost 变体使用不同的标签集;允许非管理员使用的。

结束

相关推荐

Security and .htaccess

大约一个月前,我在一个与爱好相关的托管服务器上创建了一个WordPress博客。所以,我目前还不熟悉这一点。由于我担心安全性,我做的一件事就是安装插件WP安全扫描。根据插件结果,我的网站会被检查出来,但我在结果中看到的是一个红旗:文件。wp admin中不存在htaccess/(我在那里ssh了,它不存在)好的,所以我在这个问题上做了大量的搜索,找到了太多的信息。htaccess。我在WordPress上经历了强化WordPress。org网站等,也遇到了这篇文章:http://digwp.com/201