🇰🇷 한글 설명
Prometheus 6.0 이하 버전에서 PROMETHEUS_LIBRARY_BASE 환경 변수가 원격 서버의 악성 PHP 코드를 가리키도록 조작될 경우, 해당 코드가 index.php, install.php, test_*.php 등의 스크립트 실행 시 원격으로 실행되는 취약점입니다. 공격자는 원격 코드 실행(RCE)을 통해 서버에 대한 완전한 제어권을 획득할 수 있습니다.
💡 쉬운 설명
Prometheus 웹 애플리케이션의 라이브러리 위치를 가리키는 설정을 공격자가 자신의 서버로 변경하면, 웹사이트 방문 시 공격자의 악성 코드가 실행됩니다. 이를 통해 공격자가 서버를 완전히 제어할 수 있게 됩니다.
🇺🇸 원문 (English)
Prometheus 6.0 and earlier allows remote attackers to execute arbitrary PHP code via a modified PROMETHEUS_LIBRARY_BASE that points to code stored on a remote server, which is then used in (1) index.php, (2) install.php, or (3) various test_*.php scripts.
📍 영향받는 시스템
Prometheus 버전 6.0 이하 (PHP 기반)
⚔️ 공격 벡터
PROMETHEUS_LIBRARY_BASE 변수를 원격 서버 URL로 변조하여 index.php, install.php 접근 시 악성 PHP 코드 실행 유도
🛡️ 대응 방법
Prometheus를 6.1 이상으로 업그레이드하거나, PROMETHEUS_LIBRARY_BASE를 고정된 로컬 경로로만 허용하도록 설정
🔧 검증 코드
Prometheus 설치 경로와 PROMETHEUS_LIBRARY_BASE 변수 설정 위치를 확인하여, 환경 변수가 로컬 경로만 참조하는지 검증
grep -r "PROMETHEUS_LIBRARY_BASE" /var/www/html 2>/dev/null || find /usr/local -name prometheus -type d 2>/dev/null