마리모의 심각한 원격코드실행 취약점: 공개 PoC 없이 9시간 만에 악성 공격 발생
2026년 4월 8일 발표된 보안 권고 이후 단 9시간 41분 만에, 마리모(0.23.0 이전 버전)의 심각한 CVE-2026-39987(CVSS 9.3) 취약점이 실제 공격으로 활용됐다. 이 취약점은 웹소켓을 통해 비인가된 루트 쉘 접근을 허용하며, 공격자는 공개된 PoC 없이 기술 설명만으로도 악성 코드를 제작해 허니팟에서 3분 내로 시크릿 데이터를 유출했다.
문제는 /terminal/ws 엔드포인트에 존재한다. 이 경로는 /ws와 달리 validate_auth() 호출이 누락되어 있으며, 간단한 웹소켓 핸드셰이크만으로 프로세스 수준 권한을 가진 PTY 쉘을 제공한다. 기본 도커 이미지에서는 루트 권한까지 확보 가능하며, .env 파일에 저장된 오픈AI, 안트로픽, 구글 지미니 API 키도 노출된다.
취약점 기술적 세부 사항
마리모는 지속적인 연결을 위해 웹소켓을 사용한다. /ws는 반응형 UI 및 노트북 셀을 처리하고, /terminal/ws는 내장 터미널을 운영한다. 후자의 엔드포인트는 단지 터미널 모드 플래그와 플랫폼 PTY 지원 여부만 확인할 뿐, 세션 토큰 인증은 전혀 수행하지 않는다.
네트워크 계층에서 자동으로 유효성 검사가 이루어지기 때문에, 원격 클라이언트는 누구나 연결해 서버 권한으로 명령을 실행할 수 있다. GHSA-2679-6MX9-H9XC는 이를 CWE-306(핵심 기능에 대한 인증 누락)로 분류했다. PR #9098에서 추가된 validate_auth() 체크가 해당 문제를 해결했다.
도커 배포 환경은 위험을 더욱 증폭시킨다. 프로세스는 루트로 실행되며, 시크릿 정보는 .env 또는 ~/.aws/credentials에 저장된다. 이로 인해 LLM 요금, 모델, 데이터셋에 완전히 접근 가능하게 된다.
공격 일정 및 감지 신호
- 00:00: 보안 권고 발표
- 09:41: 허니팟(시큐리티 허니팟)에서
/terminal/ws에 첫 번째 접속 기록 - 3분 미만: 파일 시스템 탐색,
.env, SSH 키, 클라우드 설정 파일 읽기 - 약 1시간 후: 지속성 확인을 위한 재접속
채굴기나 백도어는 배치되지 않았으며, 이는 실시간 공격자에 의한 표적 공격임을 시사한다. 네이버, 캐디 등 프록시의 웹소켓 트래픽을 로깅해야 한다. 주의할 점: 2026년 4월 8일 이후 외부 IP에서 /terminal/ws에 접속한 경우.
흔한 시크릿 발견 경로:
.env~/.ssh/id_rsa,~/.ssh/id_ed25519~/.aws/credentials~/.config/gcloud/~/.bash_history
AI 도구에서의 RCE 패턴
마리모(깃허브 스타 2만 개)는 스탠포드, 모질라 AI, 오픈AI, 블랙록 등에서 널리 사용되고 있다. 도커, 허깅페이스 스페이스, 코어웨이브 등 다양한 환경에 배포되어 있다. 최근 몇 달간 세 번째 RCE 사례다.
- Langflow CVE-2026-33017 — 20시간 내 악성 코드 공개
- Flowise CVE-2025-59528 (CVSS 10.0) — 패치 후에도 즉시 공격 발생
- 마리모 CVE-2026-39987
AI 도구체인(노트북, 파이프라인)은 종종 개발용 도구로 간주되며, 결과적으로 약한 세그멘테이션, 부족한 모니터링, 과도한 권한 부여가 발생한다. 현실은 모델, 데이터, 요금 시스템에 생산 환경 접근이 가능하다는 것이다.
보호 조치 및 감사 절차
즉시 업데이트하세요:
marimo --version을 실행해 0.23.0 이상인지 확인- 도커 사용 시, 비루트 사용자(
USER)로 이미지 재빌드
4월 8일 이후 포트가 노출된 경우, 이미 침입된 것으로 간주하고 다음 조치를 취하세요:
- 시크릿 회전: LLM 키, 클라우드 자격 증명, SSH 키
- 오픈AI/안트로픽/구글 요금 내역을 확인해 알 수 없는 요청 여부 감사
ss -tlnp | grep LISTEN으로 마리모, 줄리퍼, 플로이즈가 0.0.0.0에서 리슨 중인지 확인marimo edit --host 127.0.0.1로 시작하고, nginx 인증 또는 캐디 OAuth2를 통한 역프록시 보호 적용- GitHub 보안 권고, osv.dev, CISA KEV를 통해 최신 보안 정보 모니터링
핵심 요약
- 공격 속도: 권고 발표 후 9시간 41분 만에 RCE 발생 — 문서화된 취약점에 대한 일반적인 속도
- 기본 루트 접근: 도커 마리모는 명시적 사용자 커스터마이징이 필요
- 목표는 시크릿: LLM 키가 포함된
.env파일이 가장 큰 타겟 - AI-RCE 추세: 세 번째 연속 RCE — 생산 환경 수준의 보안 관행 필요성 강조
- 감지 방법: 프록시에서
/terminal/ws로그 모니터링; LLM 사용 패턴 감사
— Editorial Team
아직 댓글이 없습니다.