Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2026-16219-croogo-lab — Safely demonstrates CVE-2026-16219 path traversal in Croogo CMS with a loopback-only PoC, technical analysis, remediation guidance, and standalone demo for defenders and researchers. | Kitploit
ツール/GitHubGitHub/hellboy3110/cve-2026-16219-croogo-lab
脆弱性スキャナーエクスプロイトウェブセキュリティ論文と研究学習と教育ラボと実践
GitHubhellboy3110/cve-2026-16219-croogo-lab

cve-2026-16219-croogo-lab

Safely demonstrates CVE-2026-16219 path traversal in Croogo CMS with a loopback-only PoC, technical analysis, remediation guidance, and standalone demo for defenders and researchers.

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-16219: Croogo FileManager 防御ラボ

Safety: loopback only PoC payload: text only

このリポジトリは、Croogo CMS における CVE-2026-16219 として追跡されているパス認可の欠陥を文書化し、安全に実証するものです。これは、自分が所有するシステム、または明示的に評価を許可されたシステムをテストする、防御者、メンテナ、学生、研究者を対象としています。

安全境界: 同梱の HTTP 概念実証コードは、リテラルなループバックアドレス 127.0.0.1 のみを受け付け、固定された非 Web 宛先 /tmp/croogo-cve-2026-16219/ に生成された .txt マーカーのみを書き込み、リダイレクトには従わず、明示的なラボの了承なしには実行を拒否します。実行可能なペイロードやリモートターゲットモードは含まれていません。

ステータススナップショット

スナップショット日付: 2026-07-20。

項目値
製品Croogo CMS、管理ファイルマネージャー
NVD 影響バージョン4.0.0~4.0.7
脆弱性CWE-22、パストラバーサル / 不適切なパス制限
NVD CNA CVSS v3.16.3 Medium
権限FileManager を使用できる認証済みアカウント
ユーザー操作認証後は不要
公開情報上流の課題と公開エクスプロイト情報が存在
修正済みバージョン引用したアドバイザリのスナップショットでは特定されていない

現在のステータスは変更される可能性があります。本番環境での判断を行う前に、docs/references.md の一次情報源を再確認してください。

何が問題か

Croogo は WWW_ROOT/assets のような狭い編集可能ルートを設定します。影響を受けるヘルパーは、Configure::read() ではなく Configure::check() を使用して FileManager.editablePaths を取得します。check() はキーが存在するかどうかを返すだけで、設定されたパスリストは返しません。その結果得られたブール値がパス包含チェックに使用され、意図された認可境界が損なわれます。

File Manager の作成・編集操作はそのチェックを信頼しています。上流のレポートで説明されている条件下では、PHP サービスアカウントが選択した場所に書き込める場合、認証済みの FileManager ユーザーは設定された編集可能ルートの外に書き込むことができます。

データフローについては docs/technical-analysis.md を、堅牢化の指針については docs/remediation.md を参照してください。

リポジトリの内容

.
|-- demo/                         Standalone logic demonstration; no Croogo required
|-- docs/                         Analysis, lab setup, detection, remediation, references
|-- patches/                      Illustrative defense-in-depth patch
|-- poc/                          Strictly loopback, text-marker HTTP PoC and cleanup tools
|-- tests/                        Guardrail and demo tests
|-- .github/workflows/validate.yml
|-- DISCLAIMER.md
|-- GITHUB_UPLOAD.md
|-- LICENSE
|-- Makefile
|-- SECURITY.md
`-- VERSION

最も手軽で安全なデモ

スタンドアロンモデルは、脆弱な CMS を実行したりネットワークリクエストを送信したりすることなく、このバグを説明します:

php demo/path_authorization_demo.php

期待される結果:

Buggy modeled check for outside path: ALLOWED
Safe boundary check for outside path: DENIED

このデモは、オペレーティングシステムの一時ディレクトリの下に一時ファイルを作成し、終了前に削除します。

ローカル Croogo ラボ PoC

1. 隔離されたラボを準備する

docs/lab-setup.md に従ってください。アプリケーションを 127.0.0.1 のみにバインドし、Croogo と同じ VM またはコンテナ内に固定マーカーディレクトリを作成します:

sudo install -d -o www-data -g www-data -m 0750 \
  /tmp/croogo-cve-2026-16219

使い捨てラボでは、www-data を PHP-FPM または Web サーバーのアカウントに置き換えてください。

2. ラボ専用の認証値をエクスポートする

自分のラボ内の正規の File Manager リクエストから、完全な Cookie ヘッダーと CakePHP CSRF トークンを取得してください。これらをコミットしないでください。

export BASE='http://127.0.0.1:8080'
export COOKIE='CAKEPHP=lab-session; csrfToken=lab-cookie-token'
export CSRF_TOKEN='lab-request-token'
export LAB_ACK='I_OWN_THIS_LAB'

3. リクエストを送信せずに保護策を検証する

POC_VALIDATE_ONLY=1 ./poc/croogo_local_poc.sh

4. テキストマーカーリクエストを送信する

./poc/croogo_local_poc.sh

スクリプトは生成されたファイル名と HTTP ステータスを出力します。HTTP リダイレクトや成功レスポンスはそれ自体では証明になりません。Croogo VM またはコンテナの内部からマーカーを検証してください:

sudo ./poc/verify_marker.sh

WWW_ROOT/assets の外にあるマーカーは、認可の失敗を示します。マーカーはプレーンテキストであり、Web 上で実行可能ではありません。

5. クリーンアップ

sudo LAB_ACK='I_OWN_THIS_LAB' ./poc/cleanup_marker.sh
unset COOKIE CSRF_TOKEN LAB_ACK BASE

リポジトリのテスト

make test

テストは、シェル構文の確認、非ループバック入力と URL 混乱入力の拒否、検証中にシークレットが出力されないことの保証、スタンドアロンモデルの期待される結果の検証を行います。

修正の優先順位

  1. テスト済みの修正が展開されるまで、管理ファイルマネージャーを無効化するか、信頼できる管理者の最小限のグループに制限する。
  2. Configure::read() を使用して設定の取得を修正する。
  3. 許可されたルートと候補ディレクトリの両方を正規化し、セパレータを考慮した包含チェックを実行する。
  4. 送信されたファイル名内のパスセパレータ、NUL バイト、安全でない名前を拒否する。
  5. PHP がアプリケーションソースや実行可能な Web ルートの場所に書き込めないようにする。
  6. docs/detection.md を使用してログと書き込み可能な場所を確認する。

patches/illustrative-hardening.patch のユーティリティパッチと patches/create-file-hardening-example.md のコントローラガイダンスはレビュー支援用であり、公式のベンダー修正ではありません。実際にデプロイされているブランチに対してテストしてください。

倫理的な使用

このリポジトリは、自分が所有するシステム、またはテストする明示的な書面による許可を得たシステムでのみ使用してください。PoC を公開ターゲット、実行可能なペイロード、永続化、資格情報へのアクセス、破壊的な行為に適合させてはなりません。SECURITY.md と DISCLAIMER.md を参照してください。

ライセンス

MIT。 LICENSE を参照してください。

ツールをダウンロード