🔍 CVE-2026-87123

5.9
CVSS Score
MEDIUM
2026-09-11
2026-09-16 19:40
✅ 완료

🇰🇷 한글 설명

hbs 4.3.0 버전에서 비동기 헬퍼가 호출 가능한 함수가 아닌 toHTML 속성을 가진 객체를 반환할 경우 Node.js 프로세스가 충돌하는 취약점이 발견되었습니다. 이 오류는 렌더링 함수 외부에서 발생하여 예외 처리가 되지 않으므로, 공격자가 외부 입력값을 통해 프로세스를 강제로 종료시킬 수 있습니다.

💡 쉬운 설명

특정 조건에서 웹 서버가 예상치 못한 데이터를 받으면 프로그램이 갑자기 꺼져버리는 문제입니다. 공격자가 이 점을 이용해 웹사이트 서비스를 중단시킬 수 있습니다.

🇺🇸 원문 (English)

hbs is an Express view engine wrapper for Handlebars. Version 4.3.0 can crash the Node.js process during output escaping when an async helper, registered with registerAsyncHelper, resolves to an object whose toHTML property is truthy but not callable. Handlebars escapeExpression calls the toHTML method on any value that has a truthy toHTML, so such a value throws a TypeError, and because the async substitution runs on a later tick outside the render function's try/catch, the throw is an uncaught exception that terminates the process without sending a response. Only version 4.3.0 is affected, since the throwing escape was introduced by the fix for CVE-2026-16231 and earlier versions do not escape async helper values. It can be triggered remotely when an async helper resolves to an externally influenced object such as parsed JSON. The issue is fixed in hbs 4.3.1, and users should upgrade to hbs 4.3.1 or later.

📍 영향받는 시스템

hbs version 4.3.0

⚔️ 공격 벡터

외부에서 조작된 JSON 데이터를 통해 비동기 헬퍼가 잘못된 객체를 반환하도록 유도하여 원격으로 서비스 거부(DoS) 유발

🛡️ 대응 방법

hbs 버전을 4.3.1 이상으로 업그레이드하십시오.

🔧 검증 코드

명령어 결과에 [email protected]이 포함되어 있으면 해당 취약점에 노출된 상태입니다.

Shell / Script
npm list hbs | grep [email protected]

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js