🇰🇷 한글 설명
mysql2 패키지 3.9.4 이전 버전에서 readCodeFor 함수가 supportBigNumbers와 bigNumberStrings 값을 적절히 검증하지 않아 원격 코드 실행(RCE)이 가능합니다. 공격자는 악의적인 MySQL 서버에 연결하거나 데이터베이스 응답을 조작하여 임의의 코드를 실행할 수 있습니다.
💡 쉬운 설명
mysql2라는 데이터베이스 연결 라이브러리에서 특정 설정값을 검증하지 않아 해킹당할 수 있습니다. 공격자가 이를 악용하면 서버에서 자신의 코드를 실행시킬 수 있습니다.
🇺🇸 원문 (English)
Versions of the package mysql2 before 3.9.4 are vulnerable to Remote Code Execution (RCE) via the readCodeFor function due to improper validation of the supportBigNumbers and bigNumberStrings values.
📍 영향받는 시스템
mysql2 < 3.9.4 (Node.js 패키지)
⚔️ 공격 벡터
악성 MySQL 서버 또는 중간자 공격을 통한 데이터베이스 응답 조작으로 readCodeFor 함수에 악성 코드 주입
🛡️ 대응 방법
mysql2를 3.9.4 이상으로 즉시 업그레이드
🔧 검증 코드
설치된 mysql2 버전을 확인하여 3.9.4 미만이면 취약점 있음, 해당 버전이 없으면 영향 없음
npm list mysql2 2>/dev/null | grep mysql2 || echo 'mysql2 not installed'