---
title: "Node.js で dns.resolve の NUL 切り詰めと TLS の IP ホスト名検証回避が 3 件（CVE-2026-105482・106069・105483、各 CVSS 7.4）: 22.23.4・24.22.1・26.12.1 で修正"
url: https://n-t-p.io/worldsecurity/articles/nodejs-dns-resolve-nul-truncation-tls-ip-hostname-bypass-3-cves-fixed-22-23-4-24-22-1-26-12-1
lang: ja
kind: 速報
category: 脆弱性・CVE
author: World Security 編集部
published: 2026年11月1日
updated: 2026年11月1日
severity: 高
cve: CVE-2026-105482, CVE-2026-106069, CVE-2026-105483
---

# Node.js で dns.resolve の NUL 切り詰めと TLS の IP ホスト名検証回避が 3 件（CVE-2026-105482・106069・105483、各 CVSS 7.4）: 22.23.4・24.22.1・26.12.1 で修正

> **TL;DR:** Node.js の dns.resolve が NUL バイトで名前を切り詰める問題（CVE-2026-105482）と、TLS のホスト名検証が IP の特殊な表記で誤る 2 件（106069・105483）。各 CVSS 7.4（CNA の値）、EPSS 0.003〜0.005、KEV なし。22.23.4・24.22.1・26.12.1 で修正、悪用は未確認。

**要点**
- dns.resolve*() が NUL 入りホスト名を切り詰め、検証した名前と別の名前の応答が返りうる（CVE-2026-105482、22.x・24.x・26.x）
- TLS の IP 検証が先頭ゼロ表記（106069）と全角数字（105483、24.x・26.x のみ）で誤り、別 IP 向けの証明書が通りうる
- 3 件とも CVSS v3.0 7.4 HIGH（HackerOne＝CNA の値）。EPSS は 0.00304〜0.00468、KEV なし。NVD は Awaiting Analysis
- 修正版は 22.23.4・24.22.1・26.12.1（2026-10-21）。暫定的な回避策は未確認
- 実際の攻撃での悪用は未確認。入力段階での拒否は推定

Node.js プロジェクトは 2026-10-21 のセキュリティリリースで、深刻度 high とした 4 件のうち、DNS 解決と TLS のホスト名検証に関する 3 件（CVE-2026-105482・CVE-2026-106069・CVE-2026-105483）を修正しました（残る 1 件は Brotli の CVE-2026-111497 で別記事）。3 件とも、アプリが「検証した名前・アドレス」と「実際に使われる名前・アドレス」がずれる点が共通です。NVD の CVSS v3.0 は 3 件とも 7.4（HIGH、HackerOne＝CNA の値）です。

## 3 件の内容

| CVE | 内容 | 影響する系列 |
|---|---|---|
| CVE-2026-105482 | `dns.resolve*()` と `dns.reverse()` が、NUL バイトを含むホスト名を黙って切り詰める。`attacker.example\0.trusted.example` を解決すると `attacker.example` の結果が返る。CVE-2026-48930 の修正漏れ | 22.x・24.x・26.x |
| CVE-2026-106069 | `tls.checkServerIdentity()` が `0127.0.0.1` のような先頭ゼロの IPv4 表記を 8 進数として扱う（`87.0.0.1` になる）一方、OS のリゾルバは一部の環境（macOS など）で 10 進数として接続する（`127.0.0.1`）。接続先と別の IP 向けの証明書で認証が通りうる | 22.x・24.x・26.x |
| CVE-2026-105483 | 全角数字を含む `１２７.0.0.1` のような表記を IP アドレスと認識せず、証明書の DNS 名や Common Name と照合する。`DNS:127.0.0.1` や `DNS:*.0.0.1` を持つ証明書が受け入れられうる。CVE-2026-48618 の修正後に入り込んだ退行 | 24.x・26.x（22.x は対象外） |

## 何が起きるか

- 105482: ドメインの許可リストなどでホスト名を検証してから `dns.resolve*()` で解決するアプリは、検証した名前とは別の名前の DNS 応答を信じてしまうことがあります。
- 106069・105483: TLS クライアントが、接続先の IP アドレス向けではない証明書を持つサーバーを正しい相手と判断することがあります。通信の盗聴や改ざんにつながりうる種類の欠陥です。
- CVSS は 3 件ともネットワーク越し・攻撃条件の複雑さ高・認証不要・ユーザーの関与なしで、機密性と完全性が「高」、可用性は影響なしです。
- 攻撃の成立には、細工したホスト名や IP 表記をアプリが受け取って使うこと（105482・106069・105483）に加え、通信経路上の位置など別の条件が要ると考えられます（推定）。
- 実際の攻撃での悪用は確認していません。

## 修正の状況

- 修正は 2026-10-21 のセキュリティリリース（Node.js 22.23.4・24.22.1・26.12.1）に含まれます（Node.js の公式ブログ）。
- 2026-11-02 時点の GitHub リリースでは、26.x の最新は 26.13.0、24.x の最新は 24.22.2 です。22.x の最新版は確認できていません。
- 暫定的な回避策は確認できていません。

## 数値と出典（2026-11-02 時点）

| 項目 | 内容 |
|---|---|
| NVD の状態 | 3 件とも Awaiting Analysis（2026-10-23 公開） |
| CVSS v3.0 | 3 件とも 7.4 HIGH（AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N）。HackerOne（CNA）の値 |
| CWE | 105482: CWE-284、106069・105483: CWE-295 |
| EPSS（FIRST、2026-11-01 付） | 105482: 0.00468（パーセンタイル 0.41）、106069・105483: 0.00304（パーセンタイル 0.23） |
| KEV | 3 件とも掲載なし（CISA のカタログ 2026.10.30 で確認できず） |

## severity を high とした理由

CVSS v3.0 が 3 件とも 7.4 で、Node.js プロジェクト自身も high としています。一方で、攻撃条件の複雑さは「高」、EPSS は 0.3〜0.5% 程度、KEV にも載っていないため、critical にはしません。なお NVD はまだ独自の評価をしていません。

## 対応として考えられること

1. 使っている Node.js の系列と版を確認します（`node --version`）。
2. 22.x は 22.23.4 以降、24.x は 24.22.1 以降、26.x は 26.12.1 以降へ更新します。
3. 更新までの間、外部から受け取ったホスト名を検証してから解決・接続する処理では、NUL バイトや全角文字、先頭ゼロの IP 表記を入力の段階で拒否します（推定）。
4. TLS の接続先を IP アドレスで直接指定しているコードがないか見直し、可能ならホスト名と証明書の対応で検証します（推定）。

## 未確認の点

- 実際の攻撃での悪用は確認していません。
- 暫定的な回避策は確認できていません。
- 22.x の最新版、および 3 件それぞれを修正したコミットの範囲は確認できていません。
- NVD の独自評価（CVSS 付与）は未了です。


## 出典
- [NVD CVE-2026-105482](https://nvd.nist.gov/vuln/detail/CVE-2026-105482) — NIST NVD
- [NVD CVE-2026-106069](https://nvd.nist.gov/vuln/detail/CVE-2026-106069) — NIST NVD
- [NVD CVE-2026-105483](https://nvd.nist.gov/vuln/detail/CVE-2026-105483) — NIST NVD
- [Node.js October 2026 Security Releases](https://nodejs.org/en/blog/vulnerability/october-2026-security-releases) — Node.js
- [Node.js リリース（GitHub）](https://github.com/nodejs/node/releases) — Node.js（GitHub）
- [FIRST EPSS CVE-2026-105482](https://api.first.org/data/v1/epss?cve=CVE-2026-105482) — FIRST
- [FIRST EPSS CVE-2026-106069](https://api.first.org/data/v1/epss?cve=CVE-2026-106069) — FIRST
- [FIRST EPSS CVE-2026-105483](https://api.first.org/data/v1/epss?cve=CVE-2026-105483) — FIRST
- [CISA KEV カタログ](https://www.cisa.gov/known-exploited-vulnerabilities-catalog) — CISA

---
出典: World Security（株式会社NTP） https://n-t-p.io/worldsecurity/articles/nodejs-dns-resolve-nul-truncation-tls-ip-hostname-bypass-3-cves-fixed-22-23-4-24-22-1-26-12-1