如何防止插件嗅探/窃取其他插件的选项?

时间:2012-01-11 作者:rinogo

许多插件需要配置敏感数据,如API密钥、密码等。在实现这些插件时,这些敏感数据使用以下函数存储update_option()get_option().

编写一个特洛伊木马插件,它提供了一个有用的功能,但也执行了多种get_option() 调用已知敏感选项。即使这是不可能的,手动SQL查询也可以显示这些敏感数据。

有没有办法避免这种固有的不安全模型?

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

事实上,你能做的并不多。

如果入侵者可以直接访问您的网站-他们可以在那里运行get_option() 或者执行直接SQL查询,那么您已经遇到问题了。这里最安全的赌注是在安装新插件时运用您的最佳判断。

换句话说,最好的行动计划是prevention. 不要安装你不认识的插件或由你不信任的开发人员编写的插件。

虽然您可以使用加密来保护数据,但请记住WordPress本身仍然需要访问。因此,如果WP可以读取数据,那么任何可以运行get_option() 也可以读取数据。

SO网友:xentek

是的,不要安装恶意插件或使用加密(请参阅:http://php.net/manual/en/book.mcrypt.php 了解如何做到这一点)。

结束

相关推荐

Wp_Options与新表的效率

我正在构建一个WordPress主题框架,随着开发的进展,它可能会有很多选项。我发现了一个相关的问题:When is it appropriate to create a new table in the WordPress database?, 这表明新表的效率会更高,但我想知道更多。有道理的是,如果对1000个条目使用新表更快,那么对数十个或数百个条目也必须更快。此外,wp\\U选项表可能变得非常混乱。这两个选项在查询执行时间、内存使用和其他因素方面有什么区别?