先ほど、OpenResty 1.15.8.3 のセキュリティアップデート正式版をリリースいたしました。 このリリースには、最近コミュニティから報告された Nginx コアと HTTP Lua モジュールのセキュリティ脆弱性への対応が含まれております。 特に、HackerOne チームから報告されたメモリ内容漏洩の潜在的リスクに対処しております。 Lua プログラマーが URI やリクエストヘッダーなどのデータを設定する際に、データ内の改行文字やその他の制御文字の存在をチェックしていない場合、 攻撃者が悪意のあるリクエストヘッダーを挿入したり、メモリ内の機密データを漏洩させたりする可能性がありました。

すべての OpenResty ユーザーの皆様に、このバージョンへのアップグレードを強くお勧めいたします。

同時に、OpenResty 1.17.8.1 RC1 版もコミュニティテスト用にリリースいたしました。 この版には、過去数ヶ月間に蓄積された多数のバグ修正、新機能、パフォーマンス最適化が含まれております。

順調に進めば、新しい 1.17.8.1 メインラインバージョンは来週または近日中にリリースされる予定です。

主な変更点

  • 新しい NGINX 1.17.8 バージョンをベースにしています。
  • OpenSSL 1.1.1 をサポートしました。
  • PUC-Rio Lua のサポートを終了し、LuaJIT 2.x のみをサポートします。
  • lua-resty-core の使用を強制し、lua_load_resty_core ディレクティブを廃止しました。
  • reuseport が有効な場合に未使用のリスニングファイルディスクリプタを確実に閉じるための新しい NGINX パッチを追加しました。
  • 標準 Lua の動作に合わせて、coroutine.wrap() のエラーを親コルーチンに返すようにしました。
  • 新しい ngx_req.add_header() API を追加しました。
  • ngx.pipe:環境変数の指定、タイムアウト時間の指定などの改善をサポートしました。
  • ngx_ssl.get_tls1_version_str() が TLS1.3 をサポートしました。
  • URI および リクエスト/レスポンスヘッダーを変更する API に不正な文字が含まれていないかのチェックを追加しました。
  • stream-lua: tcpsock:connect が接続キューイングと最大接続数制限をサポートしました。
  • stream-lua: ngx.worker.*ngx.varngx.ctx など、FFI ベースの実装による多くの API をサポートしました。
  • LuaJIT: x390x アーキテクチャをサポートしました。
  • LuaJIT: Mike Pall が管理するアップストリームメインラインから重要な修正を同期しました。

完全なリリース変更点はこちらをご覧ください