🇰🇷 한글 설명
MySQL 5.1.51 이전 및 5.5.6 이전 버전에서 인증된 사용자가 GROUP BY 쿼리에서 사용자 변수 할당을 통해 서버 크래시를 유발할 수 있는 취약점입니다. 임시 테이블에 저장된 표현식이 재평가되는 과정에서 메모리 오류가 발생합니다.
💡 쉬운 설명
MySQL 데이터베이스 접근 권한이 있는 사용자가 특정 쿼리를 보내 데이터베이스 서버를 강제로 중단시킬 수 있습니다. 이로 인해 데이터베이스 서비스 전체가 중단될 수 있습니다.
🇺🇸 원문 (English)
MySQL 5.1 before 5.1.51 and 5.5 before 5.5.6 allows remote authenticated users to cause a denial of service (mysqld server crash) by performing a user-variable assignment in a logical expression that is calculated and stored in a temporary table for GROUP BY, then causing the expression value to be used after the table is created, which causes the expression to be re-evaluated instead of accessing its value from the table.
📍 영향받는 시스템
MySQL 5.1 (5.1.51 이전), MySQL 5.5 (5.5.6 이전)
⚔️ 공격 벡터
인증된 데이터베이스 사용자가 GROUP BY에서 사용자 변수를 할당하는 쿼리 실행
🛡️ 대응 방법
MySQL을 5.1.51 이상 또는 5.5.6 이상으로 업그레이드
🔧 검증 코드
버전이 5.1.50 이하 또는 5.5.5 이하로 표시되면 취약한 상태이며, 5.1.51 이상 또는 5.5.6 이상이면 패치됨
mysql -u root -p -e "SELECT @@version;" 2>/dev/null | grep -E '5\.(1\.[0-4][0-9]|5\.[0-5])'