Libpng漏洞

时间:2017-01-24 04:55:30

标签: android security opencv libpng

我的应用程序是使用wifi进行实时视频流和录制(包括音频和视频)。使用以下依赖项:

Hello Google Play Developer,

We rejected STEELMAN PRO – Video Scope, with package name com.steelmanpro.wifivideoscope, for violating our Malicious Behavior or User Data policy. If you submitted an update, the previous version of your app is still available on Google Play.

This app uses software that contains security vulnerabilities for users or allows the collection of user data without proper disclosure.

Below is the list of issues and the corresponding APK versions that were detected in your recent submission. Please upgrade your app(s) as soon as possible and increment the version number of the upgraded APK.

Vulnerability
APK Version(s)
Libpng library
The vulnerabilities were fixed in libpng v1.0.66, v.1.2.56, v.1.4.19, v1.5.26 or higher. You can find more information about how resolve the issue in this Google Help Center article.

3

To confirm you’ve upgraded correctly, submit the updated version of your app to the Developer Console and check back after five hours to make sure the warning is gone.

While these vulnerabilities may not affect every app that uses this software, it’s best to stay up to date on all security patches. Make sure to update any libraries in your app that have known security issues, even if you're not sure the issues are relevant to your app.

Apps must also comply with the Developer Distribution Agreement and Developer Program Policies.

If you feel we have made this determination in error, please reach out to our developer support team.

Best,

The Google Play Team

一旦我尝试上传到游戏商店,Google因Libpng漏洞而拒绝了我的应用程序,我发现opencv lib版本存在问题,所以用其gradle依赖替换了opencv jar文件,我从libs中删除了.so文件/armeabi.jar文件夹,然后谷歌没有显示该漏洞问题,它已上传到游戏商店。  以下是我们申请的链接:https://play.google.com/store/apps/details?id=com.steelmanpro.wifivideoscope&hl=en

我从谷歌得到的回复是:

MKPointAnnotation

但现在视频正在录制。这些是我的应用程序中使用的.so文件:

.so files used in the application.

2 个答案:

答案 0 :(得分:1)

请参考这个答案

  • 将opencv,javaCV,javaCpp和FFMPEG更新为最新版本 依赖项和
  • 将架构指定为“arm”
  • 下载 来自的所有库的相同版本的android arm.jar文件 maven存储库
  • 解压缩jar并复制so文件 从所有jar库中的libs文件夹中粘贴.so文件 在src / main / jnlibs / armeabiv7a
  • 列出项目

    还在build.gradle中指定ndk文件夹

更新了gradle如下:

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile group: 'org.bytedeco', name: 'javacv', version: '1.3.1'
    compile group: 'org.bytedeco.javacpp-presets', name: 'opencv', version: '3.1.0-1.3', classifier:    'android-arm'
    compile group: 'org.bytedeco.javacpp-presets', name: 'ffmpeg', version: '3.2.1-1.3', classifier: 'android-arm'
    compile 'com.android.support:appcompat-v7:23.2.1'
    compile 'com.android.support:design:23.2.1'
    testCompile 'junit:junit:4.12'
    compile files('libs/test.jar')
    compile files('libs/zxing.jar')
    compile(name:'FFmpegAndroid', ext:'aar')
    }

答案 1 :(得分:1)

我得到了解决方案。 FFMPEG和Opencv使用易受攻击的libpng版本,我们已将所有共享对象文件添加为一个单独的jar文件。我们更新了库并添加了以下依赖

我将build.gradle文件更新为

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile group: 'org.bytedeco', name: 'javacv', version: '1.3.1'
    compile group: 'org.bytedeco.javacpp-presets', name: 'opencv', version: '3.1.0-1.3', classifier:    'android-arm'
    compile group: 'org.bytedeco.javacpp-presets', name: 'ffmpeg', version: '3.2.1-1.3', classifier: 'android-arm'
    compile 'com.android.support:appcompat-v7:23.2.1'
    compile 'com.android.support:design:23.2.1'
    testCompile 'junit:junit:4.12'
    compile files('libs/test.jar')
    compile files('libs/zxing.jar')
    compile(name:'FFmpegAndroid', ext:'aar')
    }