🔍 CVE-2026-8197

4.8
CVSS Score
MEDIUM
2026-05-21
2026-07-23 16:10
✅ 완료

🇰🇷 한글 설명

Concrete CMS 9.5.0 이하에서 OAuth 연동 이름이 HTML 이스케이프 처리 없이 렌더링되는 저장된 XSS 취약점입니다. 관리자 권한의 공격자가 OAuth 이름 필드에 악성 JavaScript를 삽입하여 사용자 로그인 정보를 탈취할 수 있습니다.

💡 쉬운 설명

Concrete CMS의 OAuth 설정 화면에서 관리자가 입력한 이름에 숨겨진 악성 코드를 실행시킬 수 있습니다. 이를 통해 사용자가 로그인할 때 입력한 개인정보(아이디, 비밀번호)를 도둑맞을 수 있습니다.

🇺🇸 원문 (English)

Concrete CMS 9.5.0 and below is vulnerable to Stored XSS via OAuth integration name. The OAuth authorize template renders the integration name (admin-controlled) through Concrete's t() translation helper as a sprintf-style format. The <strong>...</strong> wrap is built by PHP string interpolation before t() runs, so the integration name lands in the translated output as raw HTML. A rogue admin could potentially snoop on login submissions.The Concrete CMS security team gave this vulnerability a CVSS v.4.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 Yonatan Drori (Tenzai) for reporting.

📍 영향받는 시스템

Concrete CMS 9.5.0 이하 모든 버전

⚔️ 공격 벡터

관리자 계정으로 OAuth 통합 이름 설정 시 JavaScript 페이로드를 삽입하여 로그인 페이지에서 사용자 입력 데이터를 탈취

🛡️ 대응 방법

Concrete CMS를 9.5.1 이상으로 업데이트하거나 HTML 출력 함수에서 특수문자 이스케이프 처리 적용

🔧 검증 코드

VERSION 파일에서 버전이 9.5.0 이하면 VULNERABLE 출력, 9.5.1 이상이거나 파일 없으면 Not vulnerable 출력

Shell / Script
cat /var/www/html/concrete/VERSION 2>/dev/null | grep -E '^[0-8]\.|^9\.[0-5]\.' && echo 'VULNERABLE' || echo 'Not vulnerable or not installed'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N

💻 영향받는 소프트웨어

PHP