🇰🇷 한글 설명
Node.js의 node-printer 모듈 0.0.1 이하 버전에서 printDirect 함수가 lpr 명령어에 대한 입력값을 충분히 검증하지 않아 발생하는 취약점입니다. 원격 공격자가 특수한 문자를 포함한 악의적인 입력을 통해 서버에서 임의의 시스템 명령을 실행할 수 있습니다.
💡 쉬운 설명
Node.js 프린터 라이브러리에서 사용자 입력이 제대로 검증되지 않아 해커가 프린터 명령을 통해 컴퓨터를 원격으로 장악할 수 있는 심각한 보안 결함입니다. 이를 악용하면 공격자가 서버의 모든 파일에 접근하거나 시스템을 완전히 제어할 수 있습니다.
🇺🇸 원문 (English)
The printDirect function in lib/printer.js in the node-printer module 0.0.1 and earlier for Node.js allows remote attackers to execute arbitrary commands via unspecified characters in the lpr command.
📍 영향받는 시스템
node-printer npm 패키지 버전 0.0.1 이하를 사용하는 Node.js 애플리케이션
⚔️ 공격 벡터
원격 네트워크를 통해 printDirect 함수에 조작된 문자열을 입력하여 shell 명령 실행
🛡️ 대응 방법
node-printer 패키지를 0.0.2 이상으로 업그레이드하거나 모듈 사용을 중단하고 보안 패치된 대안 사용
🔧 검증 코드
설치된 node-printer 버전이 표시되면 버전 번호 확인 (0.0.1 이하면 취약), 미설치면 'not installed' 출력
npm list node-printer 2>/dev/null | grep node-printer || echo 'not installed'