🇰🇷 한글 설명
DBD::mysql 4.043 이하 버전에서 mysql_ssl=1 설정이 SSL을 필수가 아닌 선택사항으로 취급하여, 중간자 공격자가 암호화되지 않은 연결로 강제 다운그레이드하고 서버를 스푸핑할 수 있는 취약점입니다. 문서상으로는 암호화된다고 명시되어 있으나 실제 작동은 선택사항으로만 처리됩니다.
💡 쉬운 설명
Perl 데이터베이스 접속 모듈에서 보안 설정이 제대로 적용되지 않아 해커가 안전하지 않은 경로로 데이터를 가로챌 수 있습니다. 자물쇠를 잠갔다고 생각했는데 실제로는 시계열려있는 것과 같습니다.
🇺🇸 원문 (English)
The DBD::mysql module through 4.043 for Perl uses the mysql_ssl=1 setting to mean that SSL is optional (even though this setting's documentation has a "your communication with the server will be encrypted" statement), which allows man-in-the-middle attackers to spoof servers via a cleartext-downgrade attack, a related issue to CVE-2015-3152.
📍 영향받는 시스템
DBD::mysql 모듈 버전 4.043 이하 (Perl DBI 기반 MySQL 연결)
⚔️ 공격 벡터
중간자 공격(MITM)을 통해 mysql_ssl=1 설정을 무시하고 cleartext 연결로 강제 다운그레이드
🛡️ 대응 방법
DBD::mysql을 4.044 이상으로 업그레이드하고 mysql_ssl=require 또는 mysql_ssl=verify_full 설정 사용
🔧 검증 코드
명령어 실행 후 출력된 버전이 4.044 이상이면 안전하고, 4.043 이하이면 업그레이드 필요
perl -MDBI -e 'print DBD::mysql->VERSION' 2>/dev/null