🇰🇷 한글 설명
Seagull 0.6.7의 다중 PHP 원격 파일 포함 취약점으로, includeFile, driverpath, path 매개변수를 통해 공격자가 원격 서버에서 악성 PHP 파일을 로드하고 임의의 코드를 실행할 수 있습니다. 영향받는 파일은 Config/Container.php, HTML/QuickForm.php, DB/NestedSet.php, DB/NestedSet/Output.php입니다.
💡 쉬운 설명
웹사이트의 설정 파일들이 외부에서 파일을 로드할 때 입력값을 검증하지 않아, 해커가 원격 서버의 악성 코드를 실행시킬 수 있습니다. 이를 통해 전체 웹사이트를 장악당할 수 있습니다.
🇺🇸 원문 (English)
Multiple PHP remote file inclusion vulnerabilities in Seagull 0.6.7 allow remote attackers to execute arbitrary PHP code via a URL in the includeFile parameter to (1) Config/Container.php and (2) HTML/QuickForm.php in fog/lib/pear/, the (3) driverpath parameter to fog/lib/pear/DB/NestedSet.php, and the (4) path parameter to fog/lib/pear/DB/NestedSet/Output.php.
📍 영향받는 시스템
Seagull 0.6.7 이하 모든 버전
⚔️ 공격 벡터
HTTP GET/POST 요청으로 includeFile, driverpath, path 매개변수에 외부 URL을 포함하여 원격 PHP 파일 로드 및 실행
🛡️ 대응 방법
Seagull 0.6.8 이상으로 업그레이드하고, 파일 포함 함수에서 whitelist 검증 및 파일 경로 제한 구현
🔧 검증 코드
명령어 실행 결과로 위 파일들이 발견되면 Seagull이 설치된 것이고, 해당 디렉토리의 version.php 또는 README에서 버전을 확인하여 0.6.7 이하면 취약한 상태
find / -name 'Container.php' -path '*/Config/*' -o -name 'NestedSet.php' -path '*/fog/lib/pear/*' 2>/dev/null