🇰🇷 한글 설명
MySQL 5.0.88 이상에서 MyISAM 테이블 생성 시 DATA DIRECTORY/INDEX DIRECTORY 인자를 변조하여 로컬 사용자가 권한 검사를 우회하고 심볼릭 링크를 통해 MySQL 데이터 디렉토리 하위의 임의 경로에 접근할 수 있는 취약성입니다. mysql_unpacked_real_data_home 값 계산 오류에서 비롯된 CVE-2009-4030의 회귀입니다.
💡 쉬운 설명
MySQL에서 테이블을 만들 때 폴더 위치를 속여서 본래 접근 불가한 곳의 파일에 도달할 수 있습니다. 같은 컴퓨터에 로그인한 사용자만 악용할 수 있습니다.
🇺🇸 원문 (English)
MySQL 5.0.88, and possibly other versions and platforms, allows local users to bypass certain privilege checks by calling CREATE TABLE on a MyISAM table with modified (1) DATA DIRECTORY or (2) INDEX DIRECTORY arguments that are originally associated with pathnames without symlinks, and that can point to tables created at a future time at which a pathname is modified to contain a symlink to a subdirectory of the MySQL data home directory, related to incorrect calculation of the mysql_unpacked_real_data_home value. NOTE: this vulnerability exists because of a CVE-2009-4030 regression, which was not omitted in other packages and versions such as MySQL 5.0.95 in Red Hat Enterprise Linux 6.
📍 영향받는 시스템
MySQL 5.0.88, 5.0.95(RHEL 6), 그 외 영향받는 버전
⚔️ 공격 벡터
로컬 사용자가 CREATE TABLE 구문에서 DATA_DIRECTORY/INDEX_DIRECTORY를 심볼릭 링크로 변조하여 권한 우회
🛡️ 대응 방법
MySQL을 최신 패치 버전으로 업그레이드하거나 symlink 사용을 제한하는 데이터베이스 보안 설정 적용
🔧 검증 코드
MySQL 버전이 5.0.88 이상 5.0.95 이상인지 확인하고, 해당 버전이면 벤더 패치 및 보안 공지 검토 필요
mysql --version | grep -oE '[0-9]+\.[0-9]+\.[0-9]+'