🇰🇷 한글 설명
phpBB 2.0.20에서 memberlist.php의 start 파라미터가 SQL 쿼리의 LIMIT 값으로 사용될 때 사용자 입력을 충분히 검증하지 않습니다. 공격자가 음수 값을 입력하면 SQL 쿼리 전체가 에러 메시지로 노출되어 데이터베이스 구조와 민감 정보를 획득할 수 있습니다.
💡 쉬운 설명
phpBB 회원 목록 페이지에서 페이지 번호 자리에 음수를 입력하면 데이터베이스 쿼리가 화면에 드러납니다. 이를 통해 해커가 데이터베이스 구조를 파악하고 민감한 정보를 얻을 수 있습니다.
🇺🇸 원문 (English)
phpBB 2.0.20 does not properly verify user-specified input variables used as limits to SQL queries, which allows remote attackers to obtain sensitive information via a negative LIMIT specification, as demonstrated by the start parameter to memberlist.php, which reveals the SQL query in the resulting error message.
📍 영향받는 시스템
phpBB 2.0.20 (2.0.21부터 패치됨)
⚔️ 공격 벡터
GET 요청으로 memberlist.php?start=-1 또는 다른 음수값 전달
🛡️ 대응 방법
phpBB를 2.0.21 이상으로 업그레이드하거나 입력값 검증 로직 추가(정수 검증 및 음수 필터링)
🔧 검증 코드
phpBB의 memberlist.php 파일에서 start 파라미터가 LIMIT에 직접 사용되는지 확인. 파일이 발견되지 않으면 phpBB 미설치 상태, 발견되면 취약 버전 확인 필요
find / -name 'memberlist.php' -path '*/phpbb/*' 2>/dev/null | head -1 | xargs grep -l 'LIMIT.*start' 2>/dev/null