🇰🇷 한글 설명
Qt의 QSslSocket::sslErrors 함수에서 openSSL 호환성 문제로 인해 메모리를 잘못된 위치에서 읽어 인증서 검증 실패 시 부정확한 오류 정보를 제공합니다. 이로 인해 사용자가 실제로는 위험한 인증서를 안전하다고 판단하고 수락할 가능성이 있습니다.
💡 쉬운 설명
Qt 라이브러리의 SSL 보안 검사 기능에 버그가 있어서 악의적인 인증서를 좋다고 잘못 판단할 수 있습니다. 이로 인해 사용자가 속아서 해커가 만든 가짜 웹사이트에 접속하게 될 수 있습니다.
🇺🇸 원문 (English)
The QSslSocket::sslErrors function in Qt before 4.6.5, 4.7.x before 4.7.6, 4.8.x before 4.8.5, when using certain versions of openSSL, uses an "incompatible structure layout" that can read memory from the wrong location, which causes Qt to report an incorrect error when certificate validation fails and might cause users to make unsafe security decisions to accept a certificate.
📍 영향받는 시스템
Qt 4.6.5 이전, 4.7.x (4.7.6 이전), 4.8.x (4.8.5 이전) 버전 (특정 openSSL 버전 사용 시)
⚔️ 공격 벡터
공격자가 중간자 공격을 통해 자신의 인증서를 제시하고, 피해자의 Qt 애플리케이션이 잘못된 검증으로 인해 해당 인증서를 수락하도록 유도
🛡️ 대응 방법
Qt를 4.6.5, 4.7.6, 4.8.5 이상의 패치 버전으로 업그레이드하고 openSSL도 최신 버전으로 함께 업데이트
🔧 검증 코드
설치된 Qt 라이브러리 버전을 확인하여 4.6.5, 4.7.6, 4.8.5 이상인지 확인. 더 낮은 버전이 출력되면 즉시 업그레이드 필요.
dpkg -l | grep -E 'libqt|qt4|qt5' 2>/dev/null | grep -oE 'libqt[^ ]*\s+[^ ]+' | head -5