Node.jsエージェントのリリースノート
リリース日: 2025年7月10日
現在サポートしている言語バージョン: 16、18、20、22 LTS
重要
Contrastは、2025年10月にNode.js 16(LTS)のサポートを終了します。お客様は、最新のNode.js LTSバージョン(現在はバージョン22.17.0(LTS))にアップグレードする必要があります。
新機能と改善点:
エージェントの組み込みが重複している場合に自動で検知・防止するようになりました。これにより、複数のエージェントが指定された場合でも、最初に組み込まれたエージェントだけがアプリケーションを監視するようになります。この機能強化により、エージェントの導入が効率化され、複数のエージェント組み込みによるよる意図しないオーバーヘッドや競合が回避されます。(NODE-3830)
修正された不具合:
根本的な問題を修正し、特殊な構成順や
Router.use()
の単独使用などであっても、全ての有効なExpress.js
のルート設定方法から検出イベントと監視イベントの両方が確実に生成されるようにしました。この更新により、Express.js
アプリケーションから収集される監視データの精度と網羅性が大幅に向上します。(NODE-3823)body-parser
のデータフローソースでのエージェントによる監視において、Express 5で使用されるバージョン 2をサポートしていない問題を修正しました。body-parser
の監視を拡張するようエージェントを更新し、Express 5とbody-parser
のバージョン2を使用するアプリケーションで完全かつ正確にデータフロー ソースを可視化できるようにしました。(NODE-3826)アプリケーションライブラリがエージェント自体の依存関係でもある場合に、正しく報告されない問題を修正しました。
utils.js listInstalled()
内の依存関係フィルタリングロジックを改良し、エージェントの依存関係と重複する場合でも、全ての正当なアプリケーションライブラリが正確に識別され、報告されるようにしました。(NODE-3827)
リリース日: 2025年7月1日
現在サポートしている言語バージョン: 16、18、20、22 LTS
重要
Contrastは、2025年10月にNode.js 16(LTS)のサポートを終了します。お客様は、最新のNode.js LTSバージョン(現在はバージョン22.17.0(LTS))にアップグレードする必要があります。
修正された不具合:
脆弱な乱数生成(
crypto-weak-randomness
)ルールが有効な場合に、Math.random
の呼び出しで誤ってエラーが発生していた問題を修正しました。(NODE-3832)
リリース日: 2025年6月25日
現在サポートしている言語バージョン: 16、18、20、22 LTS
重要
Contrastは、2025年10月にNode.js 16(LTS)のサポートを終了します。お客様は、最新のNode.js LTSバージョン(現在はバージョン22.17.0(LTS))にアップグレードする必要があります。
新機能と改善点:
String.prototype.concat
の引数が配列の場合に、タグ範囲が正しくない問題を修正しました。(NODE-3748)本番環境におけるAssessの最新の仕様に準拠するようにエージェントを更新しました。(NODE-3808)
全ての依存関係を含めたNodeエージェントのパッケージを、単一パッケージとして公開するようにしました。(NODE-3817)
修正された不具合:
アプリケーションバージョンの報告をエンコードするように修正しました。(NODE-3829)
リリース日: 2025年6月17日
現在サポートしている言語バージョン: 16、18、20、22 LTS
重要
Contrastは、2025年10月にNode.js 16(LTS)のサポートを終了します。お客様は、最新のNode.js LTSバージョン(現在はバージョン22.17.0(LTS))にアップグレードする必要があります。
新機能と改善点:
server_inventory
ペイロードにmemory_metrics
を含めるよう更新しました。(NODE-3819)
リリース日: 2025年6月16日
現在サポートしている言語バージョン: 16、18、20、22 LTS
重要
Contrastは、2025年10月にNode.js 16(LTS)のサポートを終了します。お客様は、最新のNode.js LTSバージョン(現在はバージョン22.17.0(LTS))にアップグレードする必要があります。
新機能と改善点:
Contrastサーバから送られる全てのAssessのサンプリング設定をサポートするようにしました。また本番環境でのサンプリングも他のエージェントに合わせて更新しました。(NODE-3769)
ソースコードの縮小化によるメモリ使用量の改善として
@swc/core
バージョンの更新を検討しました。(NODE-3785)コンテナ内や仮想サーバ・プロセス内でのNode.jsアプリの最大メモリ制限を収集するようにしました。(NODE-3797)
起動時に、エージェントのレポートインスタンスのGUIDとアプリケーションIDのGUIDをINFOレベルでログに出力するようにしました。(NODE-3798)
リリース日: 2025年5月22日
現在サポートしている言語バージョン: 16、18、20、22 LTS
重要
Contrastは、2025年10月にNode.js 16(LTS)のサポートを終了します。お客様は、最新のNode.js LTSバージョン(現在はバージョン22.17.0(LTS))にアップグレードする必要があります。
新機能と改善点:
@opentelemetry
パッケージをデッドゾーン化しました。 (NODE-3740)effective_config
の出力を新しい標準や他のエージェントの出力と一致するように修正しました。(NODE-3782)Contrast UIのレポータープロキシを更新し、ファイアウォールとの互換性を向上させました。(NODE-3790)
修正された不具合:
「パストラバーサル - ファイルセキュリティの回避」ルールで、スタックトレースや攻撃のメタデータが正しく報告されていませんでした。(NODE-3771)
@fastify/websocket
の使用時に、Fastifyのインストルメンテーションエラーが発生していました。 (NODE-3794)
リリース日: 2025年5月12日
現在サポートしている言語バージョン: 16、18、20、22 LTS
重要
Contrastは、2025年10月にNode.js 16(LTS)のサポートを終了します。お客様は、最新のNode.js LTSバージョン(現在はバージョン22.17.0(LTS))にアップグレードする必要があります。
修正された不具合:
正規表現と
$n
という特殊なパターンを使用した場合に発生していた文字列置換の不具合を修正しました。(NODE-3788)
リリース日: 2025年5月7日
現在サポートしている言語バージョン: 16、18、20、22 LTS
重要
Contrastは、2025年10月にNode.js 16(LTS)のサポートを終了します。お客様は、最新のNode.js LTSバージョン(現在はバージョン22.17.0(LTS))にアップグレードする必要があります。
新機能と改善点:
Assessのサンプリング
event_detail
設定オプションをサポートするようになりました。(NODE-3752)ワークスペースを更新して
@contrast/common
から空の不変オブジェクトを使用できるようにしました。(NODE-3754)生成されるコード成果物のサイズを小さくするために、リライタを更新しました。(NODE-3767)
ネストしたURLプロパゲータをリファクタリングしました。(NODE-3770)
修正された不具合:
攻撃値のマスク設定が有効になっている場合に、HTTPリクエストの詳細でも攻撃ベクトルをマスクするように修正しました。(NODE-3774)
Contrast Assessで、FastifyのpreValidationハンドラが、ソースコンテキストがない場合に
done
コールバックを呼び出さない問題を修正しました。(NODE-3787)
リリース日:2025年4月17日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
Fastify 5のサポートを追加しました。(NODE-3622)
リリース日: 2025年4月14日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
string.prototype.replace
をリファクタリングして、regexp.exec
の呼び出し時にインストゥルメンテーションされないようにしました。(NODE-3766)本番環境でのContrast Assessで、
assess.stacktraces
の設定としてSINK
を使用するようにしました(yamlや環境変数で設定されていない場合)。(NODE-3768)
リリース日: 2025年4月4日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
ADRの全機能のインストゥルメントを有効にできるオプションを実装しました。(NODE-3736)
HTTPスパンの実装が完了しました。(NODE-3744)
String.prototype.split
プロパゲータをリファクタリングして、タグ範囲を計算するために伝播が強制的に行われないようにしました。(NODE-3749)
リリース日: 2025年4月1日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
エージェントが制御の反転(IoC)を使用していることを確認するよう、
agent
およびagentify
モジュールを更新しました。(NODE-3757)
修正された不具合:
util.format
での未定義の引数を処理するようにしました。(NODE-3759)
リリース日: 2025年3月13日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
書き込み可能なキャッシュディレクトリを提供するようにエージェントの演算子を設定できるようにしました。(NODE-3728)
証明書設定のオプションを追加しました。(NODE-3738)
event-factoryメソッドをリファクタリングし、パフォーマンスを改善しました。(NODE-3753)
修正された不具合:
String.prototype.concat
で発生する可能性のある不要な伝播を修正しました。(NODE-3746)send
およびfastify-send
の伝播で、伝播コンテキストをチェックしないようにしました。(NODE-3747)
リリース日: 2025年3月4日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
winstonロギングモジュールに対して、プログラムによるデッドゾーンを追加しました。(NODE-3437)
pinoロギングモジュールに対して、プログラムによるデッドゾーンを追加しました(NODE-3438)
Contrast Protectのresponse-blockerをクラス化しました。(NODE-3604)
Contrast Protectで、静的なファイルを提供するライブラリに対してパストラバーサルが報告されないようにしました。(NODE-3717)
パフォーマンスのバグを修正、GUIDに疑わしいというフラグをつけないようにしました(
agent-lib
をバージョン9.1.0に更新)。(NODE-3739)
修正された不具合:
hapiのContrast Assessのソース検査にて、onRequestフックが中断する問題を修正しました。(NODE-3745)
リリース日: 2025年2月21日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
顧客から報告されたレイテンシ(待機時間)のパフォーマンスの問題を調査し、原因を解決するためのチケットを作成して修正しています。弊社のテストケースでは50%改善しました。(NODE-3731)
修正された不具合:
get-source-context
で伝播イベントの数が正しくチェックされていませんでした。(NODE-3734)
リリース日: 2025年2月19日
現在サポートしている言語バージョン: 16、18、20、22 LTS
修正された不具合:
一部のテレメトリが、オプトアウトしても引き続き有効になっていました。(NODE-3732)
新しい
@swc/core
チェックで、ネストされた依存関係が適切に処理されていませんでした。(NODE-3733)
リリース日:2025年2月6日
現在サポートしている言語バージョン: 16、18、20、22 LTS
修正された不具合:
設定のデフォルトを決定する際に、空の文字列をチェックするようにしました。(NODE-3725)
リリース日: 2025年1月31日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
インストールした環境が実行中の環境とは異なる場合に、明確なエラーメッセージが表示されるようになりました。(NODE-3381)
rewrite.enable
またはrewrite.cache.enable
がtrueの場合に、リライタフックが許可されるようになりました。(NODE-3720)新しい
agent-lib@9.0.0
によって、コマンドインジェクションの過検知が修正されました。(NODE-3721)
リリース日:2025年1月24日
現在サポートしている言語バージョン: 16、18、20、22 LTS
注記
このリリースでは、Apollo、Yoga、graphql-httpにおけるGraphQLライブラリをサポートするようになりました。
新機能と改善点:
graphql-http
がソースとしてインストゥルメントされるようにしました。(NODE-3394)GraphQLの詳細なルート検出と観測をサポートするよう拡張しました。(NODE-3409)
ライセンスを2025年に更新しました。(NODE-3714)
リリース日:2025年1月17日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
CLIリライタは、
rewrite-deadzoned
パッケージファイルをスキップするようになりました。(NODE-3434)Contrastサーバのエラーでインストールが失敗した場合の
stderr
へのログを改善しました。(NODE-3677)イベント処理を監視するPerf(パフォーマンス分析機能)を拡張しました。(NODE-3684)
修正された不具合:
ターゲットライブラリがインポートされた時に
dep-hooks
の戻り値が使用されていませんでした。(NODE-3561)トレースエンドポイントの
hashSet
を一定の間隔でクリアし、脆弱性の最後の検出が適切に更新されるようにしました。(NODE-3709)
リリース日:2025年1月9日
現在サポートしている言語バージョン: 16、18、20、22 LTS
新機能と改善点:
新機能:ビルドID/アーティファクトを区別する固有のハッシュの自動生成とContrastへのレポート。(NODE-3314)
新機能:Express 5のサポートを追加しました。(NODE-3623)
新機能:プレビュー機能としてGraphQLに対応しました。
セッションとビルドID生成の自動化とレポートについての調査。(NODE-3315)
新しい
node --run
コマンドでcmd_ignore_list
が使用できるよう互換性について調査して実装しました。(NODE-3540)Express 5をサポートするようにルートカバレッジをリファクタリングしました。(NODE-3650)
フローマップ機能に関して一部のアーキテクチャコンポーネントの統合テストを実施しました。(NODE-3666)
GraphQLについてルートカバレッジの検出とイベントの観測を報告するようにしました。(NODE-3671)
pinoのtransportをmulti-streamに置き換えました。(NODE-3678)
修正された不具合:
レポーター(reporter)のメモリの問題を修正しました。(NODE-3705)