🔍 CVE-2026-46510

8.2
CVSS Score
HIGH
2026-05-29
2026-07-21 12:10
✅ 완료

🇰🇷 한글 설명

form-data-objectizer 1.0.1 미만 버전에서 FormData를 객체로 변환할 때 __proto__, constructor, prototype 필터링이 누락되어 발생합니다. 공격자가 __proto__[...]로 시작하는 HTTP 폼 필드를 전송하면 Node.js 프로세스 전체의 Object.prototype을 변조할 수 있는 프로토타입 오염 취약점이 존재합니다.

💡 쉬운 설명

웹사이트의 입력창에 특수한 이름을 가진 데이터를 보내면, 프로그램의 근본적인 설계도를 몰래 수정할 수 있는 보안 약점입니다. 이를 통해 해커가 프로그램의 동작을 마음대로 바꾸거나 시스템을 장악할 수 있습니다.

🇺🇸 원문 (English)

form-data-objectizer converts FormData to object. Prior to 1.0.1, form-data-objectizer walks bracket-notation form keys (e.g. name[sub]) into nested objects without filtering __proto__, constructor, or prototype. A single HTTP form field whose name starts with __proto__[...] causes the library to mutate Object.prototype, which is a prototype pollution primitive of the entire Node.js process. This vulnerability is fixed in 1.0.1.

📍 영향받는 시스템

form-data-objectizer version < 1.0.1

⚔️ 공격 벡터

HTTP 요청의 FormData 필드 이름에 __proto__[...] 형식을 사용하여 프로토타입 오염 유도

🛡️ 대응 방법

form-data-objectizer 라이브러리를 1.0.1 버전 이상으로 업데이트

🔧 검증 코드

출력된 결과에서 form-data-objectizer의 버전이 1.0.1 미만인지 확인

Shell / Script
npm list form-data-objectizer

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js