🔍 CVE-2026-113722

7.8
CVSS Score
HIGH
2026-10-20
2026-10-23 02:16
✅ 완료

🇰🇷 한글 설명

virtualenv 21.14.9 이전 버전에서 POSIX 콘솔 스크립트 생성 시 인터프리터 경로의 따옴표 처리가 불완전하여 발생하는 취약점입니다. 공격자가 환경 경로에 특수 문자를 포함시킬 수 있다면, 생성된 실행 파일을 실행할 때 임의의 명령어가 사용자 권한으로 실행될 수 있습니다.

💡 쉬운 설명

파이썬 가상 환경을 만들 때 경로 이름에 공백이나 특수 문자가 있으면, 나중에 그 프로그램을 실행할 때 해커가 심어놓은 명령어가 몰래 실행될 수 있는 문제입니다. 가상 환경을 만드는 과정 자체는 안전해 보이지만, 만들어진 결과물이 위험한 상태가 됩니다.

🇺🇸 원문 (English)

virtualenv is a tool for creating isolated virtual python environments. Prior to 21.14.9, virtualenv's ScriptMakerCustom and pip pass an incompletely quoted interpreter path to distlib ScriptMaker when generating POSIX console scripts. When the path contains a space or produces a shebang longer than 127 bytes, distlib emits a /bin/sh wrapper whose double-quoted interpreter path still expands command substitutions and backticks. An attacker who influences the environment destination can therefore execute commands with the user's privileges when the user later runs a generated launcher; environment creation and activation do not trigger the command. Existing launchers are not repaired by upgrading virtualenv alone and must be regenerated, while a later independent pip installation or upgrade can reintroduce an affected launcher because pip's vendored distlib is unchanged. The virtualenv fix is released in version 21.14.9.

📍 영향받는 시스템

virtualenv 21.14.9 미만 버전

⚔️ 공격 벡터

공격자가 조작된 경로(공백 또는 긴 경로)를 가진 환경을 생성하도록 유도한 후, 생성된 래퍼 스크립트를 실행

🛡️ 대응 방법

virtualenv를 21.14.9 이상으로 업데이트하고, 기존에 생성된 가상 환경의 실행 파일들을 반드시 다시 생성해야 함

🔧 검증 코드

출력된 버전이 21.14.9보다 낮으면 취약한 상태입니다.

Shell / Script
pip show virtualenv | grep Version

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Python