
CVE-2025-50460에 대한 기술 세부 정보 및 익스플로잇
상태: 분석 대기 중
이 CVE 기록은 NVD 보강 작업을 위해 표시되었습니다.ms-swift 프로젝트 버전 3.3.0에서 PyYAML 라이브러리(버전 = 5.3.1)의 yaml.load()를 사용하는 tests/run.py의 안전하지 않은 역직렬화로 인해 원격 코드 실행(RCE) 취약점이 존재합니다. 공격자가 --run_config 매개변수에 전달된 YAML 설정 파일의 내용을 제어할 수 있는 경우 역직렬화 중에 임의의 코드가 실행될 수 있습니다. 이는 전체 시스템 손상으로 이어질 수 있습니다. 악성 YAML 파일이 로드될 때 취약점이 트리거되어 os.system()과 같은 임의의 Python 명령 실행이 가능합니다. PyYAML을 버전 5.4 이상으로 업그레이드하고 yaml.safe_load()를 사용하여 문제를 완화하는 것이 좋습니다.
안전하지 않은 yaml.load() 사용과 취약한 버전의 PyYAML 라이브러리(≤ 5.3.1)의 조합으로 인해 modelscope/ms-swift 프로젝트에 원격 코드 실행(RCE) 취약점이 존재합니다. 문제는 tests/run.py 스크립트에 있으며, 사용자가 제공한 YAML 설정 파일이 yaml.FullLoader와 함께 yaml.load()를 사용하여 역직렬화됩니다.
공격자가 --run_config 인수에 제공된 YAML 설정 파일을 제어하거나 교체할 수 있는 경우, 임의 코드 실행을 초래하는 악성 페이로드를 주입할 수 있습니다.
tests/run.pyif args.run_config is not None and Path(args.run_config).exists():
with open(args.run_config, encoding='utf-8') as f:
run_config = yaml.load(f, Loader=yaml.FullLoader)
exploit.yaml)!!python/object/new:type
args: ["z", !!python/tuple [], {"extend": !!python/name:exec }]
listitems: "__import__('os').system('mkdir HACKED')"
import yaml
with open("exploit.yaml", "r") as f:
cfg = yaml.load(f, Loader=yaml.FullLoader)
이로 인해 os.system이 실행되어 코드 실행이 입증됩니다.
yaml.load()를 yaml.safe_load()로 교체# Before
yaml.load(f, Loader=yaml.FullLoader)
# After
yaml.safe_load(f)
| 필드 | 값 |
|---|
| CVE ID | CVE-2025-50460 |
| CVSS 점수 | 추후 결정 |
| CWE | CWE-502: 신뢰할 수 없는 데이터의 역직렬화 |
| 보고 날짜 | 2025-04-25 |
| 공개 날짜 | 2025-07-30 |
| 영향 받는 버전 | 최신 |
| 수정 버전 |