🇰🇷 한글 설명
Node.js가 패치되지 않은 OpenSSL을 번들로 포함하거나 동적 연결된 경우, RSA 복호화 중 PKCS #1 v1.5 padding을 사용할 때 Marvin Attack에 취약합니다. 이는 타이밍 분석을 통해 암호화된 메시지의 패턴을 분석하여 개인키로 복호화된 평문을 유추할 수 있습니다.
💡 쉬운 설명
Node.js에서 암호화된 메시지를 해독할 때 구식 방식을 사용하면, 해커가 해독 시간의 미세한 차이를 분석해 암호를 깰 수 있습니다. 이를 통해 개인정보나 민감한 데이터가 노출될 가능성이 있습니다.
🇺🇸 원문 (English)
Node.js versions which bundle an unpatched version of OpenSSL or run against a dynamically linked version of OpenSSL which are unpatched are vulnerable to the Marvin Attack - https://people.redhat.com/~hkario/marvin/, if PCKS #1 v1.5 padding is allowed when performing RSA descryption using a private key.
📍 영향받는 시스템
패치되지 않은 OpenSSL을 포함하거나 동적 연결된 모든 Node.js 버전
⚔️ 공격 벡터
PKCS #1 v1.5 padding 방식의 RSA 복호화 작업에 대한 타이밍 분석을 통한 Marvin Attack
🛡️ 대응 방법
Node.js 및 OpenSSL을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
Node.js와 OpenSSL 버전이 각각의 최신 보안 패치 버전 이상인지 공식 보안 공지와 비교
node --version && openssl version