---
title: "Highflame ramparts のスキャンを入れ子ディレクトリの .pyc で回避できる（CVE-2026-120202、CVSS v3.1 6.5）: 0.8.1〜0.8.10 が対象、修正版は未確認"
url: https://n-t-p.io/worldsecurity/articles/highflame-ramparts-skill-scan-bypass-nested-pyc-cve-2026-120202-no-fix-yet
lang: ja
kind: 速報
category: 脆弱性・CVE
author: World Security 編集部
published: 2026年11月1日
updated: 2026年11月1日
severity: 中
cve: CVE-2026-120202
---

# Highflame ramparts のスキャンを入れ子ディレクトリの .pyc で回避できる（CVE-2026-120202、CVSS v3.1 6.5）: 0.8.1〜0.8.10 が対象、修正版は未確認

> **TL;DR:** Highflame ramparts 0.8.1〜0.8.10 のスキルバンドル検査が、入れ子のディレクトリと .pyc を読み飛ばし、.pyc に隠したコードを検出できない（CVE-2026-120202、CWE-693）。CVSS v3.1 は 6.5、v4.0 は 7.1（いずれも CNA の値）、EPSS は 0.00287、KEV なし。修正版は未確認、悪用も未確認。

**要点**
- Highflame ramparts 0.8.1〜0.8.10 の検査が、入れ子のディレクトリと .pyc を読み飛ばす（CWE-693）。.pyc に隠したコードを検出できないおそれ
- CVSS v3.1 は 6.5 MEDIUM、v4.0 は 7.1 HIGH（いずれも VulnCheck＝CNA の値）。EPSS は 0.00287、KEV なし、NVD は Received
- 最新の v0.8.10 が影響範囲で、修正版は未確認。GitHub の issue #154 は open（2026-11-02 時点）
- 実際の攻撃での悪用は未確認。被害にはバンドルの実行が必要
- 検査結果だけを信頼しない運用、.pyc の別途確認、隔離実行は推定

NVD は 2026-10-31 に、Highflame ramparts の CVE-2026-120202 を登録しました。ramparts 0.8.1 から 0.8.10 までは、スキルバンドル（配布用にまとめたファイル一式）の検査で入れ子のディレクトリと .pyc ファイルを読み飛ばします。そのため、悪意あるコードを .pyc に隠すと検査を素通りし、バンドルを実行した Python が、そのコードを動かすおそれがあります（CWE-693: 保護メカニズムの不具合）。CVSS v3.1 は 6.5（MEDIUM）、v4.0 は 7.1（HIGH）で、いずれも VulnCheck（CNA）の値です。

## 何が起きるか

- 対象は ramparts 0.8.1 以上 0.8.10 以下です（CNA の記述）。ramparts は Rust 製のセキュリティスキャナーで、スキルバンドルの中身を検査します。
- バンドルの兄弟ファイルを列挙する処理（collect_bundle_siblings と walk_bundle_subdir）が、入れ子のディレクトリをたどらず、.pyc も検査対象の拡張子に含めていません。
- 攻撃者は、scripts/<サブディレクトリ>/__pycache__/ に、ハッシュを検証しない形式の .pyc を置いたバンドルを配れます。ramparts は何も検出せず、CPython はそのバイトコードを実行すると、CNA は説明しています。
- 攻撃の前提は、検査を通ったバンドルを受け取った人が、それを実行することです。CVSS ではネットワーク越し・認証不要で、ユーザーの関与が「受動的」とされ、影響は完全性のみ「高」です。
- 実際の攻撃での悪用は確認していません。

## 修正の状況

- 公開されている最新リリースは v0.8.10（2026-10-01）で、これは影響範囲に含まれます。修正版は確認できていません。
- GitHub の issue #154 に報告があり、本記事の作成時点（2026-11-02）で open です。
- 回避策は勧告に記載がなく、確認できていません。

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

| 項目 | 内容 |
|---|---|
| CVE | CVE-2026-120202 |
| NVD 公開日 | 2026-10-31 |
| 影響版 | Highflame ramparts 0.8.1〜0.8.10 |
| 修正版 | 未確認（最新の v0.8.10 は影響範囲） |
| CWE | CWE-693（保護メカニズムの不具合） |
| CVSS v3.1 | 6.5 MEDIUM（AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N）。VulnCheck（CNA）の値 |
| CVSS v4.0 | 7.1 HIGH（AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:H/VA:N）。VulnCheck（CNA）の値で、NVD 上は Secondary |
| NVD の状態 | Received（NVD 自身の評価は未実施） |
| EPSS | 0.00287（パーセンタイル 0.21、FIRST、2026-11-01 付） |
| KEV | 掲載なし（CISA のカタログで CVE-2026-120202 を確認できず） |

## severity を medium とした理由

CVSS v3.1 が 6.5（MEDIUM）で、v4.0 の 7.1 とは評価が分かれます。検査を回避できても、被害にはバンドルの実行が必要で、機密性・可用性への直接の影響もありません。EPSS は約 0.3%、KEV にも載っていません。一方で、検査ツールを信頼して取り込む運用では、検査済みという判断自体が崩れる点は軽くありません。以上から medium としました。

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

1. ramparts を使っているか、使っている場合の版を確認します。CI やローカル環境の両方を見ます。
2. 修正版が出るまでは、ramparts の「検出なし」だけを根拠にバンドルを信頼しないようにします（推定）。
3. 取り込むバンドルに、__pycache__ や .pyc が含まれていないかを別の手段で確認し、含まれる場合は取り込まない運用を検討します（推定）。
4. 信頼できない配布元のバンドルは、隔離した環境で実行します（推定）。
5. 公式リポジトリの issue #154 とリリースを見て、修正版の公開を待ちます。

## 未確認の点

- 実際の攻撃での悪用は確認していません。
- 修正版の有無と時期は確認できていません。
- 0.8.1 より前の版が影響を受けるかは確認していません。
- NVD 自身の評価は未実施（Received）です。CVSS は CNA の値です。


## 出典
- [NVD CVE-2026-120202](https://nvd.nist.gov/vuln/detail/CVE-2026-120202) — NIST NVD
- [CVE-2026-120202 CVE レコード](https://www.cve.org/CVERecord?id=CVE-2026-120202) — CVE Program
- [VulnCheck Advisory: Highflame ramparts 0.8.1 through 0.8.10 Skill Bundle Scan Bypass via Nested .pyc](https://www.vulncheck.com/advisories/highflame-ramparts-0.8.1-through-0.8.10-skill-bundle-scan-bypass-via-nested-pyc) — VulnCheck
- [ramparts issue #154](https://github.com/highflame-ai/ramparts/issues/154) — Highflame（GitHub）
- [ramparts リリース（GitHub）](https://github.com/highflame-ai/ramparts/releases) — Highflame（GitHub）
- [FIRST EPSS CVE-2026-120202](https://api.first.org/data/v1/epss?cve=CVE-2026-120202) — FIRST
- [CISA KEV カタログ](https://www.cisa.gov/known-exploited-vulnerabilities-catalog) — CISA

---
出典: World Security（株式会社NTP） https://n-t-p.io/worldsecurity/articles/highflame-ramparts-skill-scan-bypass-nested-pyc-cve-2026-120202-no-fix-yet