🇰🇷 한글 설명
NGINX에서 사용되는 njs 0.3.1 이하 버전에서 힙 기반 버퍼 오버플로우 취약점이 발견되었습니다. njs_array_expand의 크기 처리 오류로 인해 Array.prototype.push 호출 시 메모리 경계를 초과할 수 있습니다.
💡 쉬운 설명
프로그램이 데이터를 저장할 공간을 늘리는 과정에서 계산 실수를 하여, 정해진 공간보다 더 많은 데이터를 억지로 밀어넣을 수 있는 문제입니다. 이를 통해 해커가 시스템의 제어권을 탈취하거나 프로그램을 강제로 종료시킬 수 있습니다.
🇺🇸 원문 (English)
njs through 0.3.1, used in NGINX, has a heap-based buffer overflow in Array.prototype.push after a resize, related to njs_array_prototype_push in njs/njs_array.c, because of njs_array_expand size mishandling.
📍 영향받는 시스템
njs 0.3.1 및 그 이전 버전이 포함된 NGINX 환경
⚔️ 공격 벡터
조작된 배열 데이터를 njs 스크립트를 통해 처리하도록 유도하여 메모리 오버플로우 유발
🛡️ 대응 방법
njs를 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 결과에서 njs의 버전을 확인하여 0.3.1 이하인지 체크
nginx -V 2>&1 | grep -i njs