🇰🇷 한글 설명
Benja CMS 0.1의 admin/upload.php에서 파일 업로드 검증이 부족하여, 원격 공격자가 임의의 PHP 파일을 업로드한 후 billeder/ 디렉토리를 통해 직접 실행할 수 있는 취약점입니다. 이를 통해 웹서버 권한으로 임의 코드 실행이 가능합니다.
💡 쉬운 설명
웹사이트의 파일 업로드 기능이 PHP 파일 업로드를 제대로 막지 못해서, 악의적인 사람이 자신의 명령을 실행하는 파일을 업로드할 수 있습니다. 이렇게 업로드된 파일에 접근하면 공격자가 서버를 완전히 제어할 수 있습니다.
🇺🇸 원문 (English)
Unrestricted file upload vulnerability in admin/upload.php in Benja CMS 0.1 allows remote attackers to upload and execute arbitrary PHP files via unspecified vectors, followed by a direct request to the file in billeder/.
📍 영향받는 시스템
Benja CMS 0.1 (매우 구형 CMS, 현재 거의 미지원)
⚔️ 공격 벡터
admin/upload.php에 제한 없이 PHP 파일을 POST 요청으로 업로드한 후 billeder/[filename].php로 HTTP GET 요청으로 접근하여 실행
🛡️ 대응 방법
Benja CMS 최신 버전으로 업그레이드하거나, 즉시 업그레이드 불가 시 upload.php의 파일 확장자 화이트리스트 검증 추가 및 billeder/ 디렉토리에서 PHP 실행 비활성화(.htaccess 또는 웹서버 설정)
🔧 검증 코드
결과가 나타나면 Benja CMS가 설치되어 있으며, 해당 경로의 파일을 검사하여 파일 타입 검증 코드 부재 시 취약함
find / -name 'upload.php' -path '*/admin/*' 2>/dev/null