apt

2 개의 포스트

깃랩, 옴니버스 패 (새 탭에서 열림)

GitLab은 Omnibus 패키지의 무결성을 보장하기 위해 사용하는 GPG 서명 키의 만료일을 기존 2026년 2월 14일에서 2028년 2월 16일로 연장했습니다. 이번 조치는 보안 정책을 준수함과 동시에 새로운 키로 교체할 때 발생하는 사용자의 작업 부담을 최소화하기 위한 결정입니다. 패키지 서명을 직접 검증하는 환경의 사용자들은 보안 신뢰를 유지하기 위해 시스템의 공개 키 정보를 갱신해야 합니다. **Omnibus 패키지 서명 키의 역할과 특징** * GitLab은 CI 파이프라인에서 생성된 모든 Omnibus 패키지가 변조되지 않았음을 증명하기 위해 GNU Privacy Guard(GPG) 키를 사용하여 서명합니다. * 이 키는 OS 패키지 매니저(apt, yum 등)에서 사용하는 저장소 메타데이터 서명 키나 GitLab Runner용 GPG 키와는 별개로 관리되는 독립적인 키입니다. * GitLab 보안 정책에 따라 키 탈취 시의 피해를 제한하기 위해 주기적으로 만료일을 관리하며, 이번에 유효 기간을 2028년까지로 늘렸습니다. **키 교체 대신 만료일을 연장한 이유** * 새로운 키를 생성하여 교체(Rotation)하는 방식은 모든 사용자가 기존에 신뢰하던 키를 삭제하고 새 키를 다시 등록해야 하는 번거로움을 유발합니다. * 사용자 환경의 혼란과 서비스 중단 가능성을 줄이기 위해, 기존 키의 정체성은 유지하면서 만료 기한만 연장하는 방식을 선택했습니다. **사용자 조치 사항 및 업데이트 방법** * GitLab Omnibus 패키지의 서명을 수동으로 검증하거나, 패키지 매니저가 서명을 강제로 검증하도록 설정한 경우에만 최신 키로 업데이트하면 됩니다. * 별도의 서명 검증 설정을 하지 않고 기본 패키지 매니저 설정을 사용하는 일반적인 경우에는 추가 조치 없이도 패키지 설치 및 업데이트가 가능합니다. * 키 갱신이 필요한 경우, GPG 키 서버에서 이메일(`[email protected]`) 또는 키 ID(`98BF DB87 FCF1 0076 416C 1E0B AD99 7ACC 82DD 593D`)를 검색하여 최신 공개 키를 가져올 수 있습니다. * 또한, GitLab 공식 패키지 저장소(packages.gitlab.com)에서 제공하는 직접 링크를 통해 GPG 공개 키 파일을 다운로드하여 적용할 수도 있습니다. 서명 검증 과정에서 문제가 발생하거나 상세한 기술적 도움이 필요한 경우 GitLab의 'omnibus-gitlab' 이슈 트래커를 통해 문의할 수 있습니다. 보안상의 안전을 위해 패키지 서명을 검증하는 환경이라면 만료일이 도래하기 전 미리 공개 키를 갱신하는 것을 권장합니다.

2023-03-08 사건: 플랫폼 수준의 영향 깊이 살펴보기 | Datadog (새 탭에서 열림)

2023년 3월 8일 발생한 Datadog의 전사적 서비스 장애는 시스템 관리 데몬인 systemd의 동작 변경과 자동 보안 업데이트 설정이 결합되어 발생한 이례적인 사건입니다. Ubuntu 22.04 환경에서 systemd-networkd가 재시작될 때 기존 IP 라우팅 규칙을 모두 삭제하는 새로운 기본 동작이 활성화되었고, 이것이 전 지역 노드에 동시다발적인 자동 패치로 실행되면서 대규모 네트워크 중단으로 이어졌습니다. 이 사고는 인프라 전반에 걸친 자동화된 변경 관리와 점진적 배포 원칙이 보안 패치라는 예외 상황에서 어떻게 무력화될 수 있는지를 보여줍니다. **systemd-networkd의 IP 규칙 삭제 동작** * 2020년 12월 배포된 systemd v248부터 `systemd-networkd`는 시작 시 자신이 파악하지 못한 모든 IP 규칙(IP rules)을 삭제(flush)하는 동작을 도입했습니다. * 이후 v249에서 `ManageForeignRoutingPolicyRules` 설정을 통해 이 동작을 거부할 수 있는 옵션이 추가되었으나, 기본값은 여전히 기존 규칙을 삭제하는 방식이었습니다. * Datadog이 마이그레이션 중이던 Ubuntu 22.04는 이 위험한 기본 설정이 포함된 systemd v249를 사용하고 있었습니다. **보안 패치와 자동 업데이트의 결합** * 2023년 3월 7일, systemd의 CVE 취약점을 해결하기 위한 보안 패치가 Ubuntu 저장소에 업데이트되었습니다. * Datadog의 서버들은 Ubuntu의 기본 설정인 `unattended-upgrades`를 사용하고 있었으며, 이는 매일 특정 시간(06:00 UTC)에 보안 업데이트를 자동으로 수행하도록 설정되어 있었습니다. * 이 보안 패치가 설치되면서 `systemd-networkd` 서비스가 재시작되었고, 그 즉시 노드의 핵심적인 네트워크 라우팅 규칙들이 모두 삭제되었습니다. **점진적 배포 전략의 무력화** * Datadog은 평소 새로운 OS나 설정을 도입할 때 실험용 클러스터부터 시작해 스테이징, 소규모 리전, 대규모 리전 순으로 수주에 걸쳐 점진적으로 배포하는 엄격한 프로세스를 따릅니다. * 하지만 시스템 레벨의 자동 업데이트(unattended-upgrades)는 이러한 점진적 배포 통제를 우회하여 전 세계 모든 리전의 노드에 거의 동시에 적용되었습니다. * 결과적으로 전체 서버의 90% 이상을 차지하던 Ubuntu 22.04 노드들이 동시다발적으로 네트워크 불능 상태에 빠지게 되었습니다. **실용적인 교훈과 권장사항** 운영 환경에서 OS 배포판을 업그레이드할 때는 시스템 구성 요소(특히 systemd와 같은 핵심 데몬)의 기본 동작 변경 사항을 상세히 검토해야 합니다. 또한, 보안을 위한 자동 업데이트라 할지라도 인프라 전체에 동시에 적용되는 방식은 위험할 수 있으므로, 업데이트 주기를 리전별로 분산하거나 자체적인 패키지 미러를 통해 보안 패치 역시 점진적 배포 파이프라인의 통제하에 두는 것이 권장됩니다.