아치 리눅스(Arch Linux) 사용자들이 주로 이용하는 비공식 패키지 저장소인 AUR(Arch User Repository)에서 대규모 공급망 공격이 발생해 408개 이상의 패키지가 정보 탈취 악성코드와 eBPF 루트킷에 감염되는 심각한 보안 사고가 있었습니다. 공격자는 기존의 신뢰받는 패키지 관리자(maintainer)를 사칭하여 버려진(orphaned) 패키지들을 채택한 뒤, 해당 패키지의 빌드 스크립트(PKGBUILD)에 악성 코드를 삽입한 것으로 드러났습니다. 현재 AUR 관리자들이 신속하게 대응하여 대부분의 악성 커밋을 제거했지만, 이미 감염된 시스템에 대한 조치가 시급한 상황입니다.
이번 공격은 최소 두 가지 별도의 악성 의존성을 포함하고 있었습니다. 초기 감염 패키지는 `preinstall` 스크립트를 통해 `npm`을 실행하여 악성 페이로드인 `atomic-lockfile`을 설치하도록 변경되었습니다. 이후에는 `Bun`을 사용하여 악성 `js-digest`를 설치하는 방식으로 진화했습니다. 특히 이번 공격은 단순히 정보를 탈취하는 것을 넘어, 리눅스 커널의 기능을 확장하는 eBPF(extended Berkeley Packet Filter) 기반의 루트킷까지 포함하고 있어 시스템의 신뢰성을 완전히 훼손할 수 있다는 점에서 매우 위험합니다. 감염된 패키지들은 주로 사용 빈도가 낮은 것들이었지만, 감염 범위가 넓어 많은 사용자가 잠재적 위험에 노출되었습니다.
이번 사건은 오픈소스 소프트웨어 공급망 보안의 취약성을 다시 한번 보여주는 사례입니다. AUR과 같이 사용자들이 자유롭게 패키지를 공유하고 관리자를 변경할 수 있는 시스템은 유연성을 제공하지만, 동시에 악의적인 공격에 노출될 위험도 큽니다. 특히 버려진 패키지를 누구나 채택할 수 있는 정책은 공격자가 쉽게 침투할 수 있는 통로가 될 수 있습니다. 아치 리눅스 사용자들은 시스템 점검 스크립트를 통해 감염 여부를 확인하고, 만약 감염이 확인되면 모든 자격 증명을 교체하고 운영체제를 재설치하는 등 즉각적인 조치를 취해야 합니다. 또한, 앞으로는 AUR 패키지 설치 시 PKGBUILD 소스 코드를 직접 검토하는 등 더욱 신중한 접근이 필요하며, AUR 자체의 패키지 인수 정책에 대한 근본적인 개선 논의가 필요해 보입니다.