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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2026-27483-lab — CVE-2026-27483 の調査と防御のための、コンテナ化されたエンタープライズスタイルのラボ。 | Kitploit
ツール/GitHubGitHub/nabhan-mohy/cve-2026-27483-lab
脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト脅威インテリジェンス学習と教育インシデントレスポンスラボと実践
GitHubnabhan-mohy/cve-2026-27483-lab

cve-2026-27483-lab

CVE-2026-27483 の調査と防御のための、コンテナ化されたエンタープライズスタイルのラボ。

リポジトリを見る
428日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-27483 ラボ - エンタープライズ脆弱性学習環境

Status Version MindsDB CVE

CVE-2026-27483(MindsDB パストラバーサル → RCE)の学習、テスト、防御を目的とした、現実的でエンタープライズ風の完全な Docker ベースのラボです。このリポジトリには、デプロイ可能なラボ構成、設定ファイル、最小限のコンテナイメージ、検知ルール、補助スクリプトが含まれており、発見、攻撃(サニタイズ済み)、防御の練習を行うための隔離環境を安全に構築できます。

重要: このラボは教育目的で意図的に脆弱な MindsDB バージョンを含んでいます。隔離されたエアギャップ環境でのみ実行し、決して公開ネットワークに公開しないでください。


目次

  • アーキテクチャとコンポーネント
  • クイックスタート(実行方法)
  • プロファイルとリソースオプション(最小 / 監視)
  • ラボの仕組み(詳細なデータフローとコンポーネント)
  • ラボの使用方法(攻撃者コンテナ、チャレンジ、検知)
  • スモークテストとトラブルシューティング
  • セキュリティと安全な使用方法
  • コントリビューション

アーキテクチャ(概要)

root@kitploit:~
Internet (Attacker)
    ↓
Reverse Proxy (nginx)
    ↓
┌─────────────────────────────────┐
│  MindsDB (Vulnerable)           │  Port 47334
│  - Vulnerable to CVE-2026-27483 │
└─────────────────────────────────┘
    ↓
┌─────────────────────────────────┐
│  PostgreSQL Database            │  Port 5432 (internal)
│  - Stores MindsDB data          │
└─────────────────────────────────┘
    ↓
┌─────────────────────────────────┐
│  ELK Stack (Logging)            │
│  - Elasticsearch, Logstash      │  Ports 9200, 5000
│  - Kibana Dashboard             │  Port 5601
└─────────────────────────────────┘

サービスは専用の Docker ブリッジネットワーク(デフォルトで 172.20.0.0/16)上で接続されます。隔離された MindsDB サービスに対して制御された攻撃試行を実行するための攻撃者コンテナが含まれています。


ポート(ホスト → コンテナ)

  • 80 → nginx プロキシ
  • 443 → nginx プロキシ(SSL 有効時)
  • 8080 → リバースプロキシダッシュボード
  • 47334 → MindsDB(API/Web)
  • 47335 → MindsDB(API/補助)
  • 5432 → Postgres(内部用、公開は推奨されません)
  • 9200 → Elasticsearch
  • 5601 → Kibana
  • 1025/8025 → Mailhog(SMTP/Web)

デフォルトでは、Postgres はパブリックインターネットに公開することを意図していません。compose ファイルは、ローカルラボ用に内部サービスをマッピングしています。


クイックスタート(ローカル)

前提条件:

  • Docker(v20+)および Docker Compose v2+(docker compose)
  • フルデプロイには最低 8 GB の RAM を推奨(Elasticsearch + Kibana はメモリを必要とします)
  1. リポジトリをクローン:
root@kitploit:~
git clone https://github.com/nabhan-mohy/cve-2026-27483-lab.git
cd cve-2026-27483-lab
  1. サンプル環境ファイルをコピーし、シークレットを確認:
root@kitploit:~
cp .env.example .env
# .env を開き、DB_PASSWORD とその他の値を確認

重要: .env の DB_PASSWORD が compose ファイルが期待するパスワードと一致していることを確認してください。docker-compose.yml にはデフォルト値(${DB_PASSWORD:-P@ssw0rd123!})があります。.env に DB_PASSWORD=P@ssw0rd123! を設定するか、docker-compose.yml を編集してお好みのパスワードを使用してください。不一致の場合、MindsDB は Postgres に接続できず、サービスは正しく起動しません。

  1. (任意).env を編集して動作を調整(機能の有効化/無効化、攻撃者リスナー IP の設定など)。

  2. ラボを起動(フルモード):

root@kitploit:~
docker compose up -d --build
  1. サービスが正常になったら、以下のエンドポイントを確認:
  • MindsDB: curl http://localhost:47334/api/status
  • Kibana: http://localhost:5601
  • リバースプロキシダッシュボード: http://localhost:8080
  1. コンテナを停止して削除:
root@kitploit:~
docker compose down

ボリュームを削除する場合(破壊的):

root@kitploit:~
docker compose down -v

プロファイルとリソースオプション

README では、最小プロファイルと監視プロファイルについて言及しています。これらをサポートするには、次のいずれかを使用できます:

  • docker-compose.yml の profiles: キーを使用して、サービスを minimal プロファイルと monitoring プロファイルに分離する、または
  • docker-compose.minimal.yml などのオーバーライド compose ファイルを作成して、低リソーステスト用に重いコンポーネント(Elasticsearch/Kibana/Wazuh)を無効化する。

推奨される最小テストアプローチは、Elasticsearch/Kibana/Wazuh をコメントアウトまたはスキップし、mindsdb、postgres、nginx-proxy、attacker のみを実行することです。


ラボの仕組み(詳細)

  • リバースプロキシ(nginx-proxy): 外部向けエンドポイントとして機能し、攻撃者のトラフィックを脆弱な MindsDB サービスにルーティングします。プロキシはまた、クイックチェック用のシンプルなダッシュボードポート(8080)も提供します。

  • MindsDB(脆弱なイメージ): README で参照されている脆弱なリリースからパッケージ化されています。データを Postgres に保存し、古いバージョンでは意図的に脆弱な API エンドポイントを提供します。

  • Postgres: MindsDB の設定とアーティファクトを保存します。初期化 SQL とシードデータは configs/postgres/*.sql に提供されています。

  • ELK スタック(Elasticsearch、Logstash、Kibana): プロキシとアプリケーションからログを収集し、検知ルールとダッシュボードを構築できます。

  • Wazuh(任意): セキュリティ監視エージェントおよびマネージャー。統合のデモンストレーション用のプレースホルダーとして含まれています。設定内の TLS 証明書と認証情報はプレースホルダーであり、完全な機能のためにはプロビジョニングが必要です。

  • 攻撃者コンテナ: ユーティリティ(curl、netcat、python)とマウントされた exploits/ フォルダを備えた環境で、同じ Docker ネットワーク内からチャレンジスクリプトを実行できます(必要に応じてホストネットワークから隔離)。

  • バックアップサービス: 現実的なエンタープライズワークフロー(Postgres から DB ダンプを取得するバックアップ)をデモンストレーションするサンプルコンテナ。


ラボの使用方法(練習フロー)

  1. ラボを起動します(クイックスタートを参照)。
  2. ホストから、または攻撃者コンテナに入って(docker compose exec -it attacker /bin/bash)、プロキシ(ポート 80/8080)と MindsDB API(47334)に対して偵察を実行します。
  3. 学習レベルを進めます(偵察 → パストラバーサル → RCE → 永続化 → 防御)。このリポジトリには意図的に武器化されたエクスプロイトコードは含まれていません。チャレンジスクリプトやサニタイズされた PoC 手順が必要な場合は、ガイダンスと安全チェックを備えて exploits/ と docs/challenges/ に追加できます。
  4. ELK のログを観察し、含まれている Sigma ルール(rules/sigma/cve-2026-27483.yml)を検知の出発点として使用します。不審なアップロードパス、異常なリクエスト、予期しないファイルシステムアクティビティを強調表示する Kibana ビジュアライゼーションを作成します。

例: 攻撃者コンテナから基本的な偵察を実行

root@kitploit:~
# 攻撃者コンテナに入る
docker compose exec -it attacker /bin/bash
# ネットワークをスキャンするか、エンドポイントに curl を実行
curl -v http://nginx-proxy:80/
curl -v http://mindsdb:47334/api/status

スモークテスト

スモークテストスクリプトが scripts/smoke_test.sh(存在する場合)に提供されています。以下のチェックを実行します:

  • compose スタックをビルドして起動
  • MindsDB /api/status の応答を待機
  • nginx リバースプロキシがポート 8080 で応答することを確認
  • Kibana のステータスエンドポイントをチェック
  • Elasticsearch クラスタのヘルス(yellow|green)を待機
  • pg_isready で Postgres の準備完了を確認

ローカルで実行:

root@kitploit:~
chmod +x scripts/smoke_test.sh
./scripts/smoke_test.sh

スモークテストが失敗した場合は、ログを smoke_compose_logs.txt に収集してデバッグ用に共有してください:

root@kitploit:~
docker compose logs --no-color > smoke_compose_logs.txt

検知とロギング

  • Logstash パイプラインは configs/logstash/logstash.conf に提供されており、ログを Elasticsearch に転送します。含まれている Sigma ルール rules/sigma/cve-2026-27483.yml は、不審なパストラバーサルパターン(.. を含むリクエスト)をフラグ付けするシンプルな例です。これを出発点として使用し、誤検知を減らすために改良してください。

  • Kibana ダッシュボードを作成して以下を可視化:

    • トラバーサルパターンを含むアップロード/リクエスト URI
    • 異常なユーザーエージェントと送信元 IP
    • ファイルシステム関連ログの変更

トラブルシューティング(一般的な問題)

  • Postgres 認証エラー: これは通常、.env と docker-compose.yml の間の DB パスワードの不一致が原因です。両方が同じシークレットを使用していることを確認してください。
  • MindsDB エラー/500: docker compose logs -f mindsdb でスタックトレースと DB 接続エラーを確認してください。
  • Elasticsearch の OOM または起動失敗: ホストの RAM を増やすか、小規模ホストでは docker-compose.yml の ES_JAVA_OPTS を減らしてください(例: -Xms256m -Xmx256m)。
  • nginx ヘルスチェックの失敗: プロキシ設定が正しい内部ホスト(mindsdb:47334)を指していること、および mindsdb コンテナが正常であることを確認してください。

デバッグのヘルプが必要な場合は、スモークテストを実行して smoke_compose_logs.txt を共有してください。


安全性と法的注意事項

  • このラボには意図的に脆弱なコンポーネントが含まれています。隔離された非本番環境でのみ使用してください。
  • このラボを公開ルーティング可能なインフラストラクチャにデプロイしないでください。
  • エクスプロイトコードを公開コミットに含めないでください。PoC 手順を含める場合は、サニタイズし、責任ある開示の慣行に従ってください。

コントリビューション

コントリビューションを歓迎します。支援方法の提案:

  • docs/ のドキュメントを改善(デプロイ、チャレンジ、検知、インシデントレスポンス)
  • ステップバイステップの学習ガイド付きで、exploits/ にサニタイズされたチャレンジスクリプトを追加
  • プッシュ/PR 時にラボを検証するスモークテストと CI ワークフローを追加

main に対して PR を開き、教育的なエクスプロイト教材を追加する際は CONTRIBUTING ガイドラインに従ってください。


クレジット

  • 脆弱性の発見: XlabAITeam
  • オリジナル PoC: Lohitya Pushkar (thewhiteh4t)
  • ラボ開発: Security Research Community

セキュリティコミュニティのために ❤️ を込めて作られました。

ツールをダウンロード