# 루비젬스 Rubygems.org AWS 루트 액세스 사건 – 2025년 9월

> Clean Markdown view of GeekNews topic #23588. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=23588](https://news.hada.io/topic?id=23588)
- GeekNews Markdown: [https://news.hada.io/topic/23588.md](https://news.hada.io/topic/23588.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2025-10-12T02:37:29+09:00
- Updated: 2025-10-12T02:37:29+09:00
- Original source: [rubycentral.org](https://rubycentral.org/news/rubygems-org-aws-root-access-event-september-2025/)
- Points: 1
- Comments: 0

## Topic Body

- **2025년 9월**, Rubygems.org의 AWS 루트 계정이 **무단 액세스**된 사건이 발생함
- **공개 조사 결과**, 사용자 데이터나 운영 환경에는 **손상이나 노출 증거가 없음**을 확인함
- **주요 원인**은 퇴사자 권한 해지 후에도 AWS 루트 계정 비밀번호를 즉시 변경하지 않은 점과 **공유 자격 증명 관리의 미흡** 때문임
- 사건 후 **모든 자격 증명과 비밀번호를 회전하고** 보안 감사를 강화하며, 외부 감사 및 권한 변경 프로세스를 개선함
- **기업 윤리**, **데이터 프라이버시**, **투명한 커뮤니케이션**이 반복적으로 강조되며, 커뮤니티 신뢰 회복을 위한 노력을 명확히 밝힘

---

### 개요 및 배경

루비 중앙(Ruby Central)은 2025년 9월 Rubygems.org의 AWS 루트 액세스 침해 사건에 대해 공식 사후 분석 보고서를 공개함. 이 문서는 사건 발생 경위, 조사 결과, 잘못 처리된 부분 및 향후 보안 강화를 위한 조치에 대해 투명하게 정리함.

사건은 전 관리자였던 André Arko가 권한 해지 후에도 **Rubygems.org 프로덕션 환경 및 모니터링 툴에 접근 가능**하다는 사실이 공개 블로그를 통해 밝혀지면서 시작됨. Ruby Central은 곧바로 **서비스 무결성**과 사용자 데이터 보호에 집중하며, 공개적으로 사과의 입장을 표명함.

### 사건 대응 타임라인

#### 2025년 9월 30일 주요 흐름

- **17:23 UTC:** André Arko가 본인의 루트 액세스 가능 사실을 이메일로 통지함
- **17:30 UTC:** 외부인의 블로그 포스트를 통해 **루트 계정 액세스 및 스크린샷**이 대중에 공개됨
- **17:51 UTC:** Ruby Central이 이슈 조사팀을 꾸리고, 전체 서비스와 자격 증명 점검을 시작함
- **18:20 UTC:** 기존 패스워드가 무효화된 사실을 확인함
- **18:24 UTC:** AWS 루트 계정 패스워드 재설정, MFA 인증으로 계정 복구
- **18:30 UTC:** “Credentials Report” 조회를 통해 **9월 19일 비인가자가 루트 비밀번호를 변경했음**을 확인함
- **20:45 UTC:** 모든 하위 계정 및 레거시 자격 증명 폐지, MFA 재발급, 새로운 자격 증명을 독립 금고에 보관 조치

### 사건 전개 상세

루비 중앙의 전체 인프라는 AWS 상에서 운영되며, 루트 계정 자격 증명은 3인(현직 2명, 전직 1명)만이 접근 가능한 공유 금고에 저장되어 있었음.

#### 2025년 9월 18일

- **18:40 UTC:** Arko가 프로덕션 접근 및 온콜 서비스 권한 해지 공지를 이메일로 받음
- Arko가 사용하던 AWS 자격 증명은 삭제됐지만 **루트 계정 비밀번호는 회전되지 않음**

#### 2025년 9월 19일 공격 시작

- **04:34~04:39 UTC:** 샌프란시스코 IP로 비인가자 루트 로그인, 패스워드 변경, 권한자 그룹/정책 탈퇴, IAM 전수 조사 활동 시행

#### 2025년 9월 28일

- **05:49 UTC:** 도쿄 IP에서 비인가 세션 발생, IAM 인트로스펙션 API로 사용자 메타데이터 점검  
- (Kaigi on Rails 컨퍼런스와 시기 겹침, 동일 인물 추정)

#### 2025년 9월 30일

- **15:25~15:35 UTC:** 로스앤젤레스 IP로 루트 액세스, 사용자 자격증명 획득 명령 실행(블로그에 공유된 스크린샷과 일치)
- **18:24 UTC:** Ruby Central이 루트 컨트롤 복구

### 사고 영향 및 피해 범위

- 면밀한 검토 결과 **사용자 데이터, 계정, 젬, 서비스 가용성 모두 손상 증거 없음**
- Rubygems.org는 사건 내내 정상 운영되었음
- PII, 재무 데이터 등 민감 정보 접근/유출 없었음
- 프로덕션 DB, S3, CI/CD에 변화 없음
- 다만, **공유 자격 증명 미회전 및 지속적 접근 노출**은 중대한 운영 절차상의 결함이었음

### 사고 해결 과정

- **모든 루트 및 IAM 자격 증명 폐기** 및 새로운 MFA 적용
- 관련 외부 연동(데이터독, GitHub Actions 등) 토큰 전면 회전
- **AWS CloudTrail, GuardDuty, DataDog**를 통해 핵심 변화 실시간 모니터링 강화
- IAM 권한 구조 재검토 및 불필요 권한 해지
- 외부 전문가 포함 **종합 보안 감사** 개시
- 신규 보안 런북 작성(인사 변동 시 즉각적 패스워드 회전, 분기별 점검, 사고 시 커뮤니케이션 프로세스 포함)

### 근본 원인 분석

- 공유 패스워드 관리 외부 복제가 있을 수 있다는 점 미인지
- 퇴사자 발생 시 **AWS 루트 패스워드 및 MFA를 회전하지 않은 점**
- 이 두 가지로 인해 비인가자가 루비젬스 프로덕션 인프라 접근 및 접근권한 다툼 시도 가능성 발생

### 재발 방지 대책

- 액세스 해지 절차 및 체크리스트를 **공유 금고 관리까지 확장**
- 비연동 자격 증명(특히 공유된 자격 증명)은 인사 변동 즉시 회전
- **독립 보안 감사** 외부 위임
- 누구에게 어떤 조건에서 프로덕션 권한이 부여되는지 명확한 운영자/기여자 협약 도입

### 보안 사고로 취급한 이유

- 핵심 시스템의 단일인물 통제 문제에서 비롯
- Mr. Arko는 2차 온콜 서비스를 연 $5만의 유료 컨설팅으로 제공하다 예산 구조 변경 후, 온콜 무상 제공과 교환해 **프로덕션 HTTP 로그(Pll 포함) 접근** 및 수익 창출 기회를 제안
- 이 제안이 **거버넌스·프라이버시·이해충돌** 등 본질적 문제를 내포하였고, Ruby Central은 이를 받아들일 수 없다고 판단, 운영자 구조 및 거버넌스 개편을 진행
- Arko의 PII 포함 시스템 접근 지속 확인이 결정적으로 **보안 사고로 분류되는 근거**가 됨
- 현재까지 루비젬스 데이터가 외부로 돌출·보관된 증거 없으며, **공동체 신뢰 회복 및 투명성 제고**를 약속

### 결론

- 커뮤니티의 지지와 건전한 견제를 감사
- Ruby Central은 **투명한 운영**, 책임감, 강도 높은 보안 체계로 Rubygems.org의 **안정성과 신뢰**를 계속 보장할 것임
  
Shan Cureton  
Executive Director

## Comments



_No public comments on this page._
