에너지경제 포토

김나현

knh@ekn.kr

김나현기자 기사모음




PHP 사태 이어 또 터졌다…이번엔 Node.js 보안 결함

에너지경제신문   | 입력 2026.10.26 13:52

인증 없이 원격 코드 실행 가능
오픈AI가 발견…KISA 패치 권고

국내 사이버 보안업체 티오리가 26일 공개한 Node.js 보안 취약점 'Node2Shell' 긴급 대응 방안 안내 자료. 사진=티오리 제공

▲국내 사이버 보안업체 티오리가 26일 공개한 Node.js 보안 취약점 'Node2Shell' 긴급 대응 방안 안내 자료. 사진=티오리 제공


전 세계 웹사이트에서 널리 쓰이는 프로그래밍 언어 PHP에 이어 서버 개발에 사용되는 'Node.js'에서도 심각한 보안 취약점이 발견됐다. 공격자가 별도의 인증 없이 서버를 중단시키거나 악성 코드를 실행할 수 있는 결함으로, 국내 보안당국도 긴급 업데이트를 권고했다.


26일 보안업계에 따르면 Node.js 개발진은 지난 21일 공식 보안 공지를 통해 데이터 압축 해제 모듈인 '브로틀리(Brotli)'에서 원격 코드 실행을 허용할 수 있는 취약점(CVE-2026-111497)이 발견됐다고 밝혔다.


Node.js는 자바스크립트를 웹브라우저 밖에서도 실행할 수 있도록 하는 소프트웨어 환경이다. 웹사이트 서버와 애플리케이션 개발 등에 널리 사용된다.




이번 취약점은 외부에서 전달된 압축 데이터를 해제하는 과정에서 발생한다. 공격자가 조작한 압축 데이터를 서버에 보내면 정해진 메모리 영역을 벗어나 데이터가 기록되면서 오류가 발생할 수 있다.


이를 악용하면 서버를 비정상적으로 종료시키거나 메모리 정보를 빼낼 수 있다. 특정 조건에서는 악성 코드를 원격으로 실행해 서버 제어권까지 확보할 가능성이 있다.


특히 개발자가 작성한 프로그램에 문제가 없더라도 Node.js 자체의 결함으로 공격에 노출될 수 있다. 외부에서 전달된 압축 데이터를 자동으로 해제하는 서버는 별도 점검이 필요하다.


이번 취약점은 오픈AI의 코덱스 보안팀이 발견했다. 오픈AI는 앞서 인공지능(AI) 에이전트의 보안 성능을 시험하는 과정에서 브로틀리의 잠재적 결함을 찾아냈다고 밝힌 바 있다.


Node.js 개발진은 취약점 위험도를 '높음(High)'으로 분류하고, 이를 수정한 22.23.4, 24.22.1, 26.12.1 버전을 배포했다. 이번 보안 업데이트에서 수정된 취약점은 모두 10건으로, 이 가운데 4건이 고위험으로 분류됐다.


한국인터넷진흥원(KISA)도 관련 보안 공지를 내고 영향을 받는 버전의 사용자들에게 최신 보안 업데이트를 적용할 것을 권고했다.


국내 보안업체 티오리는 이날 'Node2Shell'로 불리는 이번 취약점의 자체 재현과 검증을 마치고 긴급 대응 방안을 공개했다.


티오리에 따르면 개발자가 압축 해제 기능을 직접 사용하지 않더라도 웹 프레임워크나 외부 라이브러리가 데이터를 자동으로 처리하는 과정에서 공격에 노출될 수 있다.


티오리는 즉각적인 업데이트가 어려운 기업을 위한 임시 대응 방안도 제시했다. 별도 프로그램 설치 없이 웹사이트 주소만 입력하면 취약점 노출 위험을 확인할 수 있는 무료 진단 서비스도 공개했다.


다만 모든 Node.js 서버가 공격에 노출되는 것은 아니다. 실제 공격 가능성은 서버의 압축 데이터 처리 방식과 운영 환경에 따라 달라진다. 이번 취약점으로 인한 대규모 침해 사고도 아직 확인되지 않았다.


앞서 PHP에서도 인증 없이 악성 코드를 원격으로 실행할 수 있는 취약점이 발견돼 국내외 보안당국이 업데이트를 권고했다. 당시 보안업체들은 취약점이 공식 공개되기 전부터 공격 시도가 발생했으며, 공개 이후에는 수백만 건으로 늘었다고 보고했다.



배너