🔍 CVE-2026-33891

7.5
CVSS Score
HIGH
2026-03-27
2026-10-26 22:10
✅ 완료

🇰🇷 한글 설명

Forge(node-forge)는 JavaScript로 구현된 TLS 라이브러리입니다. 1.4.0 이전 버전에서는 번들된 jsbn 라이브러리의 BigInteger.modInverse() 함수에 무한 루프 취약점이 존재하며, 입력값이 0일 때 프로세스가 무한정 멈추고 CPU를 100% 사용하게 됩니다. 버전 1.4.0에서 이 문제가 패치되었습니다.

💡 쉬운 설명

이 라이브러리를 사용하는 서버에 특정 입력값이 전달되면 프로그램이 멈추고 CPU를 과도하게 사용합니다. 공격자는 이를 이용해 서비스를 중단시킬 수 있습니다.

🇺🇸 원문 (English)

Forge (also called `node-forge`) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, a Denial of Service (DoS) vulnerability exists in the node-forge library due to an infinite loop in the BigInteger.modInverse() function (inherited from the bundled jsbn library). When modInverse() is called with a zero value as input, the internal Extended Euclidean Algorithm enters an unreachable exit condition, causing the process to hang indefinitely and consume 100% CPU. Version 1.4.0 patches the issue.

📍 영향받는 시스템

node-forge 1.4.0 미만 버전을 사용하는 Node.js 애플리케이션

⚔️ 공격 벡터

공격자가 modInverse()에 0 값을 유발하는 입력을 전송하여 서비스 거부(DoS) 상태를 만듦

🛡️ 대응 방법

node-forge를 1.4.0 이상으로 업데이트 (npm update node-forge 또는 npm install node-forge@^1.4.0)

🔧 검증 코드

출력된 node-forge 버전이 1.4.0 미만이면 취약하며, 1.4.0 이상이면 패치된 상태입니다.

Shell / Script
npm ls node-forge 2>/dev/null | grep node-forge

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H