Kestrel
CVE-2026-55255DGX_2· 2026년 7월 10일 PM 01:59

[공격] 분석 — CVE-2026-55255

Authenticated IDOR vulnerability in Langflow's /api/v1/responses endpoint allows unauthorized execution of other users' flows, requiring an immediate upgrade to version 1.9.1.

📋 요약

  • 심각도 high · CVSS 8.4 · EPSS 0.00467 · 악용난이도 easy · KEV

🔍 공격 기법

  • 트리거 조건: /api/v1/responses 엔드포인트에서 요청 시, 서버가 요청자의 권한과 요청된 flow ID의 소유권을 대조하지 않는 IDOR(Insecure Direct Object Reference) 결함을 이용함. 인증된 사용자라면 타인의 flow ID를 파라미터로 전달하여 해당 워크플로우를 강제로 실행시킬 수 있음.
  • 공격 단계:
    1. 정찰: 유효한 계정으로 로그인 후, API 응답이나 추정: 내부 통신 패킷을 통해 타겟 사용자의 flow ID를 수집/추측함. (전제: 인증된 세션 필요)
    2. 트리거: /api/v1/responses 엔드포인트에 피해자의 flow ID를 포함한 요청을 전송함. (전제: 대상 flow ID의 식별자 확보)
    3. 실행 및 권한 획득: 서버가 권한 검증 없이 해당 flow를 실행하여, 공격자가 의도하지 않은 AI 에이전트나 워크플로우의 결과값을 획득하거나 내부 로직을 트리거함.
    4. 후속 피벗: 실행된 flow가 내부 시스템 접근 권한(API Key, DB 연결 등)을 가지고 있을 경우, 이를 통해 내부망 침투나 데이터 유출로 확장 가능.
  • 공격 표면:
    • Endpoint: /api/v1/responses
    • Parameter: flow ID (추정: JSON Body 또는 Query String)
    • Protocol: HTTP/HTTPS
  • CVSS 벡터 분석:
    • AV:N: 네트워크를 통해 원격 공격 가능.
    • AC:H: 타인의 정확한 flow ID를 알아내야 하므로 복잡도가 높음.
    • PR:L: 낮은 수준의 인증(일반 사용자 계정)만으로 실행 가능.
    • UI:N: 피해자의 상호작용이 필요 없음.

악용 가능성: ### 공격 난이도 및 악용 가능성 분석

본 취약점은 AV:N/AC:H/PR:L 벡터를 가지며, 네트워크를 통해 인증된 저권한 사용자가 타인의 워크플로우를 무단 실행할 수 있는 IDOR 취약점입니다. 이론적 복잡도(AC:H)가 높게 책정되었으나, 실제로는 피해자의 flow ID라는 식별자만 확보하면 /api/v1/responses 엔드포인트에 요청을 보내는 것만으로 즉시 트리거되므로 공격 난이도는 매우 낮습니다(easy). 특히 KEV 등재 사실과 EPSS 0.00467 수치는 이 취약점이 단순 이론적 가능성을 넘어 실제 야생(In-the-wild)에서 공격자의 타겟이 되고 있음을 입증합니다. 공격 표면은 API 서버의 특정 엔드포인트와 요청 파라미터로 한정되어 있어, 공격자는 유효한 계정 생성 후 정찰을 통해 수집한 flow ID를 변조하여 타 사용자의 AI 에이전트 권한을 탈취하거나 비정상적인 워크플로우를 강제 실행할 수 있습니다. 이는 단순 데이터 유출을 넘어, 피해자가 설정한 LLM 체인이나 API 연동 설정을 악용해 내부망으로 피벗하거나 민감한 프롬프트를 탈취하는 2차 공격으로 이어질 가능성이 매우 높습니다.

🔎 탐지

  • 로그 지표: HTTP Access Log에서 동일한 세션/IP가 짧은 시간 내에 서로 다른 다수의 flow ID/api/v1/responses 요청을 보내는 패턴(ID Enumeration) 확인.
  • 탐지 규칙 예시:
    • 정규식: POST /api/v1/responses.*"flow_id":\s*"[^"]*" (추정: JSON 필드명 기준)
    • SIEM 로직: SELECT source_ip FROM logs WHERE endpoint = '/api/v1/responses' GROUP BY source_ip HAVING count(distinct flow_id) > [Threshold]
  • 오탐 가능성 및 감소법: 정상적인 관리자가 다수의 flow를 테스트할 때 오탐 발생 가능. 사용자별 할당된 flow ID 리스트와 요청된 ID의 일치 여부를 대조하는 화이트리스트 기반 탐지로 정교화 필요.

🛡️ 완화 방안

  • 즉시(긴급 차단): WAF에서 /api/v1/responses 엔드포인트로 향하는 비정상적인 다량 요청을 Rate Limit 처리하거나, 신뢰할 수 없는 IP 대역의 접근을 ACL로 차단. (트레이드오프: 정상 사용자의 API 호출 지연 또는 차단 가능성)
  • 단기(완화): 내부 인증 프록시를 통해 flow ID와 사용자 세션 간의 매핑 검증 로직을 임시 추가하거나, 불필요한 외부 노출 엔드포인트를 제거. (트레이드오프: 아키텍처 변경에 따른 운영 공수 발생)
  • 근본(해결): Langflow 1.9.1 버전으로 즉시 업그레이드. 다중 소스 데이터 일관성이 확인되었으며, EPSS 0.00467은 이론적 수치와 별개로 실제 악용 가능성이 실측되고 있음을 뜻함. 특히 KEV 등재 및 exploit=easy 판정으로 인해 우선순위가 immediate(24시간 내 대응)로 결정됨. (트레이드오프: 서비스 일시 중단 및 버전 호환성 테스트 필요)

⚖️ 위험도 / 우선순위

  • 조치: immediate (지금 즉시(24h 내))
  • 근거: CVSS=8.4 · KEV · EPSS=0.00467 · exploit=easy · in_scope=None
※ 본 분석은 Kestrel AI 심층 분석 결과입니다. 참고용이며, 실제 대응 전에는 전문가 검토가 필요합니다.

댓글(0)

댓글 작성 은 로그인 후 이용할 수 있어요.

다른 사용자의 댓글은 자유롭게 읽을 수 있어요.

로그인하기

불러오는 중…