ユーザーのOpenJDKのバージョンが特定のセキュリティ上の脆弱性の影響を受けやすいかどうかを判断する必要があります。例として、April 2016 Critical Patch Updateで明らかにされているように、OpenJDK 8u77でCVE-2016-0695が発見されました。理想的には、ユーザーのOpenJDKバージョンが脆弱かどうかを検出するのは、<= 8u77
か> 8u77
のいずれかであるかどうかをチェックして脆弱であるかどうかをチェックするだけです(以前のすべてのバージョンも脆弱で、次のバージョンで修正が適用されると仮定します)。しかし、画像は手作業のパッチによって混乱する。OpenJDKのパッチを適用したバージョンを検出する
私が正しく理解している場合、2016年4月のパッチは次のバージョンのOpenJDK8(この場合は8u91)に自動的にバンドルされますが、手動でも使用できます。後者は、セキュリティホールにパッチを当てながら、Javaバージョンをそのまま維持したい、リスクを嫌うユーザーにとっては魅力的な選択肢になるでしょう。ユーザーが8u77のインストールに手動でパッチを適用すると、それを検出する方法はありますか?たとえば、java -version
によって報告されたバージョン番号は変更されますか?または、パッチが適用されたというインジケータはありませんか?
パッチを適用してバージョン文字列をテストしましたか? – hardillb
私は持っていますが、それらにアクセスするにはOracleサポート契約が必要です(他の場所で利用できる場合を除きます)。 – sevko
@ alex-poole、私はセキュリティパッチがOracleによってリリース/管理されているように見えるので、[tag:oracle]タグを含んでいて、 'opatch'ユーティリティによって適用されています。 ? – sevko