🇰🇷 한글 설명
PEEL 3.x 이전 버전의 administrer/produits.php에 존재하는 무제한 파일 업로드 취약점입니다. 인증된 관리자가 Content-Type을 변조(image/gif, application/pdf 등)하여 임의의 PHP 파일을 업로드 및 서버에서 실행할 수 있습니다.
💡 쉬운 설명
관리자가 파일을 업로드할 때 실제 파일 내용을 확인하지 않고 이름과 타입만 확인합니다. 공격자가 악의적인 PHP 파일을 이미지로 속여서 올리면 서버가 이를 실행하게 됩니다.
🇺🇸 원문 (English)
Unrestricted file upload vulnerability in administrer/produits.php in PEEL, possibly 3.x and earlier, allows remote authenticated administrators to upload and execute arbitrary PHP files via a modified content type in an ajout action, as demonstrated by (1) image/gif and (2) application/pdf.
📍 영향받는 시스템
PEEL 3.x 이전 버전
⚔️ 공격 벡터
관리자 권한으로 produits.php의 ajout 액션에서 HTTP Content-Type 헤더를 변조하여 PHP 파일 업로드
🛡️ 대응 방법
PEEL을 최신 버전으로 업그레이드하거나, 업로드 디렉토리의 PHP 실행 권한 제거 및 파일 시그니처 기반 검증 구현
🔧 검증 코드
파일이 발견되면 PEEL이 설치되어 있으며, move_uploaded_file 함수의 검증 로직을 확인하여 Content-Type 기반만 사용하는지 확인합니다.
find / -name 'produits.php' -path '*/administrer/*' 2>/dev/null | xargs grep -l 'move_uploaded_file' 2>/dev/null