본문으로 건너뛰기
TEN Brief 하루 열 건, 확인된 것만 2026.10.27 EN

This article is also available in English →

테크 · 4분 · 핫토픽

Wasmtime 취약점 패치 버전 — 36.0.19·48.0.7·49.0.4, 9.9점 샌드박스 탈출 두 건은 컴파일러에서 나왔다

The Bytecode Alliance published advisories on October 19, 2026 for two critical flaws in Wasmtime's Cranelift compiler, each rated CVSS 9.9, that could let a malicious WebAssembly module escape its sandbox. CVE-2026-115889 is a silent bit-packing overflow causing miscompilation on all architectures; CVE-2026-115893 makes very large br_table instructions jump to the wrong target on ARM64. Fixed versions are 36.0.19, 48.0.7 and 49.0.4. No exploitation has been reported. Wasmtime issued 29 advisories in three batches in October.

웹어셈블리 실행기 Wasmtime을 만드는 바이트코드 얼라이언스가 2026년 10월 19일 크레인리프트 컴파일러의 CVSS 9.9점 취약점 두 건을 공개했다. 조작된 웹어셈블리 모듈이 샌드박스를 벗어나 임의 코드를 실행할 수 있다. CVE-2026-115889는 모든 CPU 구조, CVE-2026-115893은 ARM64에 해당한다. 패치 버전은 36.0.19·48.0.7·49.0.4이며 실제 공격 보고는 없다

아침 햇살 드는 창가 책상에서 모니터 두 대로 작업하는 개발자의 뒷모습

3줄 요약

  • 취약점 — 크레인리프트 9.9점 두 건, 조작한 Wasm 모듈로 샌드박스 탈출 가능
  • 패치 — 36.0.19·48.0.7·49.0.4로 올리면 10월 권고 29건이 모두 해결
  • 영향 — 남이 올린 Wasm 코드를 돌리는 서버·플러그인 환경이 우선, 공격 보고는 없음

핵심 질문

Wasmtime 패치 버전
**36.0.19, 48.0.7, 49.0.4다.** | 사용 중인 계열 | 올릴 버전 | |---|---| | 36.x(장기지원) | 36.0.19 | | 37~48.x | 48.0.7 | | 49.x | 49.0.4 |
CVE-2026-115889
**크레인리프트 컴파일러의 비트 패킹 오버플로로 코드가 잘못 컴파일되는 취약점이다.** | 항목 | 내용 | |---|---| | 점수 | CVSS 9.9(치명) | | 구조 | 모든 CPU | | 영향 버전 | 36.0.19 미만, 37.0.0~43.0.0 미만 | | 패치 | 36.0.19(43.0.0 이상은 영향 없음) | | 권고 | GHSA-897f-g5gm-fmxm |
CVE-2026-115893
**ARM64에서 아주 큰 br_table 명령이 엉뚱한 주소로 점프하는 취약점이다.** | 항목 | 내용 | |---|---| | 점수 | CVSS 9.9(치명) | | 구조 | ARM64(aarch64)만 | | 조건 | 분기 대상 약 25만6천 개 이상 | | 패치 | 36.0.19·48.0.7·49.0.4 | | 권고 | GHSA-mghf-wjfp-p5xm |

이번 구멍은 상자의 벽이 아니라 상자를 짓는 기계에서 났다. 웹어셈블리(Wasm) 실행기 Wasmtime을 관리하는 바이트코드 얼라이언스가 2026년 10월 19일 CVSS 9.9점짜리 취약점 두 건을 공개했다. 두 건 모두 Wasm 코드를 기계어로 바꾸는 크레인리프트(Cranelift) 컴파일러에서 나왔다. 공격자가 조작한 Wasm 모듈을 올리면 컴파일러가 코드를 잘못 만들어, 모듈이 샌드박스 밖 메모리에 손을 대거나 원하는 코드로 점프할 수 있다.

결론부터: 36.0.19, 48.0.7, 49.0.4 중 자기 계열에 맞는 버전으로 올리면 이번 두 건을 포함해 10월에 나온 Wasmtime 권고 29건이 모두 해결된다. 실제 공격 보고는 아직 없다.

1. 내 버전은 영향을 받나

사용 중인 버전CVE-2026-115889(모든 CPU)CVE-2026-115893(ARM64)올릴 버전
36.0.18 이하영향영향36.0.19
37.0.0 ~ 42.x영향영향48.0.7
43.0.0 ~ 48.0.6영향 없음영향48.0.7
49.0.0 ~ 49.0.3영향 없음영향49.0.4
36.0.19 / 48.0.7 / 49.0.4해결해결—

x86 서버에서 43 이상을 쓰면 이번 9.9점 두 건 중 ARM64 건은 해당하지 않는다. 하지만 같은 날 함께 나온 중간·낮음 등급 권고 4건과 10월 14일·10월 2일 권고가 있어서 최신 패치로 올리는 것이 가장 단순하다. 아마존 그래비톤이나 애플 실리콘 같은 ARM64 위에서 돌린다면 CVE-2026-115893이 직접 해당한다.

2. 두 취약점은 어떻게 작동하나

항목CVE-2026-115889CVE-2026-115893
권고 번호GHSA-897f-g5gm-fmxmGHSA-mghf-wjfp-p5xm
위치크레인리프트 공통크레인리프트 ARM64 백엔드
원인내부 값 번호를 비트로 압축 저장하다 넘침(오버플로), 릴리스 빌드에선 조용히 지나감분기 대상이 약 25만6천 개 이상인 br_table 명령을 잘못된 조건 분기로 컴파일
결과잘못된 컴파일 → 타입 혼동 → 샌드박스 탈출 가능공격자가 정한 위치로 점프 → 임의 코드 실행
공격 조건아주 크거나 특수하게 만든 Wasm 함수를 컴파일시키기거대한 br_table을 넣은 모듈을 컴파일시키기
CVSS9.99.9

Wasm의 안전은 두 겹이다. 언어 규칙상 모듈은 자기 메모리 칸 밖을 볼 수 없고, 실행기는 그 규칙을 지키는 기계어를 만들어 낸다. 이번 두 건은 두 번째 겹, 즉 규칙을 기계어로 옮기는 단계의 실수다. 원본 코드는 규칙을 지켰는데 번역이 틀려서 벽에 구멍이 생긴다. 타입 혼동이 어떻게 메모리 접근으로 이어지는지는 「타입 혼동 취약점이란」에서 다뤘다.

점수가 10점이 아니라 9.9점인 것은 공격자가 '모듈을 올릴 수 있는 권한'을 가져야 하기 때문이다(권한 요구 낮음). CVSS 점수가 이렇게 갈리는 원리는 「CVSS란」에서 설명했다.

3. 누가 서둘러야 하나

사용 환경위험도이유
사용자·고객이 올린 Wasm을 실행하는 서버(플러그인, 엣지 함수, 서버리스)높음공격자가 모듈을 직접 넣을 수 있다
AI 에이전트가 만든 코드를 Wasm 샌드박스에서 돌리는 환경높음모델이 생성한 코드를 신뢰할 수 없다
자기 회사가 직접 만든 Wasm만 실행낮음악성 모듈이 들어올 통로가 작다
브라우저에서 웹페이지의 Wasm 실행해당 없음크롬·사파리·파이어폭스는 Wasmtime을 쓰지 않는다

Wasmtime은 '남의 코드를 안전하게 가둬 돌리는 상자'로 쓰인다. 그래서 위험은 누가 모듈을 넣을 수 있느냐로 갈린다. 패치가 당장 어렵다면 해커와이어 정리 기준으로 신뢰할 수 없는 Wasm을 컴파일하는 서비스를 따로 격리하고, CPU·메모리 제한을 걸어 두는 것이 임시 대책이다. 다만 근본 해결은 업데이트다.

4. 10월에만 권고 29건 — 세 번의 묶음

공개일권고 수가장 높은 등급패치 버전
10월 2일8건치명 1건(비동기 콜백 스택 버퍼 오버플로)36.0.17·48.0.4·49.0.2
10월 14일15건높음 1건(심볼릭 링크 이름 변경 시 파일시스템 샌드박스 탈출)36.0.18·48.0.6·49.0.3
10월 19일6건치명 2건(이번 크레인리프트 두 건)36.0.19·48.0.7·49.0.4

한 달에 세 번 묶음 패치가 나왔다. 10월 14일 묶음의 파일시스템 탈출 건은 별개 문제다. 웹어셈블리 시스템 인터페이스(WASI)가 허락한 폴더 밖 파일에 손댈 수 있는 취약점이었다. 같은 달 노드JS(「Node2Shell」)와 PHP(「PHP2Shell 취약점 패치 버전」)에서도 원격 코드 실행 취약점이 나왔다. 실행 환경 전반의 패치 주기가 빨라지고 있다.

5. 남은 것과 확인되지 않은 것

  • 실제 공격: 보고된 것은 없다. 10월 26일 기준 CISA KEV 목록에 없다.
  • 24.x 계열: 이번 권고 패치 목록에 없다. 24.x를 쓰고 있다면 지원 상태부터 확인해야 한다.
  • 취약점 번호 혼선: 10월 14일 파일시스템 탈출 건에 대해 일부 취약점 데이터베이스가 다른 CVE 번호와 패치 버전을 적었다. 깃허브 권고 원문을 기준으로 삼는 것이 안전하다.
  • 웹어셈블리 자체: 왜 Wasm이 서버와 AI 플러그인의 '가두는 상자'로 쓰이는지는 같은 날 「웹어셈블리(Wasm)란」에서 정리했다.

출처

  1. 깃허브 바이트코드 얼라이언스 Wasmtime — GHSA-897f-g5gm-fmxm(CVE-2026-115889) 보안 권고 (2026-10-19)
  2. 깃허브 바이트코드 얼라이언스 Wasmtime — GHSA-mghf-wjfp-p5xm(CVE-2026-115893) 보안 권고 (2026-10-19)
  3. 더 해커 뉴스 — Two Critical Wasmtime Flaws Could Let Malicious WebAssembly Modules Escape Sandboxes (2026-10-26)
  4. 더 해커와이어 — CVE-2026-115889: Wasmtime is a runtime for WebAssembly
  5. 스트릭스 — CVE-2026-115893

검증

발행
최종 수정
교차 확인
서로 다른 출처 5건을 대조했다.
미검증
  • 두 취약점의 실제 공격 사례는 보고되지 않았다. 10월 26일 기준 미국 CISA의 '실제 악용 취약점(KEV)' 목록에 없다.
  • 10월 14일 공개된 파일시스템 샌드박스 탈출 취약점(GHSA-m9f7-9w4p-gv38)은 일부 데이터베이스가 CVE-2026-115392로 묶어 24.0.13 등 다른 패치 버전을 적었다. 깃허브 권고의 패치 버전은 36.0.18·48.0.6·49.0.3이다.
  • 24.x 계열은 10월 권고의 패치 목록에 없다. 지원 종료 여부는 프로젝트 공지로 확인이 필요하다.
  • Wasmtime을 쓰는 상용 서비스가 이번 취약점에 실제로 노출됐는지는 각 회사가 밝히지 않았다.
작성
발행 전 사람이 검수했다. 수집·교차확인·재작성 절차는 편집 원칙.

하루 열 건, 아침에 한 번

3줄 요약만 보내고 전문은 사이트에서 읽습니다. 하단에서 한 번의 클릭으로 언제든 해지할 수 있습니다.

관련