如何确保一个或多个第三方插件足够安全以安装到应用程序?

How to be sure that one or more third party plugins are secure enough to install to an app?

我们需要组件和插件来改善用户体验,允许用户选择日期和从列表中选择项目等。我们可以手动构建它们并在这些上花费大量时间,或者我们可以在线搜索预先存在的解决方案.

这些插件和框架通常是免费的或社区构建的项目,因此您不能保证它们免受 XSS 注入等常见攻击。这些攻击向量可以为攻击者提供有关我们项目的大量有价值信息,而不会对我们的项目造成任何明显的损害。

我该如何防止这种情况发生?有没有正确的方法在使用前测试第三方插件?

没有

现实地说,没有任何方法可以保证插件 100% 安全。一些插件被添加到 WordPress 网站,或合并到项目中,甚至被设置为国际标准协议,它们仍然存在漏洞。如果您有兴趣,可以看看最近造成很多麻烦的 WPA2 KRACK 漏洞。

遗憾的是,这是一个风险,您将不得不为任何地方安装任何插件。 Google Play 商店中有许多应用程序包含病毒和漏洞,设计 以便黑客访问。 Google Chrome 商店中仍有许多易受攻击或恶意的插件,任何人都可以下载。 WordPress 有一些糟糕的插件,它们提供了很多看似没有回报的弱点。除了简单地不使用它之外,没有任何其他方法可以摆脱不安全的插件。

你能做些什么

1)看看都做了哪些安全测试。他们有任何认证或合规检查吗?他们的网站上是否有任何徽章来证明他们定期测试和维护其应用程序的漏洞?

2)它是开源的吗?这是一个大的!开源不仅意味着任何人都可以查看代码,还意味着任何人都可以编辑代码并重新分发他们自己的版本。请务必从可靠来源下载插件版本并检查其代码。如果您能看到其中的任何漏洞,黑客也很可能会发现。然而,开源项目通常会比传统的 black box 程序更快地发现漏洞。这意味着通常存在一些不太为人所知的漏洞或弱点,这些漏洞或弱点很难被利用或提供无用的信息,但情况并非总是如此。

3)自己测试一下?如果您不确定并且真的想格外小心,您可以自己测试插件(或找人为您测试)。有些公司会为您做专业的工作,但会收取费用。一些在线用户通常很乐意对其进行测试,看看他们能找到什么(漏洞赏金猎人是一回事)。即使只是问一个知道他们在做什么的朋友,或者谷歌搜索一些常见的黑客或注入脚本/工具,也是测试某些东西的良好开端;让我们面对现实 - 总比没有好!

4)避开它!如果您真的不能确定并且不想冒险,您可以简单地避免插件并自己创建项目(在某些情况下,这可能更不安全或构建不佳)或者您可以选择不同的解决方案或插件。因此,如果您发现 PluginFoo 看起来可疑或不安全,您可以选择 PluginBar。