인기 있는 expr-eval JavaScript 라이브러리에서 중요한 취약점이 발견되었습니다. 이 라이브러리는 NPM에서 주당 80만 번 이상 다운로드되며, 악의적으로 조작된 입력을 통해 원격 코드를 실행할 수 있는 취약점이 있습니다. 이 보안 문제는 보안 연구원 Jangwoo Choe에 의해 발견되었으며, CVE-2025-12735로 추적됩니다. 미국 사이버보안 및 인프라 보안국(CISA)에 따르면, 이 취약점의 심각도 등급은 매우 높으며, 점수는 9.8입니다. expr-eval은 Matthew Crumley가 처음 개발하였으며, 사용자가 제공한 수학적 표현식을 안전하게 파싱하고 런타임에 계산하는 프로젝트에서 사용되었습니다.
이 라이브러리는 온라인 계산기, 교육용 스위트, 시뮬레이션 도구, 금융 도구, 그리고 최근에는 텍스트 프롬프트에서 수학적 표현식을 파싱하는 AI 및 자연어 처리(NLP) 시스템 등에서 사용됩니다. 카네기 멜론의 소프트웨어 공학 연구소(SEI)의 CERT 조정 센터(CERT-CC)는 주말에 보고서를 통해 이 취약점이 Parser.evaluate() 함수에 전달된 변수/컨텍스트 객체를 검증하지 못하는 라이브러리의 실패로 인한 것이라고 밝혔습니다. 이로 인해 공격자는 파서가 평가하는 동안 호출하는 악의적인 함수 객체를 제공할 수 있습니다.
CVE-2025-12735는 6년 전에 출시된 안정 버전인 원래의 expr-eval과 현재 활발히 유지되고 있는 포크인 expr-eval-fork 모두에 영향을 미칩니다. npmjs.com의 데이터에 따르면, 이 라이브러리는 250개 이상의 프로젝트에서 사용되고 있습니다. CVE-2025-12735에 대한 보안 수정은 expr-eval-fork 버전 3.0.0에 존재하며, 영향을 받은 프로젝트가 가능한 한 빨리 이 버전으로 전환할 것을 권장합니다. 이 패치는 평가를 위한 안전한 함수의 허용 목록, 사용자 정의 함수의 등록 시스템, 이러한 제약 조건에 대한 테스트 커버리지를 개선합니다.
https://www.bleepingcomputer.com/news/security/popular-javascript-library-expr-eval-vulnerable-to-rce-flaw/ \
※ 이 글은 생성형 AI(ChatGPT-4)에 의해 요약되었습니다.