Googleよりlibpngの脆弱性に関するメールが届きました。デベロッパーコンソールにはこんなアイコンとメッセージが。
今後のアプリアップデートでは対応必須となるとのことで、以下の手順で実際に対応してみました。
まずcocos2d-xのフォーラムでスレが立ってたので、その手順で試しました。
http://discuss.cocos2d-x.org/t/cocos2d-x-2-2-6-android-security-issue-with-libpng-1-2-46-cve-2015-8540/30189
しかしこちらの環境では、zlibを追加するとzip_support 以下のファイルでコンパイルエラーが出ました。エラーを修正することも可能ですが、変更を最小限にしたかったため、
- libpngの脆弱性を回避できる程度のlibpngバージョン
- zlibに依存しないもの
を探してみました。
見つかったのがこちら。
https://github.com/cocos2d/cocos2d-x-3rd-party-libs-bin/tree/v3-deps-11
このパッケージをダウンロードして以下の手順でlibpngを置き換えました。
- 元々のlibpngをバックアップ。
- このパッケージのpngフォルダをlibpngに改名して配置。
- 新しいlibpngはフォルダ構成が元々のと若干違うので、元々のlibpngと同じ構成に修正。
- Android.mkも若干内容が違うので修正。
これでビルドも無事通り、早速アプリをアップデート。以下のようにデベロッパーコンソールから警告アイコンが消えました。
ちなみにアルファ版としてリリースしただけでは消えず、製品版としてリリースしたときに消えました。アルファ版としてリリースした時点で、問題が解消したかどうかが知りたいところですね。