🇰🇷 한글 설명
Rust 언어의 openssl 크레이트 0.10.55 미만 버전에서 X509VerifyParamRef::set_host 함수에 빈 문자열을 전달할 경우 경계 외 읽기(out-of-bounds read) 취약점이 발생합니다. 이로 인해 메모리의 잘못된 영역을 참조하여 정보가 유출될 수 있습니다.
💡 쉬운 설명
프로그램이 데이터를 읽을 때 정해진 범위를 벗어나 잘못된 메모리 영역을 읽게 되는 오류입니다. 빈 값을 입력했을 때 발생하며, 이를 통해 시스템 내부의 민감한 정보가 노출될 위험이 있습니다.
🇺🇸 원문 (English)
The openssl crate before 0.10.55 for Rust allows an out-of-bounds read via an empty string to X509VerifyParamRef::set_host.
📍 영향받는 시스템
Rust openssl crate version < 0.10.55
⚔️ 공격 벡터
X509 인증서 검증 과정에서 호스트 이름 설정 시 빈 문자열을 입력하여 메모리 경계 외 읽기 유도
🛡️ 대응 방법
openssl 크레이트를 0.10.55 버전 이상으로 업데이트
🔧 검증 코드
출력된 버전 번호가 0.10.55 미만인지 확인하여 취약 여부를 판단합니다.
cargo pkgid openssl | grep -oE 'openssl@0\.[0-9]+\.[0-9]+' || echo 'Not found'