🇰🇷 한글 설명
October CMS 3.7.14 및 4.1.10 이전 버전의 백엔드 에디터 설정에서 Markup Classes 필드가 CSS 클래스명으로 유효한 문자만 허용하도록 입력값을 정제하지 않아 저장형 XSS가 발생합니다. 악성 값이 Froala 에디터 드롭다운에 그대로 렌더링되어, 에디터를 여는 사용자의 브라우저에서 자바스크립트가 실행될 수 있습니다.
💡 쉬운 설명
관리자 화면의 에디터 스타일 설정에 악성 코드를 넣어두면, 다른 사용자가 글을 편집할 때 그 코드가 실행될 수 있습니다. 특히 최고 관리자가 편집 화면을 열면 권한이 탈취될 위험이 있습니다.
🇺🇸 원문 (English)
October is a Content Management System (CMS) and web platform. Versions prior to 3.7.14 and 4.1.10 contain a Stored Cross-Site Scripting (XSS) vulnerability in the Backend Editor Settings. The Markup Classes fields (used for paragraph styles, inline styles, table styles, etc.) did not sanitize input to valid CSS class name characters. Malicious values were rendered unsanitized in Froala editor dropdown menus, allowing JavaScript execution when any user opened a RichEditor. Exploitation could lead to privilege escalation if a superuser opens any RichEditor during routine content editing (e.g., editing a blog post), and requires authenticated backend access with editor settings permissions. This issue has been fixed in versions 3.7.14 and 4.1.10. To workaround this issue, restrict editor settings permissions to fully trusted administrators only
📍 영향받는 시스템
October CMS 3.7.14 미만 및 4.1.10 미만 버전
⚔️ 공격 벡터
편집 설정 권한을 가진 인증된 백엔드 사용자가 Markup Classes 필드에 악성 스크립트를 저장하고, 피해자(특히 슈퍼유저)가 RichEditor를 열면 실행됨
🛡️ 대응 방법
3.7.14 또는 4.1.10 이상으로 업그레이드하고, 임시 조치로 에디터 설정 권한을 완전히 신뢰하는 관리자에게만 부여
🔧 검증 코드
출력된 버전이 3.7.14 이상(3.x 계열) 또는 4.1.10 이상(4.x 계열)이면 패치된 것이고, 그보다 낮으면 취약한 상태입니다.
composer show october/system 2>/dev/null | grep -E '^versions'