2. CVE 분석

[CVE-2025-69771] - asbplayer Chrome Extension XSS

Reve_ 2026. 2. 25. 22:20

1. 취약점 개요 (Overview)

  • CVE ID : CVE-2025-69771
  • 소프트웨어명 : asbplayer (Chrome Extension)
  • 저장소 링크 : https://github.com/killergerbah/asbplayer
  • 영향 받는 버전 : <= 1.14.0
  • 취약점 유형 : Cross-Site Scripting (XSS)
  • 관련된 파일 및 함수 : subtitle-reader.ts (_filterText, _decodeHTML functions)

2. 상세 설명 (Description)

asbplayer 크롬 확장프로그램의 자막 로딩 기능에서 크로스 사이트 스크립팅(XSS) 취약점이 발견되었습니다.

이 취약점은 _filterText, _decodeHTML 함수에서 자막 텍스트를 파싱할 때 발생합니다. 사용자가 악의적인 스크립트가 삽입된 자막 파일(.srt)을 업로드할 경우, 자막에 포함된 스크립트가 적절히 필터링되지 않고 렌더링되어 실행됩니다. 이로 인해 공격자는 동일 출처(Same-Origin) 내에서 임의의 요청을 보낼 수 있게 됩니다.

3. 공격 시나리오 및 PoC (Proof of Concept)

악성 자바스크립트 페이로드가 포함된 .srt 파일을 생성하여 asbplayer에 로드하면 스크립트가 실행됩니다. 아래는 취약점을 증명하기 위한 파일입니다.

  • Payload_1 (exploit.srt) : <script><button onmouseover="alert('XSS_1')">XSS Button!</button></script>
1
00:00:00,300 --> 00:00:04,500
[asbplayer XSS CASE_1]
<script><button onmouseover="alert('XSS_1')">XSS Button!</button></script>

4. 위험도 및 영향 (Impact)

asbplayer는 주로 스트리밍 서비스 위에서 동작하는 확장프로그램입니다. 이 취약점을 통해 악성 자막이 로드되면, 스크립트가 해당 스트리밍 사이트의 컨텍스트(Origin)에서 실행됩니다.

따라서 공격자는 피해자의 활성화된 세션을 탈취하거나, 백그라운드에서 임의의 API 요청을 보내어 민감한 계정 정보를 유출시킬 수 있는 심각한 보안 위협을 초래합니다.

5. 해결 방안 (Remediation)

확장프로그램 내에서 HTML 태그가 DOM에 삽입되기 전에 엄격하게 이스케이프(Escape) 처리하거나, DOMPurify와 같은 검증된 라이브러리를 사용하여 악성 입력값을 필터링(Sanitization)해야 합니다.