🇰🇷 한글 설명
PostgreSQL 8.1.4 이전 버전에서 멀티바이트 문자의 잘못된 인코딩을 악용하여 SQL 인젝션 보호를 우회할 수 있는 취약점입니다. 공격자는 특수한 인코딩 조작으로 SQL 필터링을 회피하고 임의의 데이터베이스 명령을 실행할 수 있습니다.
💡 쉬운 설명
데이터베이스가 글자 인코딩 방식의 트릭으로 인해 위험한 SQL 명령어를 정상 명령어로 잘못 인식합니다. 이를 이용해 해커가 데이터를 탈취하거나 데이터베이스를 손상시킬 수 있습니다.
🇺🇸 원문 (English)
PostgreSQL 8.1.x before 8.1.4, 8.0.x before 8.0.8, 7.4.x before 7.4.13, 7.3.x before 7.3.15, and earlier versions allows context-dependent attackers to bypass SQL injection protection methods in applications via invalid encodings of multibyte characters, aka one variant of "Encoding-Based SQL Injection."
📍 영향받는 시스템
PostgreSQL 8.1.x (8.1.4 미만), 8.0.x (8.0.8 미만), 7.4.x (7.4.13 미만), 7.3.x (7.3.15 미만) 및 그 이전 버전
⚔️ 공격 벡터
멀티바이트 문자 인코딩 조작을 포함한 SQL 페이로드를 애플리케이션 입력값으로 전송
🛡️ 대응 방법
PostgreSQL을 안전한 버전으로 업그레이드 (8.1.4 이상, 8.0.8 이상, 7.4.13 이상, 7.3.15 이상)
🔧 검증 코드
출력된 PostgreSQL 버전이 각 메이저 버전별 권장 버전 이상인지 확인. 취약한 버전이면 즉시 업그레이드 수행
psql --version 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+'