CVE-2026-124424: AVideo AI 플러그인 경로 순회 취약점이란?

CVE-2026-124424 취약점은 AVideo AI 플러그인의 plugin/AI/receiveAsync.json.php가 자막 파일 경로를 만들 때 요청값을 정제하지 않고 그대로 써서 생긴 경로 순회(Path Traversal) 취약점입니다. 유효한 AI 토큰을 확보한 공격자는 이 문제로 웹 서버 사용자가 쓰기 가능한 *.vtt 경로에 원하는 내용의 파일을 쓰거나 기존 파일을 덮어쓸 수 있습니다. AVideo 29.7.0 이하를 운영 중이라면 즉시 점검 대상입니다.

취약점 개요와 식별자

CVE-2026-124424는 제한된 디렉터리에 대한 경로 제한 부적절, 즉 경로 순회 유형으로 분류된 취약점입니다. 이 문제는 WWBN AVideo의 AI 플러그인에서 사용자 입력이 자막 파일 경로 생성에 그대로 쓰이는 구조적 결함이며, WWBN 보안 알림 GHSA-v64v-r7qm-w5x4로 공개됐습니다. 영향 범위는 AVideo 29.7.0 이하로 제시됐고, VulnCheck 권고도 같은 범위를 전달하고 있습니다.

핵심 사실을 표로 먼저 정리해 둡니다.

구분 내용 근거
식별자 · 유형 CVE-2026-124424, 경로 순회(Path Traversal)
영향 버전 AVideo 29.7.0 이하
취약 지점 plugin/AI/receiveAsync.json.php
유입 입력값 type=translation 분기의 response[lang] 값
도달 조건 유효한 AI 토큰(만료되지 않으며 사용자·영상에 비결속)
공격 결과 웹 서버 사용자가 쓰기 가능한 *.vtt 경로에 파일 쓰기 또는 덮어쓰기
공개 PoC WWBN 보안 알림 GHSA-v64v-r7qm-w5x4에 포함

공격 경로: receiveAsync.json.php의 입력 처리 구조

유입 지점과 코드 경로

취약 지점은 plugin/AI/receiveAsync.json.php입니다. 유입은 type=translation 분기에서 일어납니다. 이 분기에서 요청의 response[lang] 값이 정제되지 않은 채 Ai_transcribe_responses::getVTTPaths()로 넘어가 자막 파일 경로가 만들어집니다. 외부 요청자가 제어할 수 있는 언어 값이 경로 구성 요소로 그대로 들어가는 셈입니다.

검증 부재 구조

알림에 따르면 이 파일은 bypassSameDomainCheck를 설정하고, 세션 또는 소유권 검증을 수행하지 않습니다. 요청값에 대한 출발점 검증과 경로 생성 직전의 입력 정제, 이 두 겹의 방어가 모두 비어 있는 상태에서 자막 경로가 만들어집니다. 이것이 이번 취약점의 공격 경로입니다.

도달 조건: AI 토큰의 특성

공격 성립의 필요 조건은 유효한 AI 토큰입니다. 제시된 근거에 따르면 이 토큰은 만료되지 않으며, 특정 사용자나 영상에 결속되지 않습니다. VulnCheck 권고는 유효한 AI 토큰 보유자 누구나 이 취약점에 도달 가능하다고 설명합니다.

이 특성은 운영 관점에서 중요합니다. 토큰이 만료되지 않고 사용자·영상에 결속되지 않는다면 한 번 발급된 토큰이 곧 접근 가능성으로 이어집니다. 그만큼 토큰 발급·회수 정책 자체가 방어선이 됩니다.

영향과 위험: 어디까지 쓸 수 있는가

검증된 공격 결과

공격자는 순회 문자열이 들어간 언어 값으로 웹 서버 사용자가 쓰기 가능한 *.vtt 경로에 공격자가 지정한 내용의 파일을 쓰거나 기존 파일을 덮어쓸 수 있습니다. 검증 환경에서 확인된 결과는 두 가지입니다. 첫째, 웹 루트에 공격자가 지정한 내용을 두는 웹 루트 파일 심기(webroot planting)입니다. 생성된 파일이 HTTP로 제공되는 것까지 확인됐습니다. 둘째, /tmp 경로에 대한 쓰기입니다.

공동 운영 환경에서의 위험

CVE 레코드는 웹 루트에 내용을 심는 것과 함께, 다른 사용자의 자막 파일을 덮어쓰는 시나리오를 명시합니다. 여러 제작자가 같은 인스턴스를 쓰는 환경이라면 자기 영상의 자막이 아니어도 *.vtt 경로에 쓰기가 닿을 수 있다는 점이 점검 대상입니다.

쓰기 범위의 경계

과도한 확대 해석은 금물입니다. 쓰기 범위는 두 조건에 묶여 있습니다. 웹 서버 사용자가 쓸 수 있는 위치여야 한다는 점, 그리고 대상이 *.vtt 경로라는 점입니다. 이번 근거는 임의 확장자 배치나 웹 서버 사용자 권한을 넘는 쓰기까지 뒷받침하지는 않습니다.

검증된 결과와 알려지지 않은 부분

공급업체 권고에는 공개 PoC가 포함돼 있습니다. 다만 수집된 자료에는 PoC의 코드나 실행 절차가 담겨 있지 않습니다. 그래서 본 글이 다루는 범위도 그 경계까지입니다. 실제 운영 환경에서의 악용 여부, 검증된 탐지 지표, 제3자의 독립 재현 검증 역시 확인되지 않았습니다. 확인된 사실과 미확인 사항의 경계를 표로 그어 뒀습니다.

구분 항목 상태 근거
검증 완료 웹 루트 내 파일 생성(webroot planting) 검증 환경에서 확인
검증 완료 웹 루트에 생성된 파일의 HTTP 제공 검증 환경에서 확인
검증 완료 /tmp 경로 쓰기 검증 환경에서 확인
미확인 실제 환경에서의 악용 여부 자료에서 확인되지 않음
미확인 검증된 탐지 지표 · 제3자 독립 재현 검증 자료에서 확인되지 않음
미확인 수정 배포 여부 · 수정 버전 수정 방향만 제시됨

수정 현황

수정 방향은 제시돼 있지만, 수정 배포 여부와 수정 버전은 이번 자료에서 확인되지 않았습니다. 수정 배포가 미확인인 상태가 완화 조치 자체가 없다는 뜻은 아니므로, 공급업체 알림 채널에서 후속 공지가 이어지는지 지켜보는 일이 남았습니다. CVSS 점수는 수집된 자료 어디에서도 언급되지 않았습니다. 등급 기반 우선순위 판단의 근거가 못 된다는 점도 짚어둡니다.

우선 점검 항목과 파일 관점 확인 방법

AVideo를 운영 중인 시스템이라면 다음 순서로 점검을 시작하면 됩니다.

  1. 버전 확인: 운영 중인 AVideo가 29.7.0 이하에 해당하는지 확인합니다.
  2. 대상 파일 점검: plugin/AI/receiveAsync.json.php의 존재 여부와 해당 엔드포인트에 대한 접근 상황을 점검합니다.
  3. AI 토큰 점검: 발급된 AI 토큰의 유효 상태, 만료 정책, 사용자·영상 결속 여부를 점검합니다. 만료되지도 결속되지도 않는 특성이 곧 도달 조건입니다.
  4. 파일 무결성 점검: 웹 루트와 /tmp를 포함해 웹 서버 사용자가 쓰기 가능한 경로에서 비정상 생성·변경된 *.vtt 파일이 있는지 확인합니다. 검증 환경에서 웹 루트 파일 심기와 /tmp 쓰기가 확인된 바 있습니다.
  5. 쓰기 권한 범위 점검: 웹 서버 사용자의 쓰기 권한이 실제로 어디까지 미치는지 따져봅니다. 공격 결과는 이 권한 범위 내 *.vtt 경로로 한정되기 때문입니다.

검증된 탐지 지표가 아직 확인되지 않은 만큼, 위와 같은 파일·권한 관점의 능동적 점검이 현재로서는 실효적인 확인 수단입니다.

대응 방향: 입력 검증과 토큰 통제

근본 원인이 response[lang] 값의 정제 부재이므로 대응의 중심은 입력 검증입니다. 해당 입력값이 경로 구성에 그대로 반영되지 않도록 막는 것이 우선입니다. 이 파일이 세션 또는 소유권 검증 없이 동작한다는 점까지 고려하면, 경로 생성 직전의 입력 정제와 파일 단위의 접근 통제가 함께 점검 대상입니다.

병행할 통제 수단은 토큰 관리입니다. 유효한 AI 토큰이 공격 도달 조건이고 보유자 누구나 도달 가능하다는 설명이 있으므로, 토큰을 필요 최소한으로 발급·회수하고 결속과 만료 정책을 점검하는 것이 위험을 줄이는 길입니다. 수정 배포 여부가 확인되지 않은 지금은 공급업체 알림 GHSA-v64v-r7qm-w5x4와 후속 권고를 꾸준히 모니터링하는 운영 체계를 갖추는 것으로 대응을 마무리합니다.

마무리

CVE-2026-124424는 정제되지 않은 response[lang] 값이 자막 경로 생성에 그대로 쓰이는 구조적 결함에서 비롯된 취약점입니다. 웹 루트 파일 심기와 /tmp 쓰기까지 검증됐습니다. 다만 그 범위는 웹 서버 사용자가 쓰기 가능한 *.vtt 경로로 한정되고, 실환경 악용 여부와 수정 버전은 아직 확인되지 않았습니다. 본 글은 2026년 11월 9일 기준 공개 자료를 정리한 것입니다. AVideo 29.7.0 이하 운영 환경이라면 버전·토큰·파일 무결성 점검부터 실행해 두고 공급업체 후속 공지를 지켜보는 것이 순서입니다.

댓글 남기기