🇰🇷 한글 설명
@cgauge/yaml npm 패키지에서 임의 코드 실행 취약점이 발견되었습니다. 공격자가 커스텀 !js YAML 태그를 포함한 악성 파일을 통해 문서 파싱 과정에서 eval() 함수를 호출하도록 유도함으로써 임의의 JavaScript를 실행할 수 있습니다. 이로 인해 공격자는 환경 변수 접근, 파일 시스템 조작, 네트워크 접속 등 Node.js 런타임의 모든 권한을 탈취할 수 있습니다.
💡 쉬운 설명
나쁜 의도를 가진 사람이 만든 특수한 설정 파일을 프로그램이 읽을 때, 컴퓨터가 공격자의 명령어를 그대로 실행해버리는 문제입니다. 이를 통해 해커가 내 컴퓨터의 파일을 읽거나 삭제하고 마음대로 조종할 수 있습니다.
🇺🇸 원문 (English)
@cgauge/yaml npm package contains an arbitrary code execution vulnerability that allows attackers to execute arbitrary JavaScript by embedding a custom !js YAML tag whose construct callback unconditionally calls eval() on attacker-supplied string values during document parsing. Any application parsing untrusted YAML input with this library exposes full Node.js runtime authority, including environment variable access, filesystem read/write, network access, and subprocess execution, with no safe-mode alternative or opt-out mechanism available.
📍 영향받는 시스템
@cgauge/yaml npm 패키지 (버전 미상, 취약한 버전 사용 시)
⚔️ 공격 벡터
신뢰할 수 없는 YAML 입력값에 !js 태그를 삽입하여 파싱을 유도하는 방식
🛡️ 대응 방법
해당 패키지를 최신 보안 패치 버전으로 업데이트하거나, 신뢰할 수 없는 YAML 입력을 처리하지 않도록 수정해야 합니다.
🔧 검증 코드
명령어 결과에 @cgauge/yaml 패키지가 나타나면 해당 라이브러리가 설치되어 있는 상태입니다.