GmsCore_OpenSSL可以引发从Google Play中拒绝的所有已更新的应用?

时间:2015-07-13 08:26:23

标签: android security openssl google-play certificate

我想不止一个收到来自Google Play的一封邮件,并附上消息:

“Hello Google Play Developer,

我们想让您知道,下面列出的应用会静态链接到具有多个用户安全漏洞的OpenSSL版本。请在7/7/15之前将您的应用迁移到OpenSSL的更新版本。从此日期开始,Google Play将阻止发布使用不受支持的OpenSSL版本的任何新应用和更新。

警告原因:违反内容政策的危险产品规定和开发者分发协议第4.4节。 这些漏洞在OpenSSL版本中得到修复,从1.0.1h,1.0.0m和0.9.8za开始。要确认您的OpenSSL版本,您可以通过以下方式执行grep:

$ unzip -p YourApp.apk |字符串| grep“OpenSSL”

有关此漏洞的详细信息,请参阅此OpenSSL安全通报。要确认您已正确升级,请将更新版本的应用程序提交给开发者控制台,并在五小时后再回来查看。 从2015年7月7日开始,我们不接受包含漏洞的应用更新。任何包含漏洞的新应用都将被拒绝。“

所以我读了很多关于此的帖子,比如Post 1Post 2和其他人。我必须说,在我的第一个版本的应用程序中,我不使用任何库,全部来自Android(我使用webview),当我在我的第一个应用程序中使用“unzip -p YourApp.apk | strings | grep”OpenSSL“” 我没有任何OpenSSL

  • 这是否意味着我收到了邮件,因为我可能用旧的OpenSSL签署了apk? (我使用Windows,Android Studio。)如果是这样,我应该制作一个签名的apk manuall y与最新版本的OpenSSL?

  • 或者我的apk必须要求OpenSSL吗?

在我目前的版本中,我使用的库类似于:app-compact:22.2.0(来自android,最新版本),gms:7.5.0(来自android,最新版本)和凌空(1.0.16)以及当我使用时“unzip -p YourApp.apk | strings | grep”OpenSSL“”给了我类似GmsCore_OpenSSL的结果。我猜GmsCore_OpenSSL来自gms库,因此来自Android本机。

  • 这是否意味着他拥有最新的OpenSSL?
  • 我是否需要在某个地方对其进行初始化?

谢谢高级,

1 个答案:

答案 0 :(得分:1)

用于签署APK的工具无关紧要。如果您已经搜索过APK中的每个文件但找不到旧OpenSSL的任何用途,则下一步是检查APK间接使用的所有文件。

有一个App下载了Busybox,而Busybox包含了curl,其中包含旧版本的OpenSSL,导致它被标记。

所以如果要下载任何本机代码库,请运行字符串| grep“OpenSSL”并确保它们也是最新的。