VU#725167: RSA-PKCS 및 ED25519 구현에서의 node-forge 서명 위조 취약점
널리 사용되는 node-forge JavaScript 라이브러리에 두 가지 치명적인 암호화 서명 검증 취약점이 존재합니다. 이러한 결함으로 인해 공격자는 특정 상황에서 RSA(PKCS#1 v1.5) 및 Ed25519 서명을 위조할 수 있습니다. RSA 취약점인 CVE-2026-33894는 서명 검증 중 비표준 ASN.1 인코딩 및 부족한 패딩을 수락하는 데서 발생합니다. 이를 통해 공격자는 node-forge는 유효하다고 검증하지만 표준 라이브러리는 거부하는 서명을 생성할 수 있으며, 특히 낮은 공개 지수에서 더욱 그렇습니다. Ed25519 취약점인 CVE-2026-33895는 스칼라 표준성 강제 실패에서 비롯되어 비표준 스칼라를 가진 서명이 수락될 수 있습니다. 이는 서명 고유성을 약화시키고 대체 공격을 가능하게 합니다. 영향을 받는 버전은 RSA의 경우 0.1.2부터 1.3.3까지, Ed25519의 경우 0.7.4부터 1.3.3까지입니다. 주요 영향은 공격자가 인증, 코드 서명 또는 토큰 유효성 검사를 우회할 수 있다는 것입니다. 인기 있는 JOSE 라이브러리를 포함하여 기본 node-forge 검증 API를 사용하는 애플리케이션이 잠재적으로 노출됩니다. 악용은 간단하며 네트워크를 통해 발생할 수 있습니다. 2026년 4월 5일에 릴리스된 버전 1.4.0은 RSA 및 Ed25519 서명 모두에 대해 엄격한 표준 검증을 강제하여 이러한 문제를 완전히 해결합니다. 사용자는 취약점을 패치하기 위해 이 버전으로 업그레이드하는 것이 강력히 권장됩니다. 즉각적인 업그레이드가 불가능한 경우, 권장되는 완화 조치에는 호출 사이트 감사 및 Node.js 네이티브 암호화 검증으로의 대체가 포함됩니다.