🇰🇷 한글 설명
Vanetza V2X v26.02의 GeoNetworking 패킷 처리 파이프라인에서 ECC 포인트 검증 시 발생하는 OpenSSL 예외가 제대로 처리되지 않아 Router::indicate() 호출 체인을 통해 전파됩니다. 이로 인해 std::terminate가 호출되어 V2X 수신기 프로세스가 충돌합니다.
💡 쉬운 설명
Vanetza V2X 소프트웨어가 특정 형식의 악의적인 네트워크 패킷을 받으면 오류를 처리하지 못하고 즉시 충돌합니다. 원격 공격자가 특수하게 조작된 패킷을 전송하여 V2X 시스템을 마비시킬 수 있습니다.
🇺🇸 원문 (English)
An issue was discovered in Vanetza V2X v26.02 allowing remote unauthorized attackers to cause a denial of service. The vulnerability exists in the GeoNetworking packet processing pipeline where OpenSSL exceptions from ECC point validation (invalid compressed point, point not on curve) are not properly caught by the Router::indicate() call chain. The openssl_wrapper.cpp check() function (line 19) throws openssl::Exception when OpenSSL operations fail. The parser's catch block in parse_secured() should catch these, but the exception escapes through subsequent processing stages (indicate_common, indicate_extended). This causes std::terminate, crashing the V2X receiver.
📍 영향받는 시스템
Vanetza V2X v26.02 및 이전 버전
⚔️ 공격 벡터
GeoNetworking 프로토콜 상의 유효하지 않은 ECC 압축 포인트(invalid compressed point) 또는 곡선상에 없는 포인트(point not on curve)를 포함한 패킷 전송
🛡️ 대응 방법
Vanetza V2X를 최신 보안 패치 버전으로 업그레이드하고 openssl_wrapper.cpp의 예외 처리 로직 검토 및 적용
🔧 검증 코드
설치된 Vanetza 패키지의 버전을 확인하여 v26.02 이상인지 확인, 이전 버전이면 업그레이드 필요
dpkg -l | grep -i vanetza || rpm -qa | grep -i vanetza