🇰🇷 한글 설명
Concrete CMS 9.0.0부터 9.5.2 버전에서 그룹 폴더 이름을 적절히 검증하거나 인코딩하지 않아 발생하는 저장형 XSS 취약점입니다. 권한이 있는 사용자가 악성 스크립트가 포함된 폴더 이름을 저장하면, 관리자가 그룹 대시보드를 확인할 때 해당 스크립트가 실행되어 세션 및 토큰 탈취가 가능합니다.
💡 쉬운 설명
공격자가 폴더 이름에 몰래 악성 코드를 심어두면, 관리자가 그 폴더를 보는 순간 관리자의 권한을 훔칠 수 있는 보안 약점입니다. 이를 통해 공격자는 관리자처럼 행동하며 사이트를 마음대로 조작할 수 있습니다.
🇺🇸 원문 (English)
Concrete CMS 9.0.0 to 9.5.2 stored group folder names without sanitization and printed them unescaped on the Members > Groups dashboard page, resulting in stored cross-site scripting. The add and edit group-folder handlers stored the submitted folder name without neutralizing HTML, and the group search grid returned it without output encoding, so the Groups dashboard rendered the name as live markup. An authenticated user holding the Add Group Folder permission could store a script payload as a folder name that executed in the session of any administrator who viewed the Groups dashboard, enabling session and token theft and any action available in the administrator's context. The Concrete CMS security team gave this vulnerability a CVSS v4.0 score of 7.3 with vector CVSS:4.0/AV:N/AC:L/AT:P/PR:H/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N. Thanks Lý Chấn Hưng (hunglyvn) for reporting.
📍 영향받는 시스템
Concrete CMS 9.0.0 ~ 9.5.2
⚔️ 공격 벡터
권한을 가진 사용자가 악성 HTML/JavaScript가 포함된 그룹 폴더 이름을 생성하여 대시보드에 노출시킴
🛡️ 대응 방법
Concrete CMS를 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 9.0.0 이상 9.5.2 이하인지 확인하여 취약 여부를 판단합니다.
composer show concrete/concrete5 | grep -E 'versions'