🇰🇷 한글 설명
Mantis Bug Tracker 2.28.1 이하 버전에서 발생하는 보안 취약점으로, 기존의 XSS 또는 HTML 삽입 취약점이 있을 경우 공격자가 조작된 첨부 파일을 업로드하여 콘텐츠 보안 정책(CSP)을 우회할 수 있습니다. 공격자가 업로드한 파일이 PHP finfo에 의해 유효한 JavaScript MIME 타입으로 인식되면, 브라우저에서 스크립트가 실행될 수 있습니다.
💡 쉬운 설명
해커가 특수하게 만든 파일을 게시판에 올리면, 보안 규칙을 피해 웹사이트에서 악성 코드가 실행될 수 있는 문제입니다. 이로 인해 사용자의 정보를 훔치거나 웹사이트를 마음대로 조작할 위험이 있습니다.
🇺🇸 원문 (English)
Mantis Bug Tracker (MantisBT) is an open source issue tracker. In versions 2.28.1 and below, given any pre-existing XSS / HTML injection vulnerability, an attacker can bypass the Content Security Policy's script-src directive by uploading a crafted attachment to any issue that, when accessed via the file_download.php link, will be downloaded with a valid JavaScript MIME type resulting in script execution. The uploaded payload must be sniffed as a valid JavaScript MIME type by PHP finfo (see file_create_finfo() API function). Non-JavaScript MIME types will not get imported in a <script> tag by the browser, due to response header X-Content-Type-Options being set to nosniff, which requires all imported JavaScript files to be a valid JavaScript MIME type. This issue has been fixed in version 2.28.2.
📍 영향받는 시스템
Mantis Bug Tracker (MantisBT) 2.28.1 및 그 이하 모든 버전
⚔️ 공격 벡터
조작된 JavaScript MIME 타입을 가진 첨부 파일을 업로드하여 CSP의 script-src 지침을 우회함
🛡️ 대응 방법
Mantis Bug Tracker를 최신 보안 패치가 적용된 버전 2.28.2 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 번호가 2.28.2 미만(예: 2.28.1 이하)이면 취약한 상태입니다.
php -r 'include "vendor/autoload.php"; echo "MantisBT Version: " . MantisBT_VERSION . PHP_EOL;'