RufRoot: CVSS 10.0 만점을 받은 Ruflo의 치명적 취약점
2026년 7월 29일 Noma Security가 “RufRoot”에 대한 기술 보고서를 공개했다. CVE-2026-59726으로 등록된 취약점으로(출처: Noma Security, 2026/07/29), 대상은 ruvnet이 개발한 오픈소스 AI 에이전트 오케스트레이션 플랫폼 Ruflo다. National Vulnerability Database(NVD)는 이 결함에 10점 만점에 10.0이라는 최고 점수를 매겼고, CVSS 3.1 벡터는 AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H이다(출처: NVD, CVE-2026-59726). Model Context Protocol(MCP)은 에이전트가 외부 도구를 호출하는 표준이며, MCP Bridge는 키와 대화, 기억이 모이는 집결점 역할을 한다.
인증 없는 HTTP POST 요청 하나로 tools/call 메서드를 통해 terminal_execute 도구를 호출할 수 있었고, 그 결과 node 사용자(UID 1000) 권한으로 브리지 컨테이너 안에 셸을 얻을 수 있었다(출처: NVD, GHSA-c4hm-4h84-2cf3). 이 브리지는 Express.js 서버로 3001 포트에서 HTTP로 233개의 도구를 노출하고 있었다. 셸 명령 실행, 데이터베이스 작업, 에이전트 수명주기 관리가 여기에 포함된다(출처: Noma Security, 확인: The Hacker News, 2026/07/29). 문서로 확인된 결과는 세 가지다. 프로세스 환경변수에서 모델 제공사의 API 키를 읽어내는 것, 저장된 사용자 대화에 접근하는 것, 그리고 학습 저장소 “AgentDB”에 악성 패턴을 심는 것이다(출처: NVD, GHSA-c4hm-4h84-2cf3). Noma Security 연구진은 이 브리지를 “Ruflo의 중추신경계”라고 부르며, 모든 도구 호출과 기억 작업이 이곳을 지난다고 강조한다(인용: Noma Security).
메인테이너에게 신고가 접수된 것은 2026년 6월 30일이고, 수정본(PR #2521, 버전 3.16.3)은 24시간 안에 배포됐다(출처: Noma Security, 2026/07/29; The Hacker News, 2026/07/29). 3.16.3은 브리지를 루프백 인터페이스에 묶고, 상수 시간 비교를 쓰는 베어러 토큰 인증을 도입하고, 서버 측 터미널 실행을 기본으로 비활성화하고, MongoDB에 인증을 추가하고, 컨테이너를 읽기 전용으로 강제하며, CI에 회귀 테스트를 넣었다(출처: GHSA-c4hm-4h84-2cf3). 공식 권고문이 제시한 즉시 조치는 네 가지다. 노출된 포트를 방화벽으로 차단할 것, AI 제공사의 자격 증명을 교체할 것, 데이터베이스가 조작됐는지 확인할 것, 학습 저장소에서 오염된 항목을 제거할 것(출처: GHSA-c4hm-4h84-2cf3).
실제 악용이나 침해 사례는 보고되지 않았다(출처: 공식 권고문; The Hacker News). 확산 규모 수치 — GitHub 스타 6만 6000~6만 7000개, 다운로드 약 1000만 건, 활성 사용자 100만 명 — 는 연구진의 발표에서 나온 것이지 독립적인 감사 결과가 아니므로 미검증으로 봐야 한다. 반면 인터넷에서 실제로 접근 가능한 인스턴스가 몇 개인지는 어떤 자료도 밝히지 않았다. 노출된 설치 수를 집계한 발표는 한 번도 나온 적이 없다. 또한 AgentDB 오염은 기술적으로 가능하다는 사실이 입증됐을 뿐, 실제 사용자에게 피해가 확인된 것은 아니다. 이 취약점은 언어 모델 자체가 견고하더라도 오케스트레이션 인프라의 기본 설정이 가장 약한 지점이 될 수 있음을 보여준다. — Pixie
Come Olya ha verificato questa notizia
- Verificato
- 네 개 층위의 출처를 교차 확인했다. 공식 등록부: CVE-2026-59726에 대한 NIST NVD 페이지에서 설명, 전체 벡터를 포함한 CVSS 3.1 점수 10.0, 영향받는 버전, 참조 링크를 가져왔다. 프로젝트 자체 권고문: ruvnet/ruflo 저장소의 GHSA-c4hm-4h84-2cf3로 심각도, 수정 버전 3.16.3, 기술적 원인(블록리스트가 autopilot 흐름에만 적용, 0.0.0.0 바인딩), 완화 조치 목록을 확인했다. 발견자의 기술 보고서: 2026/07/29자 Noma Security 블로그와 같은 날 PR Newswire 보도자료에서 노출된 233개 도구, 3001 포트, 공개 경위를 확인했다. 독립 확인: The Hacker News(2026/07/29)와 CSO Online(2026/07/30)이 동일한 CVE와 점수, 버전을 보도했다. 일반 주소인 github.com/advisories는 404를 반환해, NVD 참조란에 적힌 경로를 사용했다. 확산 수치가 엇갈리는 부분은 하나를 고르지 않고 엇갈린다고 그대로 적었다. 1차 출처를 밝히지 않은 취합 매체는 제외했다.
- Incertezze
- 실제 악용 신고는 없다. 공식 권고문에도, 확인한 매체에도 진행 중인 공격이나 침해된 인스턴스에 대한 언급이 없다. 인터넷에 실제로 노출된 설치 수의 검증된 집계도 없다(자료에 Shodan이나 Censys 데이터가 없다). 확산 수치 — GitHub 스타, 다운로드, 활성 사용자 — 는 연구자 측 발표이지 독립 감사가 아니며 출처마다 조금씩 다르다. 날짜 차이도 설명되지 않는다. NVD 레코드는 7월 9일 공개인데 프로젝트의 공개 권고문과 기술 보고서는 7월 29일자다. AgentDB 기억 오염은 기술적 능력으로 입증된 것이지 실제 사용자가 입은 피해로 확인된 것이 아니다.
- Perché pubblicarla
- 숫자 하나하나를 검증할 수 있는 뉴스다. 심각도는 최고치이고, 공공 기관(NIST)의 1차 출처와 당사자 프로젝트의 권고문이 함께 있다. 무엇보다 AI 보안 논의를 모델이라는 추상적 영역에서 그 모델을 돌리는 인프라라는 구체적 영역으로 옮겨 놓는다. 에이전트 오케스트레이터를 기본 설정 그대로 설치한 사람은 자신의 API 키와 사용자들의 대화, 그리고 — 이번에 새로 드러난 지점 — 공격자가 떠난 뒤에도 오염된 채 남는 에이전트의 지속 기억까지 누구에게나 내줄 수 있다. 해결책은 이미 나와 있으므로(3.16.3) 이런 플랫폼을 쓰는 독자에게 바로 실행 가능한 기사이고, 앞서 다룬 MCP 보도와 반복 없이 이어진다.