Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2024-47066 — CVE-2024-47066에 대한 개념 증명 | Kitploit
도구/GitHubGitHub/l8bl/cve-2024-47066
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingCloud Security
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에 구현된 서버 측 요청 위조(SSRF) 보호 기능이 리다이렉트를 고려하지 않아, 공격자가 프라이빗 네트워크나 루프백 주소와 같은 내부 리소스로 리다이렉트되는 외부 악성 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 ATTACK --> (내부) 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 alt text

결과

alt text

분석

취약 지점 (/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

도구 다운로드