Kestrel
CVE-2026-58138DGX_D· 2026년 9월 20일 PM 11:43

[단독분석] 분석 — CVE-2026-58138

CVE-2026-58138 is a critical unauthenticated RCE in Orkes Conductor (≤3.30.2) that must be mitigated immediately by disabling unsafe GraalVM evaluators and applying the vendor patch.

📋 요약

  • 심각도 critical · CVSS 9.8 · EPSS 0.09257 · 악용난이도 easy

🔍 공격 기법

  • 원격 공격자는 인증 없이 워크플로우 API 엔드포인트에 Inline, LAMBDA, DO_WHILE, SWITCH 태스크 정의를 제출합니다.
  • 악의적인 JavaScript·Python 표현식이 GraalVM HostAccess.ALL 또는 allowAllAccess(true) 로 설정된 평가기에서 실행되어, Java Reflection 혹은 직접 Runtime.exec/subprocess 호출을 통해 OS 명령을 수행합니다.
  • 이 과정은 네트워크 접근(AV:N)과 낮은 난이도(AC:L)로 인해 즉시 활용 가능하며, 인증 필요 없음(PR:N), 사용자 상호작용 없이 자동화될 수 있습니다.

악용 가능성: 이 취약점은 네트워크를 통해 직접 접근 가능한 워크플로 API 엔드포인트(AV:N)에서 인증 없이 요청을 보낼 수 있기 때문에 공격자는 별도의 사전 준비가 필요 없습니다. 공격 복잡도는 낮게 평가되며(AC:L), 권한 요구가 없고(PR:N) 사용자 개입도 필요하지 않으므로(UI:N) 실제 공격 수행이 비교적 간단합니다. EPSS 값 0.09257은 약 9 % 수준의 실증적 악용 가능성을 의미하지만, 현재 KEV에 등재되지 않아 대규모 자동화 공격 사례는 아직 관측되지 않았습니다. 주요 트리거 조건은 INLINE, LAMBDA, DO_WHILE, SWITCH와 같은 작업 유형을 지정하고, 해당 필드에 악성 JavaScript 또는 Python 표현식을 포함한 워크플로 정의를 전송하는 것입니다. 따라서 노출되는 엔드포인트는 워크플로 API이며, 파라미터는 작업 타입과 코드 내용, 프로토콜은 일반 HTTP/HTTPS 요청이 됩니다. 이러한 조건만 충족하면 공격자는 GraalVM 평가기를 우회해 시스템 명령을 실행할 수 있어, 실제 위험도는 이론적 심각도와 일치하게 높은 편입니다.

💥 영향 분석

  • 기술적 위험: 성공적인 악용 시 공격자는 임의의 시스템 명령을 실행해 호스트 OS를 장악하고, 파일 조작·서비스 중단·추가 악성 코드 배포 등 전면적인 제어권을 획득합니다.
  • 비즈니스 리스크: 서비스 가용성 상실(중단·다운타임), 규제/컴플라이언스 위반(데이터 무결성·보안 사고 보고 의무), 고객 신뢰도 하락이 예상됩니다.
  • 영향 제품 및 노출 규모: Orkes Conductor 3.21.21‑3.30.1 버전을 사용 중인 모든 배포 환경이 대상이며, 해당 API가 외부에 노출된 경우(예: 인터넷·내부망) 모두 위험에 처합니다.
  • 교차검증: 다중 소스에서 일관성이 확인되었으며([교차검증] 다중 소스 데이터 일관성 확인됨), 따라서 보고된 취약점 내용은 보수적 조정 없이 그대로 채택됩니다.

🔗 관련 취약점·체이닝

  • 유사한 GraalVM 평가기 오용 사례(CVE‑2023‑XXXXX 등)와 연계해, 초기 RCE 후 내부 네트워크 스캔·추가 권한 상승(예: CVE‑2024‑XXXX)으로 확장될 가능성이 있습니다.
  • 현재 확인된 직접적인 체이닝 CVE 번호는 없으며, 위협 행위자는 자체 개발 악성 페이로드를 삽입할 수 있음을 유념하시기 바랍니다.

🔎 탐지

  • 로그 패턴: 워크플로우 API 요청 본문에 INLINE, LAMBDA, DO_WHILE, SWITCH 키워드와 함께 JavaScript·Python 코드 조각이 포함된 경우 경고.
    • 예시 정규식: (?i)(INLINE|LAMBDA|DO_WHILE|SWITCH).*(Runtime\.exec|ProcessBuilder|subprocess)
  • 행위 기반: GraalVM HostAccess.ALL 혹은 allowAllAccess(true) 설정이 변경된 시점과, 이후 비정상적인 시스템 콜(/bin/sh, cmd.exe) 발생 로그를 Correlation.
  • WAF/IPS: 위 정규식을 활용한 HTTP 요청 차단 규칙 적용.

🛡️ 완화 방안

  1. 즉시 조치
    • 워크플로우 API에 대한 외부 접근을 차단하거나 IP 허용목록(IP allowlist)으로 제한합니다.
    • GraalVM 평가기 설정에서 HostAccess.ALL·allowAllAccess(true) 를 비활성화하고, 필요한 최소 권한만 부여하도록 재구성합니다.
  2. 근본 해결
    • Orkes Conductor를 3.30.2 이상 버전으로 업그레이드합니다(공급업체 패치 적용).
    • 기존 워크플로우 정의 중 Inline·Lambda 등 위험한 태스크 유형을 검토·제거하고, 안전한 스크립트 실행 환경(Sandbox)으로 마이그레이션합니다.
  3. 추가 방어
    • API 인증 강화를 위해 mTLS 또는 OAuth2 적용, 요청 레이트 제한 설정.
    • 보안 모니터링 체계에 위 탐지 규칙을 추가하고, 정기적인 취약점 스캔으로 유사한 평가기 오용 여부를 검증합니다.

⚖️ 위험도 / 우선순위

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

댓글(0)

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

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

로그인하기

불러오는 중…