Android OpenSSL 应用程序拒绝问题

2023-12-12

经过大量研究后,我仍然无法弄清楚我的应用程序的哪一部分使用了 Google 不接受的 OpenSSL。

查询以下命令后,我收到的输出为:

unzip -p MyApp.apk | strings | grep "OpenSSL"

GmsCore_OpenSSL
OpenSSLDie
ECDH_OpenSSL
ECDSA_OpenSSL
OpenSSL_add_all_ciphers
OpenSSL_add_all_digests
UI_OpenSSL
SSLv2 part of OpenSSL 1.0.1e 11 Feb 2013
SSLv3 part of OpenSSL 1.0.1e 11 Feb 2013
TLSv1 part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL 1.0.1e 11 Feb 2013
DTLSv1 part of OpenSSL 1.0.1e 11 Feb 2013
%s(%d): OpenSSL internal error, assertion failed: %s
AES part of OpenSSL 1.0.1e 11 Feb 2013
ASN.1 part of OpenSSL 1.0.1e 11 Feb 2013
Blowfish part of OpenSSL 1.0.1e 11 Feb 2013
Big Number part of OpenSSL 1.0.1e 11 Feb 2013
CONF_def part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL default
CONF part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL CMAC method
libdes part of OpenSSL 1.0.1e 11 Feb 2013
DES part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL PKCS#3 DH method
OpenSSL DH Method
Diffie-Hellman part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL DSA method
DSA part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL 'dlfcn' shared library method
OpenSSL EC algorithm
ECDH part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL ECDH method
ECDSA part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL ECDSA method
EVP part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL HMAC method
lhash part of OpenSSL 1.0.1e 11 Feb 2013
MD4 part of OpenSSL 1.0.1e 11 Feb 2013
MD5 part of OpenSSL 1.0.1e 11 Feb 2013
PEM part of OpenSSL 1.0.1e 11 Feb 2013
RAND part of OpenSSL 1.0.1e 11 Feb 2013
You need to read the OpenSSL FAQ, http://www.openssl.org/support/faq.html
RC2 part of OpenSSL 1.0.1e 11 Feb 2013
RC4 part of OpenSSL 1.0.1e 11 Feb 2013
RIPE-MD160 part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL RSA method
RSA part of OpenSSL 1.0.1e 11 Feb 2013
SHA1 part of OpenSSL 1.0.1e 11 Feb 2013
SHA-256 part of OpenSSL 1.0.1e 11 Feb 2013
SHA-512 part of OpenSSL 1.0.1e 11 Feb 2013
Stack part of OpenSSL 1.0.1e 11 Feb 2013
TXT_DB part of OpenSSL 1.0.1e 11 Feb 2013
OpenSSL default user interface
X.509 part of OpenSSL 1.0.1e 11 Feb 2013
MSG: DTLS-SRTP enabled but not supported. Please rebuild the code with this option enabled (requires OpenSSL 1.0.1+)
_ZN5resip12BaseSecurity20OpenSSLCTXSetOptionsE
_ZN5resip12BaseSecurity22OpenSSLCTXClearOptionsE
_ZN5resip12BaseSecurity21parseOpenSSLCTXOptionERKNS_4DataE
_Z23handleOpenSSLErrorQueueimPKc
_ZN5resip11OpenSSLInit4initEv
resip_OpenSSLInit_threadIdFunction
_ZN5resip11OpenSSLInitD2Ev
_ZN5resip11OpenSSLInit12mInitializedE
_ZN5resip11OpenSSLInit8mMutexesE
resip_OpenSSLInit_lockingFunction
_ZN5resip11OpenSSLInitC2Ev
_ZN5resip11OpenSSLInitC1Ev
_ZN5resip11OpenSSLInitD1Ev
resip_OpenSSLInit_dynCreateFunction
resip_OpenSSLInit_dynDestroyFunction
resip_OpenSSLInit_dynLockFunction
OpenSSLDie
DH_OpenSSL
OpenSSL_add_all_ciphers
OpenSSL_add_all_digests
DSA_OpenSSL
ECDSA_OpenSSL
ECDH_OpenSSL
UI_OpenSSL
Not a recognized OpenSSL option name: 
SSL_CTX_new failed, dumping OpenSSL error stack:
OpenSSL error stack: 
Failed to create OpenSSL BIO for socket
OpenSSL 1.0.2a 19 Mar 2015
%s(%d): OpenSSL internal error, assertion failed: %s
OpenSSL DH Method
OpenSSL X9.42 DH method
OpenSSL PKCS#3 DH method
OpenSSL default
OpenSSL CMAC method
OpenSSL HMAC method
OpenSSL EC algorithm
OpenSSL RSA method
OpenSSL DSA method
OpenSSL ECDSA method
OpenSSL ECDH method
You need to read the OpenSSL FAQ, http://www.openssl.org/support/faq.html
OpenSSL default user interface
OpenSSL 'dlfcn' shared library method
TLSv1 part of OpenSSL 1.0.2a 19 Mar 2015
SSLv3 part of OpenSSL 1.0.2a 19 Mar 2015
DTLSv1 part of OpenSSL 1.0.2a 19 Mar 2015
MD5 part of OpenSSL 1.0.2a 19 Mar 2015
SHA1 part of OpenSSL 1.0.2a 19 Mar 2015
SHA-256 part of OpenSSL 1.0.2a 19 Mar 2015
SHA-512 part of OpenSSL 1.0.2a 19 Mar 2015
Big Number part of OpenSSL 1.0.2a 19 Mar 2015
EC part of OpenSSL 1.0.2a 19 Mar 2015
iRSA part of OpenSSL 1.0.2a 19 Mar 2015
Diffie-Hellman part of OpenSSL 1.0.2a 19 Mar 2015
Stack part of OpenSSL 1.0.2a 19 Mar 2015
lhash part of OpenSSL 1.0.2a 19 Mar 2015
EVP part of OpenSSL 1.0.2a 19 Mar 2015
ASN.1 part of OpenSSL 1.0.2a 19 Mar 2015
PEM part of OpenSSL 1.0.2a 19 Mar 2015
X.509 part of OpenSSL 1.0.2a 19 Mar 2015
CONF part of OpenSSL 1.0.2a 19 Mar 2015
CONF_def part of OpenSSL 1.0.2a 19 Mar 2015
DES part of OpenSSL 1.0.2a 19 Mar 2015
libdes part of OpenSSL 1.0.2a 19 Mar 2015
AES part of OpenSSL 1.0.2a 19 Mar 2015
RC2 part of OpenSSL 1.0.2a 19 Mar 2015
IDEA part of OpenSSL 1.0.2a 19 Mar 2015
CAMELLIA part of OpenSSL 1.0.2a 19 Mar 2015
EDSA part of OpenSSL 1.0.2a 19 Mar 2015
ECDSA part of OpenSSL 1.0.2a 19 Mar 2015
ECDH part of OpenSSL 1.0.2a 19 Mar 2015
RAND part of OpenSSL 1.0.2a 19 Mar 2015
TXT_DB part of OpenSSL 1.0.2a 19 Mar 2015
MD4 part of OpenSSL 1.0.2a 19 Mar 2015
SHA part of OpenSSL 1.0.2a 19 Mar 2015
RIPE-MD160 part of OpenSSL 1.0.2a 19 Mar 2015
3RC4 part of OpenSSL 1.0.2a 19 Mar 2015
Blowfish part of OpenSSL 1.0.2a 19 Mar 2015
\CAST part of OpenSSL 1.0.2a 19 Mar 2015
_ZN5resip12BaseSecurity20OpenSSLCTXSetOptionsE
_ZN5resip12BaseSecurity22OpenSSLCTXClearOptionsE
_ZN5resip12BaseSecurity21parseOpenSSLCTXOptionERKNS_4DataE
_Z23handleOpenSSLErrorQueueimPKc
_ZN5resip11OpenSSLInit4initEv
resip_OpenSSLInit_threadIdFunction
_ZN5resip11OpenSSLInitD2Ev
_ZN5resip11OpenSSLInit12mInitializedE
_ZN5resip11OpenSSLInit8mMutexesE
resip_OpenSSLInit_lockingFunction
_ZN5resip11OpenSSLInitC2Ev
_ZN5resip11OpenSSLInitC1Ev
_ZN5resip11OpenSSLInitD1Ev
resip_OpenSSLInit_dynCreateFunction
resip_OpenSSLInit_dynDestroyFunction
resip_OpenSSLInit_dynLockFunction
OpenSSLDie
DH_OpenSSL
OpenSSL_add_all_ciphers
OpenSSL_add_all_digests
DSA_OpenSSL
ECDSA_OpenSSL
ECDH_OpenSSL
UI_OpenSSL
OpenSSL error stack: 
OpenSSL 1.0.2a 19 Mar 2015
OpenSSL DH Method
OpenSSL X9.42 DH method
OpenSSL PKCS#3 DH method
OpenSSL default
OpenSSL CMAC method
OpenSSL HMAC method
OpenSSL EC algorithm
OpenSSL RSA method
OpenSSL DSA method
OpenSSL ECDSA method
OpenSSL ECDH method
Not a recognized OpenSSL option name: 
SSL_CTX_new failed, dumping OpenSSL error stack:
Failed to create OpenSSL BIO for socket
%s(%d): OpenSSL internal error, assertion failed: %s
You need to read the OpenSSL FAQ, http://www.openssl.org/support/faq.html
OpenSSL default user interface
OpenSSL 'dlfcn' shared library method
TLSv1 part of OpenSSL 1.0.2a 19 Mar 2015
SSLv3 part of OpenSSL 1.0.2a 19 Mar 2015
DTLSv1 part of OpenSSL 1.0.2a 19 Mar 2015
MD5 part of OpenSSL 1.0.2a 19 Mar 2015
SHA1 part of OpenSSL 1.0.2a 19 Mar 2015
SHA-256 part of OpenSSL 1.0.2a 19 Mar 2015
SHA-512 part of OpenSSL 1.0.2a 19 Mar 2015
Big Number part of OpenSSL 1.0.2a 19 Mar 2015
EC part of OpenSSL 1.0.2a 19 Mar 2015
RSA part of OpenSSL 1.0.2a 19 Mar 2015
Diffie-Hellman part of OpenSSL 1.0.2a 19 Mar 2015
Stack part of OpenSSL 1.0.2a 19 Mar 2015
lhash part of OpenSSL 1.0.2a 19 Mar 2015
EVP part of OpenSSL 1.0.2a 19 Mar 2015
ASN.1 part of OpenSSL 1.0.2a 19 Mar 2015
PEM part of OpenSSL 1.0.2a 19 Mar 2015
X.509 part of OpenSSL 1.0.2a 19 Mar 2015
CONF part of OpenSSL 1.0.2a 19 Mar 2015
CONF_def part of OpenSSL 1.0.2a 19 Mar 2015
DES part of OpenSSL 1.0.2a 19 Mar 2015
libdes part of OpenSSL 1.0.2a 19 Mar 2015
AES part of OpenSSL 1.0.2a 19 Mar 2015
RC2 part of OpenSSL 1.0.2a 19 Mar 2015
IDEA part of OpenSSL 1.0.2a 19 Mar 2015
DSA part of OpenSSL 1.0.2a 19 Mar 2015
ECDSA part of OpenSSL 1.0.2a 19 Mar 2015
ECDH part of OpenSSL 1.0.2a 19 Mar 2015
RAND part of OpenSSL 1.0.2a 19 Mar 2015
TXT_DB part of OpenSSL 1.0.2a 19 Mar 2015
MD4 part of OpenSSL 1.0.2a 19 Mar 2015
SHA part of OpenSSL 1.0.2a 19 Mar 2015
RIPE-MD160 part of OpenSSL 1.0.2a 19 Mar 2015
Blowfish part of OpenSSL 1.0.2a 19 Mar 2015
\CAST part of OpenSSL 1.0.2a 19 Mar 2015

由于我在项目中使用不同的库 jar 文件和library.so 文件,我的问题是我应该如何找出哪个库导致了这个问题?我应该替换哪个库文件,以便我的应用程序不会再次被拒绝?

非常感谢任何帮助。


经过长时间的研究,我确实发现我在应用程序中使用的库之一是使用较旧的 OpenSSL 版本编译的。 IE,不受支持的 OpenSSL 版本。因此,我的解决方案是使用最新版本的 OpenSSL 重新编译该库 Jar。

此外,所有开发商均已获通知/通知Google六月期间在以下电子邮件中:

Hello Google Play Developer,

We wanted to let you know that your app(s) listed below statically link against a version of OpenSSL that has multiple security vulnerabilities for users. Please migrate your app(s) to an updated version of OpenSSL by 7/7/15. Starting on this date, Google Play will block publishing of any new apps and updates that use unsupported versions of OpenSSL.

REASON FOR WARNING: Violation of the dangerous products provision of the Content Policy and section 4.4 of the Developer Distribution Agreement.

The vulnerabilities were fixed in OpenSSL versions beginning with 1.0.1h, 1.0.0m, and 0.9.8za. To confirm your OpenSSL version, you can do a grep via:

$ unzip -p YourApp.apk | strings | grep "OpenSSL"

For more information about the vulnerability, please see this OpenSSL Security Advisory. To confirm you’ve upgraded correctly, submit the updated version of the app(s) to the Developer Console and check back after five hours.

Starting on 7/7/15, we will not accept app updates containing the vulnerabilities. Any new apps containing the vulnerabilities will be rejected.

While these issues may not affect every app that uses OpenSSL versions prior to 1.0.1h, 1.0.0m, or 0.9.8za, it’s best to stay up to date on all security patches. Make sure to update any libraries in your app that have known issues, even if you're not sure the issues are relevant to your app.

Before publishing applications, please ensure your apps’ compliance with the Developer Distribution Agreement and Content Policy.

If you feel we’ve sent this warning in error, please contact our appeals team through the App Developer help center.

Sincerely,

Google Play Team

因此,您必须弄清楚应用程序的哪个部分使用旧版本的 OpenSSL 来解决此问题。您还需要检查是否有任何 jar 文件是使用旧版本的 OpenSSL 编译的。

希望这对您有所帮助。问候。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android OpenSSL 应用程序拒绝问题 的相关文章

随机推荐

  • EF6 数据库首先将存储过程设为异步

    在异步模式下运行 EF6 存储过程 数据库优先 的正确方法是什么 我读到ToListAsync 但我没有看到存储过程可用 还不确定当实际调用返回 1 OUT 参数或 2 项目列表时是否有不同的方式来调用存储过程 Case 1 using D
  • 为什么必须分配一个指针才能使 realloc 工作而不改变内存块中的第一个值?

    int ptr realloc ptr count sizeof int or ptr realloc ptr count sizeof int 我注意到如果我多次使用选项号一 第一个内存地址的值 ptr指向 变为未定义 尽管内存块中的所有
  • Swift 3.0 删除字典数组中的重复项

    我正在努力删除 swift 3 0 中字典数组中的重复字典 下面是 let Dict1 String String messageTo Madhu let Dict2 String String messageTo Kiran let Di
  • python如何对int、str列表的列表进行排序[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 给定一个 int str 列表 我需要找到一种方法将其从最高到最低排序 而不使用排序 所以如果我有 list 1 orange 3 banana 2 pear 1 apple 我应该
  • 如何从 SQL Server Management Studio 历史记录中删除“服务器名称”项目

    当尝试连接到 Management Studio 特别是 2008 中的服务器时 有一个字段可供您输入服务器名称 该字段还有一个下拉列表 其中显示您尝试连接的服务器的历史记录 如何删除单个项目 从那段历史 如何删除 登录字段历史记录中的项目
  • 确定 Cassandra 中分区的节点

    这可能是一个特殊的问题 但是是否可以确定分区键的节点 示例 我有一个分区键 id int 并且我使用默认值分区器 Murmur3Partitioner 具有 3 个节点和复制因子 1 我可以确定id 3的一个节点吗 CREATE TABLE
  • Java 中的字符串比较...? [复制]

    这个问题在这里已经有答案了 可能的重复 如何在 Java 中比较字符串 为什么第一次比较 s1 s2 显示相等 而第二次比较 s1 s3 显示不相等 public class StringComparison public static v
  • htaccess 反向目录

    是否可以让htaccess查找与url相关的特定文件 如果没有找到则返回上一步 Example example here where from Htaccess 会查看 example here where from 是否确实是某种类型的文
  • JavaFX GUI Updater 实用程序类中的并发问题

    我正在 JavaFX 中为一个相当大的 Java 项目构建一个 GUI 该项目有许多不同的工作线程在后台进行一些繁重的计算 我试图在 GUI 中可视化这些工作线程的进度 我所说的进度不仅指纯粹的百分比 还指任务类中未包含的其他变量 例如 例
  • 如何创建从 UIViewController 到 UISplitViewController 的 Segue

    这是我对 iPad 应用程序的设置 我使用单视图应用程序创建了一个新项目UIStoryboard XCode 创建了主UIViewController作为入口点 在视图中 我放置了一个带有按钮的工具栏 然后我插入了一个UISplitView
  • Jquery 使用图像作为复选框

    我正在追求将图像实现为复选框 现在我正在尝试一个示例 下面的代码包含一个简单的图像 旁边有一个提交按钮 单击提交按钮时 我希望图像在其周围形成边框 单击提交按钮时 我希望传递复选框值
  • 使用 JavaScript 添加内容后重新应用样式

    我将尝试扩展我的问题 我有一个链接 a href Display a 我有一些风格 以及以下js代码 function printf MyHtml document write MyHtml function Display printf
  • Meteor 账户-twitter 无法使用

    我一直在尝试Meteor 我想使用 OAuth 对我网站上的用户进行身份验证 因为我不想自己实现登录功能 目前我的网站非常简单 计数器 单击按钮计数器就会加一 当用户转到另一台机器并登录其计数时 这个想法就会被保留 我已按照以下步骤操作流星
  • 带客户端身份验证的 SSL 套接字连接

    我有一个运行一些实用命令的应用程序服务器 它是用 C 编程的 我必须使用 Java SSL 套接字通过 Java 客户端程序连接到服务器 客户端身份验证 服务器端的密钥是使用以下命令创建的 openssl req new text out
  • R studio安装包错误无法移动00LOCK权限被拒绝

    我正在尝试安装rlang封装使用Rstudio但我收到此错误 mv cannot move usr local lib R site library rlang to usr local lib R site library 00LOCK
  • 为什么 Appbase 在返回正确的项目之前返回“未定义”?

    我正在使用 AppBase io 作为数据库 我不明白为什么这个组件在获取项目后渲染两次 看起来 AppBase 数据库 返回了不明确的第一个和正确的项目然后 有人知道为什么吗 查看示例 其中我得到 2 个日志 在这个组件中 我需要从数据库
  • 扩展 AS3 的数组访问运算符以“包装”越界索引值

    我真的很希望能够使 Flash 的数组访问语法 环绕 数组的边界 冗长的解释 var array Array a b c d e f 为了简单起见 第一个索引是 0 其值是第一个字母 a 为了获得这个值 我们会这样做 array 0 ret
  • 如何读取 HttpServletReponses 输出流?

    我想制作一个 Servlet 过滤器 它将在处理和完成后读取响应的内容 并以 XML 或 PDF 或其他形式返回该信息 但我不确定如何从 HttpServletResponse 对象中获取任何信息 我怎样才能得到这些信息 将其添加到过滤器
  • Xgboost 未与校准分类器一起运行

    我正在尝试使用校准的分类器运行 XGboost 下面是我遇到错误的代码片段 from sklearn calibration import CalibratedClassifierCV from xgboost import XGBClas
  • Android OpenSSL 应用程序拒绝问题

    经过大量研究后 我仍然无法弄清楚我的应用程序的哪一部分使用了 Google 不接受的 OpenSSL 查询以下命令后 我收到的输出为 unzip p MyApp apk strings grep OpenSSL GmsCore OpenSS