fast-jwt の認証バイパス脆弱性 CVE-2026-34950 — 空白文字一つで JWT 認証が突破される

JWT 認証ライブラリ fast-jwt に重大な脆弱性が発見された。公開鍵の先頭に空白文字や改行があるだけで認証が突破される可能性があり、影響はバージョン 6.1.0 以下に及ぶ。 fast-jwt とは fast-jwt は Node.js 向けの高速な JWT(JSON Web Token)の署名・検証ライブラリ。パフォーマンスを重視した実装で広く利用されているが、今回その内部の文字列処理と正規表現の甘さが致命的な脆弱性につながった。 CVE-2026-34950: 空白文字による認証バイパス 問題の概要 CVSS スコア 9.1(Critical) の深刻な脆弱性。公開鍵の検証に使われている正規表現が、文字列の先頭を厳密に検証していないという欠陥に起因する。 攻撃メカニズム 公開鍵の先頭にスペースや改行文字(\n)が含まれると、正規表現による公開鍵の検証が失敗する。その結果、公開鍵が HMAC 用の秘密鍵として誤って扱われ、攻撃者は任意のトークンを署名できてしまう。 1 2 3 4 5 6 7 8 9 // 通常の公開鍵(検証成功) -----BEGIN PUBLIC KEY----- ... -----END PUBLIC KEY----- // 先頭に空白が入った場合(検証失敗 → HMAC 鍵として扱われる) -----BEGIN PUBLIC KEY----- ... -----END PUBLIC KEY----- これは過去に修正されたはずの CVE-2023-48223(アルゴリズム混同攻撃)と同様の攻撃を再び可能にする。前回の修正が不完全だったことが根本原因だ。 ...

2026年4月6日 · 1 分

CVE-2026-32746: GNU Inetutils telnetd に32年間潜んでいた認証前リモートコード実行の脆弱性

GNU Inetutils の telnetd デーモンに、CVSS 9.8 の深刻なバッファオーバーフロー脆弱性 CVE-2026-32746 が発見された。1994年から存在していたこのバグは、認証前のリモートコード実行(Pre-Auth RCE)を可能にする。telnetd を公開サーバーで運用している管理者は直ちに対応が必要だ。 脆弱性の概要 項目 内容 CVE ID CVE-2026-32746 CVSS スコア 9.8(Critical) 影響範囲 GNU Inetutils 2.7 以前の全バージョン 脆弱性の種類 BSS ベースのバッファオーバーフロー(境界外書き込み) 攻撃条件 認証不要・リモートから実行可能 発見者 イスラエルのサイバーセキュリティ企業 Dream(技術解析: watchTowr Labs) 報告日 2026年3月11日 技術的な詳細 脆弱な箇所 脆弱性は LINEMODE SLC(Set Local Characters)サブオプションハンドラの add_slc 関数に存在する。telnetd はクライアントから送られた SLC トリプレット(3バイト組)を固定サイズのバッファ slcbuf(0x6C バイト)に格納する。この際、境界チェックを一切行っていない。 1 2 3 4 5 6 7 8 9 // 境界チェックなしでバッファに書き込む脆弱なコード if ((*slcptr++ = (unsigned char) func) == 0xff) *slcptr++ = 0xff; if ((*slcptr++ = (unsigned char) flag) == 0xff) *slcptr++ = 0xff; if ((*slcptr++ = (unsigned char) val) == 0xff) *slcptr++ = 0xff; 攻撃の仕組み Telnet の接続確立時に行われるオプションネゴシエーション(機能交渉)中に、特別に細工されたパケットを送信することで攻撃が成立する。具体的には以下のプロトコルフォーマットを悪用する: ...

2026年3月18日 · 2 分