🔍 CVE-2022-36070

7.3
CVSS Score
HIGH
2022-09-07
2026-06-17 04:52
✅ 완료

🇰🇷 한글 설명

Python 의존성 관리 도구인 Poetry가 Windows 환경에서 Git 명령어를 실행할 때 절대 경로가 아닌 실행 파일 이름만을 사용하여 발생하는 취약점입니다. Windows의 실행 파일 탐색 방식 특성을 악용하여 현재 디렉토리에 있는 악성 파일을 실행함으로써 임의 코드를 실행하고 시스템 권한을 탈취할 수 있습니다.

💡 쉬운 설명

Poetry가 Git 명령을 내릴 때 컴퓨터가 엉뚱한(악성) 파일을 실행할 수 있는 허점이 발견되었습니다. 공격자가 만든 가짜 Git 파일을 특정 폴더에 두면, 사용자가 모르는 사이에 해커의 명령이 실행될 수 있습니다.

🇺🇸 원문 (English)

Poetry is a dependency manager for Python. To handle dependencies that come from a Git repository, Poetry executes various commands, e.g. `git config`. These commands are being executed using the executable’s name and not its absolute path. This can lead to the execution of untrusted code due to the way Windows resolves executable names to paths. Unlike Linux-based operating systems, Windows searches for the executable in the current directory first and looks in the paths that are defined in the `PATH` environment variable afterward. This vulnerability can lead to Arbitrary Code Execution, which would lead to the takeover of the system. If a developer is exploited, the attacker could steal credentials or persist their access. If the exploit happens on a server, the attackers could use their access to attack other internal systems. Since this vulnerability requires a fair amount of user interaction, it is not as dangerous as a remotely exploitable one. However, it still puts developers at risk when dealing with untrusted files in a way they think is safe. The victim could also not protect themself by vetting any Git or Poetry config files that might be present in the directory, because the behavior is undocumented. Versions 1.1.9 and 1.2.0b1 contain patches for this issue.

📍 영향받는 시스템

Poetry 1.1.9 미만 버전 및 1.2.0b1 미만 버전 (Windows 환경)

⚔️ 공격 벡터

신뢰할 수 없는 Git 또는 Poetry 설정 파일이 포함된 디렉토리에서 Poetry를 실행하여 악성 실행 파일 유도

🛡️ 대응 방법

Poetry를 1.1.9 또는 1.2.0b1 이상의 최신 버전으로 업데이트하십시오.

🔧 검증 코드

출력된 버전이 1.1.9 또는 1.2.0b1보다 낮은지 확인하여 취약 여부를 판단합니다.

Shell / Script
poetry --version

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Python