概要
リモートの Amazon Linux 2023 ホストに、セキュリティ更新プログラムがありません。
説明
したがって、ALAS2023-2026-1862 のアドバイザリに記載されている複数の脆弱性の影響を受けます。
Vim は、オープンソースのコマンドラインテキストエディターです。9.2.0280 より前では、Vim の zip.vim プラグインにおけるパストラバーサルのバイパスにより、特別に細工された zip アーカイブを開くことで任意のファイルが上書きされ、CVE-2025-53906 に対する以前の修正が回避されます。この脆弱性は 9.2.0280 で修正されています。
(CVE-2026-35177)
Vim の NetBeans 統合における Ex コマンドインジェクション (v9.2.0316 より前)。netbeans defineAnnoType コマンドは、typeName、fg、および bg をサニタイズされないまま coloncmd() に渡すため、悪意のある NetBeans サーバーが「|」を介して任意の Ex コマンドを注入できます。同様に、specialKeys は map コマンドを構築する前にキートークンを検証しません。(CVE-2026-39881)
Vim は、オープンソースのコマンドラインテキストエディターです。バージョン 9.2.0383 より前の Vim では、バンドルされている netrw 標準プラグインに OS コマンドインジェクションの脆弱性が存在します。ユーザーを細工された URL (例: sftp:// または file:// プロトコルハンドラー) で開かせることで、攻撃者が Vim プロセスの権限で任意のシェルコマンドを実行できます。この問題には、バージョン 9.2.0383 でパッチが適用されています。
(CVE-2026-42307)
netrw プラグイン (「runtime/pack/dist/opt/netrw/autoload/netrw.vim」) の「s:NetrwMarkFile()」に、グローバルなマーク済みファイルリストからファイルのマークを解除する際に Vimscript コードインジェクションの脆弱性が存在します。
バッファのディレクトリ一覧から派生したファイル名が「filter()」に渡される文字列式に補間されることで、二重引用符を含む細工されたファイル名が引用符で囲まれた文字列リテラルから抜け出し、「execute()」や「:!」を通じてシェルコマンドを含む任意の Vimscript を実行できるようになります。
## Description`s:NetrwMarkFile()` は、バッファローカルリストとグローバルリストという 2 つのマーク済みファイルリストを管理します。
ファイルのマークが解除されると、両方のリストが更新されます。バッファローカルリストは安全なパターンを使用します。
call filter(s:netrwmarkfilelist_{curbufnr},'v:val != a:fname')
ここで、「a:fname」はフィルター式内の変数として参照され、評価時に解決されます。
しかし、グローバルリストでは、ファイル名の値が式の文字列に直接補間されます。
let dname = netrw#fs#ComposePath(b:netrw_curdir, a:fname)...call filter(s:netrwmarkfilelist, 'v:val != '.dname.'')
「filter()」が文字列引数を受け取ると、その文字列は Vimscript 式として解析されます。`` を含むファイル名は引用付きリテラルを途中で終了させ、その後のファイル名の残りの部分は Vimscript として評価されます。注入されたフラグメント内の「execute(!cmd)」などの呼び出しにより、Vim を実行しているユーザーの権限で任意の Ex コマンドが実行されます。ファイル名は「mf」マッピングを通じて「s:NetrwMarkFile()」に渡されます。これは「s:NetrwGetWord()」を呼び出し、netrw のディレクトリ一覧の現在行からファイル名を読み取ります。
このインジェクションは、特定のエントリに対して2回目の「mf」押下でのみ発生します。これは、1回目の押下では「add()」ブランチに入り、2回目の押下でのみ脆弱な「filter()」ブランチに入るためです。(CVE-2026-43961)
Vim は、オープンソースのコマンドラインテキストエディターです。9.2.0435 より前のバージョンでは、Vim の :find コマンドライン補完に OS コマンドインジェクションの脆弱性が存在します。path オプションにバッククォートで囲まれたシェルコマンドが含まれている場合、それらのコマンドはファイル名補完中に実行されます。path オプションには P_SECURE フラグがないため、modeline から設定可能であり、攻撃者がファイルの内容を制御できる場合、そのファイルを Vim で開いて :find 補完をトリガーすると任意のシェルコマンドが実行される可能性があります。この問題には、バージョン 9.2.0435 でパッチが適用されています。(CVE-2026-44656)
Vim は、オープンソースのコマンドラインテキストエディターです。9.2.0450 より前のバージョンでは、UTF-8 エンコーディングが有効な状態で細工されたスペルファイル (.spl) を読み込む際に、src/spellfile.c の read_compound() にヒープバッファオーバーフローが存在します。
スペルファイルの compound セクションにある攻撃者が制御する長さフィールドにより、32ビット符号付き整数の乗算オーバーフローが発生し、その結果、書き込みループが多数回実行される一方で小さなバッファが割り当てられ、ヒープオーバーフローが発生します。「spelllang」オプションは modeline から設定できるため、悪意のある .spl ファイルが runtimepath 上に配置されている場合、テキストファイルの modeline によってスペルファイルの読み込みがトリガーされる可能性があります。この問題には、バージョン 9.2.0450 でパッチが適用されています。(CVE-2026-45130)
Vim は、オープンソースのコマンドラインテキストエディターです。9.2.0479 より前では、Unix系システムで .tgz アーカイブを展開する際に、runtime/autoload/tar.vim の tar#Vimuntar() にコマンドインジェクションの脆弱性が存在します。
この関数は、{special} フラグなしの shellescape(tartail) を使用して :!gunzip および :!gzip -d コマンドを構築します。これにより、細工されたアーカイブファイル名が Vim の cmdline-special 展開を引き起こし、ユーザーのコンテキストでシェルコマンドを実行できるようになります。この脆弱性は 9.2.0479 で修正されました。(CVE-2026-46483)
Vim は、オープンソースのコマンドラインテキストエディターです。バージョン 9.2.0495 以前において、閲覧したディレクトリパスを履歴ファイル ~/.vim/.netrwhist にシリアライズする際に、netrw プラグイン (runtime/pack/dist/opt/netrw/autoload/netrw.vim) の s:NetrwBookHistSave() に Vimscript コードインジェクションの脆弱性が存在します。ファイルシステムから取得したディレクトリ名が、埋め込まれたシングルクォートをエスケープすることなくシングルクォートで囲まれた Vimscript 文字列リテラルに補間されるため、細工されたディレクトリ名によって文字列コンテキストから抜け出し、次回履歴ファイルが読み込まれる際に system() および「:!」を介したシェルコマンドを含む任意の Vimscript を実行することが可能になります。この問題には、バージョン 9.2.0495 でパッチが適用されています。
(CVE-2026-47162)
Vim は、オープンソースのコマンドラインテキストエディターです。9.2.0496 より前のバージョンでは、+ruby サポート付きの Vim ビルドにおける cucumber ファイルタイププラグイン (runtime/ftplugin/cucumber.vim) の s:stepmatch() にコードインジェクションの脆弱性が存在します。リポジトリの features// または stories// ディレクトリ配下の .rb ファイルから読み取られるステップ定義パターンは、十分なエスケープ処理なしで Ruby の Kernel.eval 引数に埋め込まれます。これにより、ユーザーがステップジャンプマッピング ([d, ]d) を呼び出すと、攻撃者が制御するリポジトリ内の細工されたパターンによって任意の Ruby コード (およびそれを通じた任意のシェルコマンド) が実行される可能性があります。この問題には、バージョン 9.2.0496 でパッチが適用されています。(CVE-2026-47167)
Vim は、オープンソースのコマンドラインテキストエディターです。9.2.0561 より前のバージョンでは、+python3 インタープリターが有効な Vim の python3complete.vim における Python omni-completion スクリプト (および +python インタープリターを持つビルド向けのレガシーな pythoncomplete.vim) は、現在のバッファ内にある import および from 文を Python の import 機構を通じて実行します。バッファの作業ディレクトリが sys.path 上にあるため、隣接する Python パッケージを含む悪意のある .py ファイルを開き、omni-completion を呼び出すと、そのパッケージのトップレベルコードが編集ユーザーの権限で実行されます。この問題には、バージョン 9.2.0561 でパッチが適用されています。
(CVE-2026-52858)
Vim は、オープンソースのコマンドラインテキストエディターです。9.2.0565 より前のバージョンでは、スナップショットが作成される際に、src/terminal.c 内の update_snapshot() 関数は表示されているターミナル画面をスクロールバックバッファにコピーします。
各スクリーンセルについて、セルの chars[] 配列を上限なしで走査し、NUL 終端に遭遇した場合にのみ停止します。セルが VTERM_MAX_CHARS_PER_CELL (6) のすべてのスロット (基本文字 1 つと 5 つの結合文字) を正当に埋める場合、同梱の libvterm は終端 NUL なしで配列を返します。そのため、ループは固定の 6 要素配列を超えて読み取り、範囲外の値を 6 文字分のみ確保されたバッファに追加します。出力が :terminal ウィンドウ内でレンダリングされるプログラムは、短いバイト列だけで Vim スクリプトを使わずにこれをトリガーし、クラッシュを引き起こす可能性があります。この問題には、バージョン 9.2.0565 でパッチが適用されています。(CVE-2026-52859)
Vim は、オープンソースのコマンドラインテキストエディターです。9.2.0597 より前のバージョンでは、Vim の Python オムニコンプリート機能は、補完ディクショナリの構築の一部として、exec() を用いて現在のバッファから再構築された関数およびクラス定義を実行します。Python は、関数のデフォルト値、パラメーター注釈、およびクラスの基底式を定義時に評価するため、悪意のあるバッファが omni-completion 中に攻撃者が制御する Python 式を実行する可能性があります。既存の g:pythoncomplete_allow_import の緩和策 (GHSA-52mc-rq6p-rc7c) はこの経路をカバーしていません。これは、攻撃者が制御するコードが収集された import/from 文ではないためです。この問題には、バージョン 9.2.0597 でパッチが適用されています。(CVE-2026-52860)
Tenable は、前述の記述ブロックをテスト済み製品のセキュリティアドバイザリから直接抽出しています。
Nessus はこれらの問題をテストしておらず、代わりにアプリケーションが自己報告するバージョン番号にのみ依存していることに注意してください。
ソリューション
「dnf update vim --releasever 2023.12.20260622」または「dnf update --advisory ALAS2023-2026-1862 --releasever 2023.12.20260622」を実行してシステムを更新してください。
プラグインの詳細
ファイル名: al2023_ALAS2023-2026-1862.nasl
エージェント: unix
サポートされているセンサー: Agentless Assessment, Continuous Assessment, Frictionless Assessment Agent, Frictionless Assessment AWS, Nessus Agent, Tenable Cloud Security, Tenable Self-Hosted Container Security, Nessus
リスク情報
ベクトル: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C
ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
現状ベクトル: CVSS:3.0/E:P/RL:O/RC:C
Threat Vector: CVSS:4.0/E:P
Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
脆弱性情報
CPE: p-cpe:/a:amazon:linux:vim-filesystem, p-cpe:/a:amazon:linux:vim-data, p-cpe:/a:amazon:linux:vim-enhanced-debuginfo, p-cpe:/a:amazon:linux:vim-common, p-cpe:/a:amazon:linux:vim-minimal-debuginfo, p-cpe:/a:amazon:linux:xxd-debuginfo, p-cpe:/a:amazon:linux:xxd, p-cpe:/a:amazon:linux:vim-minimal, p-cpe:/a:amazon:linux:vim-enhanced, p-cpe:/a:amazon:linux:vim-default-editor, p-cpe:/a:amazon:linux:vim-debuginfo, cpe:/o:amazon:linux:2023, p-cpe:/a:amazon:linux:vim-debugsource
必要な KB アイテム: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list
エクスプロイトの容易さ: Exploits are available
参照情報
CVE: CVE-2026-35177, CVE-2026-39881, CVE-2026-42307, CVE-2026-43961, CVE-2026-44656, CVE-2026-45130, CVE-2026-46483, CVE-2026-47162, CVE-2026-47167, CVE-2026-52858, CVE-2026-52859, CVE-2026-52860