GNU Inetutils telnetdにCVSS 9.8の認証前リモートコード実行脆弱性(CVE-2026-32746)
GNU Inetutils の telnetd に、認証なしでリモートからroot権限を奪取できるバッファオーバーフロー脆弱性が見つかった。CVSSスコアは9.8。パッチはまだ出ていない。
脆弱性の概要
| 項目 | 内容 |
|---|---|
| CVE | CVE-2026-32746 |
| CVSS 3.1 | 9.8(Critical)AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CWE | CWE-120(Buffer Copy without Checking Size of Input) |
| 影響範囲 | GNU Inetutils telnetd 全バージョン(〜2.7) |
| 発見者 | Dream Security(イスラエルのサイバーセキュリティ企業)、研究者 Adiel Sol |
| パッチ状況 | 未リリース(2026年4月1日までにリリース予定) |
技術的な詳細
脆弱性はTelnetプロトコルのオプションネゴシエーション中、LINEMODE SLC(Set Local Characters)サブオプションの処理に存在する。
LINEMODE SLCとは
Telnetプロトコルにはいくつかのモードがある。LINEMODE は行単位でデータを送信するモードで、SLC(Set Local Characters)はクライアント・サーバー間でローカル文字(割り込み、終了、消去など)のマッピングを交渉するためのサブオプション。SLCデータは「トリプレット」と呼ばれる3バイトの組で送信される。
バッファオーバーフローの仕組み
SLCサブオプションを処理する add_slc 関数が、バッファの容量チェックを行っていない。攻撃者が異常に多いトリプレット数を含む細工済みSLCサブオプションを送信すると、バッファの境界を超えて書き込みが発生する(Out-of-Bounds Write)。
重要なのは、このオーバーフローが認証プロンプトの表示前、つまり接続ハンドシェイクの段階で発生する点。ユーザー名やパスワードの入力すら不要で、ポート23に接続してパケットを送るだけでトリガーできる。
攻撃フロー
graph TD
A[攻撃者] -->|TCP接続| B[ポート23<br/>telnetd]
B --> C[オプションネゴシエーション開始]
C --> D[細工済みLINEMODE SLC<br/>サブオプション送信]
D --> E[add_slc関数で<br/>バッファオーバーフロー発生]
E --> F[メモリ破壊<br/>→ 任意コード実行]
F --> G[root権限奪取]
G --> H[バックドア設置<br/>データ窃取<br/>横展開]
telnetd は通常 inetd や xinetd 経由でroot権限で動作するため、オーバーフローが成功するとそのままroot権限でのコード実行になる。
影響を受ける環境
Telnetは一般的なWebサーバーやデスクトップではほぼ使われなくなったが、以下の環境では依然として現役で動いている。
| 環境 | 用途 |
|---|---|
| ICS/OT(産業制御システム) | SCADA環境やPLCの管理インターフェース |
| 政府・公共機関ネットワーク | レガシーインフラが残る環境 |
| 組み込み機器・IoTデバイス | Telnetで管理コンソールを提供している機器 |
| 大学・研究機関 | 古い計算リソースへのリモートアクセス |
こうした環境はモダナイゼーションのサイクルが遅く、SSHへの移行が進んでいないケースが多い。
緩和策
パッチが出るまでの対応として、以下が推奨されている。
- telnetd を無効化する(可能であれば最優先)
- ポート23をファイアウォールでブロック(ネットワーク境界とホストの両方)
- telnetd をroot以外の権限で実行する
- Telnetアクセスを信頼済みネットワークに限定する
検知方法
- ポート23への接続をネットワークレベルでロギング
- LINEMODE SLCサブオプションが約90バイトを超えるトラフィックを検知するIDSシグネチャの導入
- Telnetセッションのキャプチャとフォレンジック用保全
- ログをSIEMに集約
タイムライン
| 日付 | イベント |
|---|---|
| 2026-03-11 | Dream SecurityがGNU Inetutilsに脆弱性を報告 |
| 2026-03-12 | メンテナが確認、Pull Request #17で修正を提出 |
| 2026-03-13 | CVEが採番・公開 |
| 2026-04-01 | リリース期限(予定) |
関連する脆弱性
約2か月前にも同じGNU Inetutils telnetdで別の重大な脆弱性 CVE-2026-24061(CVSS 9.8)が公開されている。CISAによると、こちらはすでに実際の攻撃で悪用が確認されている(KEVカタログ入り)。短期間で同一コンポーネントにCriticalが2件というのは、telnetd のコードベース全体の品質に疑問を投げかける状況になっている。
Telnetをまだ使っている環境があるなら、パッチを待つよりもSSHへの移行を真剣に検討したほうがいい。telnetd自体がもう時代遅れのソフトウェアで、認証情報が平文で流れる問題もある。今回の脆弱性はその上に認証すら不要でrootを取れるという話なので、「パッチが出たから安心」とはならない。