NAME

perl5303delta - perl v5.30.3 での変更点

DESCRIPTION

この文書は 5.30.2 リリースと 5.30.3 リリースの変更点を記述しています。

5.30.1 のような以前のリリースから更新する場合は、まず 5.30.1 と 5.30.2 の違いについて記述している perl5302delta を読んでください。

Security

[CVE-2020-10543] Buffer overflow caused by a crafted regular expression

ネストした正規表現量指定子の保管スペースの計算での 符号付き size_t 整数オーバーフローを引き起こすことがあります; これにより Perl の正規表現コンパイラが、 攻撃者が提供したデータの正規表現保管スペースの後ろに割り当てられた メモリを上書きするという、 ヒープバッファオーバーフローを引き起こすことがあります。

ターゲットシステムは、オーバーフローが起きる前に、ネストした量指定子の 部分的な十分な量のメモリが必要です。 この要求を 64 ビットシステムで満たすことはおそらくできないでしょう。

ManhND of The Tarantula Team, VinCSS (Vingroup のメンバー) によって 発見されました。

[CVE-2020-10878] Integer overflow via malformed bytecode produced by a crafted regular expression

正規表現エンジンの命令の間でのオフセットの整数オーバーフローにより、 コンパイルされた正規表現の中間言語状態が破壊されることがあります。 攻撃者はこの振る舞いを、Perl 正規表現のコンパイルされた形式に命令を 挿入することに悪用できます。

Hugo van der Sanden と Slaven Rezic によって発見されました。

[CVE-2020-12723] Buffer overflow caused by a crafted regular expression

正規表現の中間言語表現を最適化するために、 Perl の正規表現コンパイラが S_study_chunk() を再帰呼び出しすることで、 コンパイルされた正規表現の中間言語状態が破壊されることがあります。

Sergey Aleynikov によって発見されました。

追加の注意

Perl で書かれたアプリケーションは、攻撃者によって提供された正規表現を 評価している場合にのみ、前述の不具合に対して脆弱です。 このような方法で正規表現を評価することは、危険であることが知られています; 正規表現エンジンはこのような使用シナリオでのサービス不能攻撃から 守られていないからです。

互換性のない変更

故意に、5.30.2 から互換性がなくなるようにした変更はありません。 もし 5.30.2 との互換性がなければ、それはバグですので、報告をお願いします。 以下の "Reporting Bugs" を参照してください。

モジュールとプラグマ

更新されたモジュールとプラグマ

テスト

このリリースのその他の追加と変更を反映するようにテストを追加および 変更しました。

Acknowledgements

Perl 5.30.3 は、Perl 5.30.2 以降、7 人の作者によって、 42 のファイルに約 1,100 行の変更を加えて、 約 3 ヶ月開発されてきました。

自動生成ファイル、文書、リリースツールを除くと、8 の .pm, .t, .c, .h ファイルに約 350 行の変更を加えました。

Perl は、活気のあるユーザーと開発者のコミュニティのおかげで 30 年を超えて 繁栄しています。 以下の人々が、Perl 5.30.3 になるための改良に貢献したことが分かっています:

Chris 'BinGOs' Williams, Hugo van der Sanden, John Lightsey, Karl Williamson, Nicolas R., Sawyer X, Steve Hay.

これはバージョンコントロール履歴から自動的に生成しているので、ほぼ確実に 不完全です。 特に、Perl バグトラッカーに問題を報告をしてくれた (とてもありがたい)貢献者の 名前を含んでいません。

このバージョンに含まれている変更の多くは、Perl コアに含まれている CPAN モジュール由来のものです。 私たちは Perl の発展を助けている CPAN コミュニティ全体に感謝します。

全ての Perl の歴史的な貢献者のより完全な一覧については、どうか Perl ソース 配布に含まれている AUTHORS を参照してください。

バグ報告

もしバグと思われるものを見つけたら、 https://github.com/Perl/perl5/issues にある perl バグデータベースを 確認してください。 Perl ホームページ、http://www.perl.org/ にも情報があります。

もしまだ報告されていないバグだと確信したら、 https://github.com/Perl/perl5/issues にイシューを登録してください。 バグの再現スクリプトを十分小さく、しかし有効なコードに切りつめることを 意識してください。

報告しようとしているバグがセキュリティに関するもので、公開されている イシュートラッカーに送るのが不適切なものなら、バグの報告方法の詳細について "SECURITY VULNERABILITY CONTACT INFORMATION" in perlsec を参照してください。

感謝を伝える

もし Perl 5 でなされた作業について Perl 5 Porters に感謝したいと考えたなら、 perlthanks プログラムを実行することでそうできます:

    perlthanks

これは Perl 5 Porters メーリングリストにあなたの感謝の言葉をメールします。

SEE ALSO

変更点の完全な詳細を見る方法については Changes ファイル。

Perl のビルド方法については INSTALL ファイル。

一般的なことについては README ファイル。

著作権情報については Artistic 及び Copying ファイル。