최근 공급망 공격(Supply Chain Attack) 증가에 따라 의존성 쿨다운(Dependency Cooldown) 방식이 주목받고 있음
쿨다운은 다른 사용자의 희생을 기반으로 하는 무임승차(Free-riding) 방식이며, 설정의 어려움과 안전성 문제도 지적됨
업로드 큐(Upload Queue) 방식을 통해 중앙 집중적인 보안 검토 및 배포 지연을 구현하는 대안 제시
Debian과 같은 시스템의 사례를 통해 업로드 큐의 실현 가능성 및 장점 강조
의존성 쿨다운(Dependency Cooldown)은 새로운 버전의 패키지를 즉시 사용하지 않고 일정 기간 대기하는 방식이다. 이는 다른 사용자들이 먼저 해당 패키지를 사용하면서 발생할 수 있는 문제를 발견하도록 하는 전략이다. 하지만, 이러한 방식은 다른 사용자의 위험 감수(Risk Taking)에 의존하는 무임승차(Free-riding) 행위라는 비판을 받는다. 특히, 쿨다운 설정의 어려움과 개인적인 `pip install`과 같은 예외 상황으로 인해 쿨다운의 효과가 제한적이라는 지적이 제기된다. 또한, 쿨다운은 패키지 관리자(Package Manager)마다 다르게 구현되어 일관성을 유지하기 어렵다는 문제점도 존재한다.
업로드 큐(Upload Queue)는 패키지 배포 전에 중앙 서버에서 보안 검토를 수행하는 방식이다. 이 방식은 패키지 게시(Package Publication)와 배포(Distribution)를 분리하여, 보안 취약점을 사전에 발견하고 대응할 수 있는 시간을 확보한다. 업로드 큐는 쿨다운과 동일한 목표를 달성하면서도, 무임승차 문제를 해결하고, 패키지 관리자 및 프로젝트에 별도의 설정을 요구하지 않는다는 장점이 있다. 또한, 자동화된 보안 스캐너(Automated Security Scanners)를 활용하여 잠재적인 위협을 더욱 효과적으로 탐지할 수 있다.
Debian 프로젝트는 이미 업로드 큐(Upload Queue)를 활용하여 패키지 배포의 안정성을 확보하고 있다. Debian의 경우, 패키지가 저장소에 업로드된 후 최소 2~10일의 대기 시간을 거쳐 '테스팅(Testing)' 배포판에 포함된다. 이러한 방식은 공급망 공격(Supply Chain Attack)의 위험을 줄이는 데 기여하며, 상업적 프로젝트의 경우, 신속한 배포를 위해 우선 검토(Expedited Review) 서비스를 유료로 제공하는 방안도 제시된다. Debian의 사례는 업로드 큐가 현실적으로 구현 가능하며, 다양한 환경에서 적용될 수 있음을 보여준다.
쿨다운(Cooldown)은 패키지 업데이트를 지연시키는 방식으로, 보안 문제를 해결하려는 시도이다. 하지만, 쿨다운은 보안 취약점(Security Vulnerability)이 발견된 경우에도 패치를 늦추는 결과를 초래할 수 있다. 또한, 쿨다운은 의존성 관리(Dependency Management)의 근본적인 문제를 해결하지 못하며, 오히려 맹목적인 업데이트 지연으로 이어질 수 있다. 따라서, 쿨다운보다는 업로드 큐와 같은 중앙 집중적인 보안 검토 시스템을 통해, 보다 효과적으로 공급망 공격에 대응하는 것이 중요하다.