🇰🇷 한글 설명
LaraDashboard 0.9.0부터 1.2.2까지의 버전은 미디어 업로드 시 SVG 파일 내용을 정제하지 않습니다. media.create 권한만 있는 인증된 사용자가 스크립트 태그를 포함한 악성 SVG를 업로드할 수 있으며, 관리자를 포함한 누군가 해당 파일을 열면 대시보드 컨텍스트에서 스크립트가 실행되어 세션 탈취와 관리자 계정 장악이 가능합니다.
💡 쉬운 설명
권한이 낮은 사용자가 그림 파일 형식(SVG)에 숨긴 악성 코드를 업로드할 수 있습니다. 관리자가 이 파일을 열면 관리자 권한이 탈취될 수 있습니다.
🇺🇸 원문 (English)
LaraDashboard versions 0.9.0 through 1.2.2 fail to sanitize SVG file content during media upload, allowing authenticated users with only the media.create permission to upload malicious SVG files containing script tags. When any user including administrators opens the stored SVG file served inline from the application origin, the embedded JavaScript executes in the dashboard context, enabling session hijacking and administrative account takeover.
📍 영향받는 시스템
LaraDashboard 0.9.0 ~ 1.2.2
⚔️ 공격 벡터
media.create 권한을 가진 사용자가 스크립트가 포함된 SVG를 업로드하고, 관리자가 이를 열면 자바스크립트가 실행되어 세션이 탈취됨
🛡️ 대응 방법
LaraDashboard를 1.2.3 이상 버전으로 업그레이드하고, SVG 업로드를 제한하거나 업로드된 SVG를 정제(스크립트 제거) 처리하며, SVG를 별도 도메인 또는 attachment 헤더로 제공
🔧 검증 코드
출력된 버전이 0.9.0~1.2.2 범위에 해당하면 취약하며, 1.2.3 이상이면 패치된 버전입니다.
composer show | grep -i laradashboard