ククログ

株式会社クリアコード > ククログ > 2026 > Fluentd v1.19.4をリリース

Fluentd v1.19.4をリリース

2026年9月29日にFluentdの最新版となるv1.19.4をリリースしました。

v1.19系のメンテナンスリリースとなっており、fluent-package LTS版のv6.0.5に同梱してリリースしました。

本記事では、公式サイトで公開している情報を日本語で解説します。

Fluentd v1.19.3リリース後に見つかった追加の脆弱性を修正しています。 v1.19.3の脆弱性修正の一部に不備が見つかったため、Fluentd v1.19.4への更新を推奨しています。

Fluentd v1.19.4では、いくつかの不具合・脆弱性を修正しました。

脆弱性修正

Fluentd v1.19.4では複数の脆弱性を修正しました。

多くの場合、閉域網かつ信頼されたネットワークにおける利用が想定されるため、影響はないものと考えられます。 もし、ただちに更新できない場合には後述の緩和策の適用を検討してください。

脆弱性の緩和策

Fluentdをパッケージで導入している場合、Fluent Package v6.0.5に更新するのが推奨される対応方法です。 しかし、ただちに更新できない場合には、次のような緩和策の適用を検討してください。

Incomplete Fix for CVE-2026-44024: Path Traversal Bypass via Bare .. Tag in Output Plugins
  • 接続を受け付ける送信元IPとポートをファイアウォール等で制限する
  • Fluentdをroot権限で動作させている場合、システム領域へ書き込めないように非root権限で動作させる(fluent-packageは既定でfluentユーザーで動作するようになっています)
  • out_fileのようなアウトプットプラグインにおいて、信頼できないネットワーク由来のタグ(${tag})をpathパラメータで使用しない
  • tag情報をfluent-plugin-rewrite-tag-filterのようなフィルタプラグインで.や/といった相対パスの指定に用いられる文字を除去する
Out-of-Memory DoS via Object Allocation Amplification in in_http ndjson parsing
  • in_httpの9880ポートへのアクセスを受け付ける送信元IPをファイアウォール等で制限する
Out-of-Memory DoS via Unbounded TCP/TLS Connection Buffer in in_syslog
  • in_syslogの5140ポートへのアクセスを受け付ける送信元IPをファイアウォール等で制限する
  • TCP/TLSではなく、一時的にUDP <transport udp>に置き換える
  • Reverse proxyを間に挟み、クライアントのタイムアウトを厳密に管理したり、バッファーサイズが異常なFluentdへのリクエストを遮断する
Incomplete Fix for CVE-2026-44160: DoS via Unbounded Decompression in Buffer Chunk Streaming
  • <buffer>セクションのcompress gzipやcompress zstdを使わない。ディスク使用量が増えるデメリットがあります。
  • 不正なチャンクのバックアップをdisable_chunk_backup trueをアウトプットプラグインに指定して無効化する。
  • in_httpやin_forwardといったインプットプラグインへのアクセスを信頼できる送信元のみに制限する

不具合修正

v1.19.4では次のような不具合を修正しました。

  • output: JSON::GeneratorError を回復不能なエラーとして扱うようにしました (#5423)
    • コンテンツに問題がある (e.g. non-UTF-8 bytes, NaN/Infinity)場合、壊れたチャンクとみなします。
  • allow_duplicate_key をJSON.parseに指定するようにしました (#5430)
    • キーが重複していても許容するようにしています。これは従来との互換性を保つための変更です。
  • allow_comments をJSON.parseに指定するようにしました (#5432)
    • コメントが記載されているJSONを許容するようにしています。これは従来との互換性を保つための変更です。
  • YAMLの設定ファイルでスカラー値の指定を受け付けるようにしました (#5433)
  • parser_syslog: RFC5424 の構造データのパースを最適化しました (#5444)
    • 過剰なバックトラッキングを抑制します。
  • out_forward: keepalive socketをエラー時に破棄するようにしました (#5445)
    • "ack in response and chunk id in sent data are different" 警告が繰り返される問題を修正しています。
  • buffer: チャンクがunstage状態に差し戻されたとき、stage_byte_sizeが余計にカウントされる問題を修正しました (#5456)
    • 誤った BufferOverflowErrorが発生する可能性がありました。#formatを実装しているプラグインに影響していました。
  • plugin base: workerがロックファイルを大量に作成しっぱなしになる問題を修正しました (#5471)
  • supervisor: cleanup_lock_dirに大量のロックファイルがあるときのメモリ使用量を削減しました (#5472)
  • config: 二重引用符文字列において空行を受け付けるようにしました (#5478)
  • chunk: 解凍データ用の一時ファイルを確実に close するように修正しました (#5486)
  • buffer: purge 失敗時にqueue_size カウントがずれたままにならないよう修正しました (#5487)
  • metrics: バッファサイズのメトリクスが負の値として出力されることがある問題を修正しました (#5488)
  • json gem v3.xをサポートしました (#5493)
  • parser_syslog: RFC3164 のタイムスタンプに連続した空白があると NameError になる問題を修正しました (#5497)
  • parser_syslog: RFC5424 のタイムスタンプに連続した空白があると NameError になる問題を修正しました (#5500)

脆弱性診断キャンペーン

クリアコードのFluentdサポートサービスでは、td-agentからの移行支援や、バージョン アップ支援等を実施しています。 それらの知見を活かし、今回修正された脆弱性が影響するかどうか、設定ファイルを診断するための支援ツールを開発・公開しました。

上記ツールは無償でご利用いただけますが、先着数社様限定で、設定が影響を受けるかどうかの無料診断キャンペーンを実施しています。(予定社数に達し 次第終了いたします。) お問い合わせフォームよりお気軽にお問い合わせください。

日本コミュニティ向けのXアカウントをはじめました。日々、Fluentdに関する情報を発信しております。 ぜひ @fluentd_jp をフォローしてください!