VU#252619: PyTorch Lightning 2... 노트

VU#252619: PyTorch Lightning 2.4.0 이전 버전에서 발생하는 다중 역직렬화 취약성

PyTorch Lightning 2.4.0 및 이전 버전에는 신뢰할 수 없는 데이터의 안전하지 않은 역직렬화와 관련된 취약점이 있습니다. 이러한 취약점은 적절한 보안 조치 없이 torch.load()를 사용하는 것에서 비롯됩니다. 특히, 프레임워크는 임의 코드를 로드하는 위험을 완화하는 weights_only=True 매개변수를 강제 적용하지 않습니다. DeepSpeed 통합, PickleSerializer 클래스, _load_distributed_checkpoint, _lazy_load, Cloud_IO 모듈 내의 문제를 포함하여 5개의 취약점이 확인되었습니다. 이러한 구성 요소는 모델 체크포인트 및 관련 데이터를 역직렬화할 때 적절한 안전 장치를 갖추고 있지 않습니다. 이러한 취약점을 악용하면 악성 파일이 시스템 내에서 임의 코드를 실행할 수 있습니다. 이는 사용자가 알지 못하는 사이에 로컬 또는 원격 소스에서 악성 파일을 로드할 경우 전체 시스템을 손상시킬 수 있습니다. 완화 방법으로는 파일 출처 확인, 샌드박스 환경 사용, 정적 및 동적 분석 수행 등이 있습니다. torch.load()를 항상 weights_only = True와 함께 사용하여 불필요한 역직렬화 기능을 비활성화하는 것이 권장됩니다.