限制主题文件的直接访问值得吗?

时间:2012-08-24 作者:mrwweb

我不时在主题中遇到以下片段:

if ( ! defined(\'ABSPATH\')) exit(\'restricted access\');
这是在一些(所有?)PHP文件在一个主题中,它应该防止恶意来源直接访问该文件。

我发现这并没有包含在《2010年》或《2011年》中,而且我从未在官方WordPress文档中看到过推荐的内容。对我来说,这似乎是个好主意,但我对安全性的了解还不够,无法对其进行判断,也无法在谷歌上找到太多信息。

这是我的自定义主题中应该包含的内容吗?如果是这样的话,它应该在所有PHP文件中还是仅在一些PHP文件中?

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

通常,你不需要它。但是……至少有一种边缘情况:

如果主题文件是模板部分,则使用调用上下文(父文件)中的全局变量register_globalson,

  • 仅使用这些变量而不进行任何安全检查…
    • …攻击者可以调用此文件,将缺少的变量设置为GETPOST 然后让主题文件打印出来。还有一个安全问题。

      所以…最好的选择不是像您的示例中那样的上下文检查,而是好的代码:避免全局变量,在打印之前检查它们的内容。

    结束

    相关推荐

    Security and .htaccess

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