🇰🇷 한글 설명
elFinder 2.1.70 미만 버전에서 발생하는 취약점으로, ZIP 압축 해제 시 MIME 타입 검증이 제대로 이루어지지 않습니다. 공격자가 PHP 실행 파일이 포함된 ZIP 파일을 업로드하면 서버의 보안 설정을 우회하여 웹 디렉토리에 파일을 생성할 수 있습니다. 이를 통해 원격 코드 실행(RCE)이 가능해집니다.
💡 쉬운 설명
파일 관리 프로그램의 압축 풀기 기능에 허점이 있어, 위험한 실행 파일을 몰래 끼워 넣을 수 있습니다. 해커가 이 파일을 서버에 올리면 서버를 마음대로 조종할 수 있게 됩니다.
🇺🇸 원문 (English)
elFinder is an open-source file manager for web, written in JavaScript using jQuery UI. Prior to 2.1.70, checkExtractItems() in php/elFinderVolumeDriver.class.php calls mimetypeInternalDetect() without passing the result through mimeTypeNormalize(). Because the .phtml, .phar, .php5, and .php3 extensions are absent from mime.types, the staticMimeMap entries that map them to text/x-php are not applied, and allowPutMime() permits extraction even when uploadDeny blocks text/x-php. An attacker with ZIP upload permission can extract PHP-executable files into a web-accessible files/ directory and achieve remote code execution when the server executes those extensions. This issue is fixed in version 2.1.70.
📍 영향받는 시스템
elFinder 버전 2.1.70 미만
⚔️ 공격 벡터
ZIP 파일 업로드 권한을 이용한 PHP 실행 파일 압축 해제 및 원격 코드 실행
🛡️ 대응 방법
elFinder를 최신 버전인 2.1.70 이상으로 업데이트하십시오.
🔧 검증 코드
설치된 elFinder의 소스 코드 내 버전 정보가 2.1.70 미만인지 확인하십시오.
php -r 'echo "elFinder version check";' # 실제 버전 확인은 설치된 소스 코드의 composer.json 또는 버전 파일을 참조해야 함