데이터 압축 해제 과정서 보안 구멍 발생
전 세계 웹 환경에서 광범위하게 활용되는 프로그래밍 언어인 PHP에 이어, 서버 운영의 핵심 기술인 'Node.js'에서도 심각한 보안 결함이 드러났다. 해커가 해당 취약점을 이용할 경우, 별도의 비밀번호 입력 없이도 외부에서 서버를 강제로 중단시키거나 악성 프로그램을 구동할 수 있는 위험성이 확인됐다. 보안 문제를 보완한 업데이트 패치가 이미 배포되었으나, 최신 버전을 적용하지 않은 서버들은 여전히 공격 위협에 무방비로 노출될 수 있어 각별한 주의가 요구된다.
26일 보안 업계의 발표에 따르면, Node.js 개발팀은 지난 21일 데이터 압축을 해제하는 기능 내에서 보안 취약점을 식별하고 이에 대한 패치를 완료했다. Node.js는 다양한 온라인 서비스와 이커머스 플랫폼에서 사용자 요청을 처리하는 서버 개발에 주로 쓰이는 소프트웨어다. 이번에 발견된 문제는 서버가 외부로부터 수신한 압축 데이터를 풀어내는 단계에서 발생한다. 공격자가 특수하게 설계된 조작 데이터를 전송할 경우 서버가 마비되거나 악성 코드가 실행될 수 있다. 다만 실제 공격의 성패는 서버의 구체적인 설정값과 데이터 처리 방식에 따라 차이가 있을 수 있다.
오픈AI 보안팀이 찾아낸 '브로틀리' 기술의 결함
해당 보안 취약점은 오픈AI(OpenAI) 산하의 인공지능(AI) 코덱스 보안팀에 의해 포착됐다. 오픈AI 측은 AI 모델이 기존의 보안 통제 시스템을 우회할 수 있는지 검증하는 과정에서, 여러 소프트웨어에서 범용적으로 활용되는 데이터 압축 기술인 '브로틀리(Brotli)'의 결함을 발견해냈다. 브로틀리는 Node.js 환경뿐만 아니라 다양한 소프트웨어 생태계에서 널리 사용되는 기술이다.
Node.js 개발진은 이번 취약점에 대해 위험도를 '높음' 단계로 분류하고 이를 해결한 신규 버전을 공개했다. 한국인터넷진흥원(KISA) 역시 사용자들에게 즉각적인 최신 버전 업데이트를 권고하고 나섰다. 한편, 국내 보안 기업인 티오리는 해당 취약점에 대한 자체 검증을 마친 뒤, 사용자가 인터넷 주소만 입력하면 노출 위험도를 무료로 점검할 수 있는 'Node.js 가드' 서비스를 출시했다.