🇰🇷 한글 설명
phpMyFAQ 4.1.2 이전 버전의 AbstractAdministrationController::userHasPermission() 함수에서 권한 검증 후 실행을 중단하지 않는 결함이 있습니다. 인증된 사용자가 권한이 필요한 관리자 페이지의 URL을 직접 요청하면 접근이 가능하며, 관리자 로그, 사용자 데이터, 시스템 정보, 애플리케이션 설정이 노출될 수 있습니다.
💡 쉬운 설명
phpMyFAQ 관리자 페이지의 권한 검사가 제대로 작동하지 않아 로그인한 일반 사용자도 관리자 전용 페이지를 볼 수 있는 문제입니다. 이를 통해 중요한 관리자 정보와 설정이 외부에 노출될 수 있습니다.
🇺🇸 원문 (English)
phpMyFAQ before 4.1.2 contains an authorization bypass vulnerability in AbstractAdministrationController::userHasPermission() that fails to terminate execution after sending a forbidden response. Attackers can access all permission-protected admin pages by requesting their URLs as authenticated users, exposing admin logs, user data, system information, and application configuration.
📍 영향받는 시스템
phpMyFAQ 4.1.2 이전 모든 버전
⚔️ 공격 벡터
인증된 사용자가 관리자 페이지 URL을 직접 요청하여 권한 검증 우회
🛡️ 대응 방법
phpMyFAQ를 4.1.2 이상 버전으로 즉시 업그레이드
🔧 검증 코드
취약한 버전의 userHasPermission() 함수가 검증 후 실행을 중단하지 않으면 exit, return, throw 문 없이 계속 실행되는 코드 패턴이 보입니다.
grep -r 'userHasPermission' /path/to/phpmyfaq && grep -A 5 'userHasPermission' /path/to/phpmyfaq/src/phpMyFAQ/Controller/AbstractAdministrationController.php | head -10