🇰🇷 한글 설명
DokuWiki에서 register_globals가 활성화된 경우, doku.php의 config_cascade[main][default][] 파라미터를 통해 임의의 로컬 파일을 포함하고 실행할 수 있는 로컬 파일 포함(LFI) 취약점입니다. PHP 5에서는 ftp:// URL을 사용하여 원격 파일 포함(RFI) 공격도 가능합니다.
💡 쉬운 설명
DokuWiki 웹사이트에서 특수한 URL을 만들어 보내면 공격자가 서버의 파일을 읽고 실행할 수 있는 보안 문제입니다. 서버의 민감한 정보가 유출되거나 전체 시스템이 장악될 수 있습니다.
🇺🇸 원문 (English)
inc/init.php in DokuWiki 2009-02-14, rc2009-02-06, and rc2009-01-30, when register_globals is enabled, allows remote attackers to include and execute arbitrary local files via the config_cascade[main][default][] parameter to doku.php. NOTE: PHP remote file inclusion is also possible in PHP 5 using ftp:// URLs.
📍 영향받는 시스템
DokuWiki 2009-02-14, rc2009-02-06, rc2009-01-30 및 이전 버전 (register_globals 활성화 상태)
⚔️ 공격 벡터
HTTP 요청에 config_cascade[main][default][] 파라미터를 삽입하여 doku.php에 임의의 파일 경로 또는 원격 URL 전달
🛡️ 대응 방법
DokuWiki를 최신 버전으로 업그레이드하고, PHP의 register_globals 설정을 비활성화하며, allow_url_include 설정 비활성화
🔧 검증 코드
결과에 VULNERABLE이 표시되거나 register_globals가 On으로 설정되어 있으면 해당 서버는 CVE-2009-1960에 취약함
php -r "echo (ini_get('register_globals') ? 'VULNERABLE' : 'SAFE');" && echo && grep -r 'register_globals' /etc/php* 2>/dev/null | head -3