Cal.com NextAuth 세션 업데이트 로직 결함을 통한 계정 탈취 및 인증 우회 취약점 (CVE-2026-23478)
실무자 핵심 요약 (Executive Summary)
SECOPS ASSESSMENTCal.com 버전 3.1.6 이상 6.0.7 미만 환경
공격자가 세션 업데이트 API를 통해 임의의 대상 이메일 주소를 주입함으로써, 패스워드나 추가 인증 없이 타인 계정의 완전한 권한을 획득할 수 있습니다
즉시 Cal.com 패치 버전인 6.0.7 이상으로 업그레이드를 수행하십시오
영향받는 제품 및 버전 범위
권장 패치 및 임시 완화(Workaround) 가이드
패치 및 우회 명령어1. 공식 보안 패치 및 버전 업그레이드 명령어
Cal.com 개발사에서 배포한 공식 보안 패치가 적용된 6.0.7 이상 버전으로 즉시 업그레이드를 진행하십시오.
# Cal.com 리포지토리 디렉토리로 이동
cd /path/to/calcom
# 최신 소스코드 가져오기 및 6.0.7 이상 태그로 체크아웃
git fetch --tags
git checkout v6.0.7
# 의존성 설치 및 빌드 수행
yarn install --frozen-lockfile
yarn build
# 서비스 재시작 (PM2 기준 예시)
pm2 restart calcom2. 패치 전 임시 완화(Workaround) 및 접근 제어 설정
즉각적인 패치가 어려운 경우, 리버스 프록시(Nginx 등) 레벨에서 NextAuth의 세션 업데이트 엔드포인트(/api/auth/session 또는 /api/auth/_log)로 향하는 비정상적인 POST/PUT 요청을 차단하거나, WAF 규칙을 적용하여 외부로부터의 세션 조작 시도를 완화할 수 있습니다.
# Nginx 리버스 프록시 설정 예시
server {
listen 80;
server_name cal.yourdomain.com;
location /api/auth/session {
limit_except GET {
# 특정 내부 IP 대역만 세션 업데이트 허용하고 외부 요청은 차단
allow 127.0.0.1;
deny all;
}
proxy_pass http://localhost:3000;
}
}3. 침해 흔적(IoC) 및 로그·버전 점검 스크립트
현재 구동 중인 Cal.com의 버전을 확인하고, 애플리케이션 로그에서 session.update 관련 비정상적인 페이로드 전송 흔적을 탐지하는 스크립트입니다.
# 1. package.json을 통한 현재 설치 버전 확인
cat /path/to/calcom/package.json | grep '"version"'
# 2. 애플리케이션 로그에서 session update API 호출 이력 및 이메일 변경 패턴 검색
# (로그 포맷에 따라 키워드를 조정하여 사용하십시오)
grep -i -E 'session.*update|/api/auth/session' /var/log/calcom/*.log코드 수정 전에도 가상 패치(Virtual Patching)로 웹 공격을 즉시 차단하세요
서버 재시작이나 긴급 패치가 어려운 운영 환경이라면 클라우드 WAF 관리형 룰셋을 활성화하여 SQLi, RCE, XSS 익스플로잇 페이로드를 엣지에서 1분 만에 차단할 수 있습니다.
취약점 발생 원리 및 공격 메커니즘
1. 취약점 개요 및 발생 원인 (Root Cause)
본 취약점(CVE-2026-23478)은 오픈소스 일정 예약 플랫폼인 Cal.com의 NextAuth.js 구현부 내 커스텀 JWT 콜백(Custom JWT Callback) 로직 결함으로 인해 발생합니다. NextAuth의 session.update() 메서드가 호출될 때, 클라이언트가 제공한 입력값에 대한 서버 측의 불충분한 검증(CWE-602) 및 권한 부여 우회(CWE-639) 취약점이 결합되어 있습니다. 서버가 세션 토큰을 갱신하는 과정에서 클라이언트가 전송한 이메일 주소를 신뢰하여 JWT 페이로드를 재작성함으로써 신원 검증 메커니즘이 완전히 무력화됩니다.
2. 공격 메커니즘 및 익스플로잇 시나리오
공격자는 일반 권한으로 로그인한 후, 브라우저 콘솔 또는 API 요청을 통해 NextAuth 클라이언트의 update() 함수를 호출합니다. 이때 요청 바디에 피해자의 이메일 주소({ email: 'victim@target-domain.com' })를 인자로 전달합니다. Cal.com의 취약한 커스텀 JWT 콜백은 이 입력값을 검증 없이 수용하여, JWT 내부의 사용자 식별자 및 이메일 정보를 피해자의 정보로 업데이트합니다. 이후 발급되는 모든 세션 쿠키는 피해자의 계정으로 매핑되어, 공격자는 어떠한 자격증명(Credential) 없이도 대상 계정에 대한 완전한 관리자 또는 사용자 권한을 획득하게 됩니다.
3. 비즈니스 및 인프라 파급 영향
이 취약점은 CVSS 9.8의 치명적(Critical) 등급으로 평가되었습니다. 공격자가 관리자 계정을 탈취할 경우, 플랫폼 내에 등록된 모든 사용자의 일정, 개인정보, 연동된 서드파티 API 키(Google Calendar, Zoom 등) 및 화상회의 링크를 탈취하거나 조작할 수 있습니다. 이는 심각한 데이터 유출 사고로 이어질 수 있으며, 비즈니스 신뢰도에 치명적인 타격을 입힙니다.
공식 보안 권고문 및 참조 링크
Cal.com is open-source scheduling software. From 3.1.6 to before 6.0.7, there is a vulnerability in a custom NextAuth JWT callback that allows attackers to gain full authenticated access to any user's account by supplying a target email address via session.update(). This vulnerability is fixed in 6.0.7.
자주 묻는 실무 질문 (FAQ — CVE-2026-23478)
FAQQ1. CVE-2026-23478 취약점의 위험도와 실제 악용 가능성은 어느 정도입니까?
CVE-2026-23478의 기본 점수는 CVSS 9.8 (CRITICAL)이며, 향후 30일 내 실제 악용 확률을 나타내는 EPSS 점수는 0.5%입니다. 외부 네트워크 노출 여부에 따라 선제적인 패치 및 접근 제어가 권장됩니다.
Q2. CVE-2026-23478에 영향을 받는 벤더와 제품은 무엇입니까?
주요 영향 벤더는 calcom이며, 대상 컴포넌트는 cal.com입니다. 상세 영향 범위: Cal.com 버전 3.1.6 이상 6.0.7 미만 전체 (6.0.7 버전에서 수정됨)
Q3. 서버 재기동이나 정규 패치 전 즉시 적용할 수 있는 완화 조치(Workaround)는 무엇입니까?
[권장 조치] 즉시 Cal.com 패치 버전인 6.0.7 이상으로 업그레이드를 수행하십시오 본문의 패치 및 우회 명령어 섹션과 자가 점검 체크리스트를 참고하여 외부 노출 포트를 차단하거나 WAF 탐지 규칙을 선적용하십시오.
CVE-2026-23478 사내 보안 패치 공지문 · CISO 경영진 보고서 초안 자동 생성
클릭 한 번으로 사내 이메일·노션·결재 문서에 바로 붙여넣을 수 있는 공식 보고서 양식을 생성합니다.
🔗 함께 점검해야 할 동일 벤더·스택 연관 취약점 (calcom)
동일 카테고리 전체 보기 →Langflow /api/v1/responses IDOR 취약점을 통한 타 사용자 워크플로우 원격 실행 취약점 (CVE-2026-55255)
[영향 대상] Langflow 1.9.1 미만 버전
IXP Manager API 키 관리 취약점(IDOR)을 통한 타 사용자 권한 탈취 보안 권고 (CVE-2026-63338)
[영향 대상] IXP Manager 7.3.0 미만 버전을 사용하는 모든 인터넷 교환 지점(IXP) 관리 시스템
Nexterm 1.2.2-BETA 이하 버전 세션 라이프사이클 경로 권한 검증 누락 취약점 (CVE-2026-120200)
[영향 대상] Nexterm 1.2.2-BETA 이하 버전을 사용하는 모든 인프라 환경
YITH WooCommerce Product Add-Ons 인증 우회 취약점 보안 권고 (CVE-2026-107868)
[영향 대상] YITH WooCommerce Product Add-Ons 플러그인 4.34.0 이하 버전
일간 취약점 브리핑 및 긴급 Zero-Day 경보 구독
보안 실무자와 인프라·백엔드 엔지니어를 위해 매일 아침 주요 취약점과 패치 우선순위를 요약해 발송합니다.