🇰🇷 한글 설명
Kunstmaan CMS의 FileHandler 클래스에서 확장자 검사 시 대소문자를 구분하는 취약점이 존재합니다. 인증된 백엔드 사용자가 대소문자가 혼합된 실행 파일 확장자를 업로드하면 블랙리스트 검사를 우회하여 웹 디렉토리에 실행 가능한 파일로 저장될 수 있습니다.
💡 쉬운 설명
파일을 올릴 때 금지된 확장자인지 확인하는 과정에서 대소문자를 제대로 구분하지 못하는 허점이 있습니다. 이를 이용해 공격자는 차단을 피해 악성 파일을 서버에 올리고 실행시킬 수 있습니다.
🇺🇸 원문 (English)
Kunstmaan CMS is an open source content management system based on the Symfony framework. Prior to 7.3.2, src/Kunstmaan/MediaBundle/Helper/File/FileHandler.php performs the blacklisted_extensions check case-sensitively in FileHandler::getFilePath and lowercases the stored extension afterward. An authenticated backend user with media access can upload a mixed-case executable extension such as PHP that bypasses the check and is stored in the web-accessible media directory with an executable lowercase extension. The default blacklist also omits several server-executable extension types, allowing the same code-execution impact where the web server executes uploaded files. This issue is fixed in version 7.3.2.
📍 영향받는 시스템
Kunstmaan CMS 7.3.2 미만 버전
⚔️ 공격 벡터
인증된 사용자가 대소문자가 혼합된 확장자(예: .PhP)를 사용하여 악성 파일을 업로드함
🛡️ 대응 방법
Kunstmaan CMS를 최신 버전인 7.3.2 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 정보가 7.3.2 미만인지 확인하여 취약 여부를 판단합니다.
composer show kunstmaan/cms | grep 'versions'