🔍 CVE-2021-4189

5.3
CVSS Score
MEDIUM
2022-08-24
2026-10-14 11:16
✅ 완료

🇰🇷 한글 설명

Python의 FTP 클라이언트 라이브러리 내 PASV(수동) 모드에서 호스트 신뢰 방식의 결함이 발견되었습니다. 공격자가 악성 FTP 서버를 구축하여 클라이언트가 특정 IP와 포트로 연결하도록 유도할 수 있으며, 이를 통해 클라이언트의 포트 스캐닝이 가능해집니다.

💡 쉬운 설명

FTP로 파일을 받을 때 서버가 알려주는 주소를 무조건 믿어버리는 문제입니다. 나쁜 서버가 가짜 주소를 알려주면, 내 컴퓨터가 공격자가 원하는 다른 곳으로 접속하게 만들어 정보를 캐낼 수 있습니다.

🇺🇸 원문 (English)

A flaw was found in Python, specifically in the FTP (File Transfer Protocol) client library in PASV (passive) mode. The issue is how the FTP client trusts the host from the PASV response by default. This flaw allows an attacker to set up a malicious FTP server that can trick FTP clients into connecting back to a given IP address and port. This vulnerability could lead to FTP client scanning ports, which otherwise would not have been possible.

📍 영향받는 시스템

Python FTP 클라이언트 라이브러리 (PASV 모드 사용 시)

⚔️ 공격 벡터

악성 FTP 서버를 통한 PASV 응답 내 허위 IP/포트 주입

🛡️ 대응 방법

Python 버전을 최신 보안 패치가 적용된 버전으로 업데이트하거나, FTP 클라이언트 구현 시 PASV 응답의 호스트 검증 로직을 강화해야 합니다.

🔧 검증 코드

명령어 실행 시 에러 없이 Library loaded가 출력되면 Python FTP 라이브러리가 설치되어 있음을 의미하며, 해당 라이브러리의 취약 여부는 설치된 Python 버전을 통해 확인해야 합니다.

Shell / Script
python3 -c 'import ftplib; print("Library loaded")' 2>/dev/null

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Python