[Java, Security] Oracle JRE will no longer trust MD5-signed code by default

原文はこちら。
https://blogs.oracle.com/java-platform-group/entry/oracle_jre_will_no_longer

2017年4月のCritical Patch Updateから、MD5を使って署名されたJARファイルを、Oracle JREは署名されたものとみなさないようになります。影響を受ける、MD5で署名されたJARは信頼されなくなり、その結果、例えばJavaアプレットやJava Web Startアプリケーションなどの場合デフォルトでは実行できなくなります。
MD5はもはやセキュアではなく、セキュリティ用途では適切でない、と幅広く考えられているため、JREの挙動に関する今回の変更は必要とされています。実際のところ、MD5 with RSAアルゴリズムは2006年のJaav SE 6でデフォルトのJAR署名オプションではなくなりました。アルゴリズムが提供する検証メカニズムで信頼を維持する場合、当該アルゴリズムが弱いと知られたらMD5のような弱いハッシュアルゴリズムを非推奨にすることが重要です。
MD5署名済みJARが影響を受けるこの変更は、2017年1月のCritical Patch Updateでリリース予定のOracle Java SE 8u121と同時にデフォルトで有効になります。サポート契約をお持ちのお客様がMy Oracle Supportを通じて入手可能なOracle Java SE 7、Oracle Java SE 6、Oracle JRockit R28についても、このタイミングに合わせて同様の変更が適用されます。
来る変更に備えるために、開発者は自身が作成したJARファイルがMD5で署名していないことを確認する必要があります。ビルドプロセスがJava 6以後を使って、意図的にMD5を選択せずにJARファイルを署名していることを検証することによって、自身のJARファイルがMD5を使っていないことを確認できます。署名していないJARファイルや自身で作成したものではないJARファイルを使っている場合、ベンダーに詳細情報を問い合わせる必要があります。利用しているJARファイルがMD5で署名されているかどうかを確認できない場合、問題のJARファイルをよりモダンなアルゴリズムを使って再署名することを推奨します。その際、再署名する前にまず既存のMD5署名を削除するようにしてください。Zipユーティリティで以下のように実行すれば削除できます。
zip -d test.jar 'META-INF/*.SF' 'META-INF/*.RSA' 'META-INF/*.DSA'
技術的な情報の詳細は2016年10月のCritical Patch Updateの、Java SE向けRelease Noteをご覧ください。
Oracleは既にソースライセンシーを含む数多くのソフトウェアベンダーに対してこの将来の変更をお知らせしています。3rdパーティ製のアプリケーションにおいてこの変更が及ぼす影響について懸念される方は、各ベンダーにお問い合わせください。

暗号 (cryptography) はダイナミックな分野です。この分野における今度の変更をユーザーや開発者にお知らせし続けるために、Oracleは最近新しいWebページを作成し発行しました。
Oracle JRE and JDK Cryptographic Roadmap
https://www.java.com/cryptoroadmap
このページでは来るOracle JREおよびOracle JDKでの暗号に関する変更の情報ならびに関連する技術的な取り扱い説明を提供しています。

0 件のコメント:

コメントを投稿