# 일렉트로닉 아츠 7억 개 계정 해킹 사건

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

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=17611](https://news.hada.io/topic?id=17611)
- GeekNews Markdown: [https://news.hada.io/topic/17611.md](https://news.hada.io/topic/17611.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2024-11-06T09:37:06+09:00
- Updated: 2024-11-06T09:37:06+09:00
- Original source: [battleda.sh](https://battleda.sh/blog/ea-account-takeover)
- Points: 1
- Comments: 1

## Topic Body

- EA의 개발 환경인 "integration"에서 테스트를 진행하던 중, 특정 게임의 실행 파일에 하드코딩된 자격 증명을 통해 권한 있는 액세스 토큰을 얻음.

#### 인증 문서

- API 문서의 노출 여부를 확인하기 위해 여러 엔드포인트를 스캔함.
- `/connect/api-docs/index.json`에서 Swagger JSON 파일을 발견하여 Nexus Connect API의 전체 Swagger 구현을 확인함.
- Swagger 파일을 OpenAPI 3.0 사양으로 업데이트하여 로컬 Swagger UI 서버에서 실행함.

#### 더 많은 것을 찾기 위해

- EA Desktop은 여러 백엔드 서비스를 통합하는 GraphQL API인 "Service Aggregation Layer"를 사용함.
- `gateway.int.ea.com`에서 80개 이상의 서비스 엔드포인트를 발견함.

#### 금광 발견

- 모든 엔드포인트를 요청하고 OpenAPI 사양으로 변환하여 다양한 데이터를 확인함.
- 특정 게임 팀에 대한 데이터와 같은 흥미로운 정보를 발견함.

#### 프로덕션 시간

- 프로덕션 OAuth 클라이언트로 접근 가능한 엔드포인트를 탐색함.
- `/identity/pids/me`와 `/identity/pids/me/personas` 엔드포인트를 통해 계정 정보와 "페르소나" 목록을 확인함.

#### 큰 발견

- `/identity/pids/{pidId}/personas/{personaId}` 엔드포인트를 통해 페르소나를 업데이트할 수 있음을 발견함.
- 사용자 이름 변경, 페르소나 상태 변경, 다른 계정으로의 페르소나 이동 등의 작업이 가능함.

#### 또 다른 깨달음

- `/identity/namespaces/{namespace}/personas` 엔드포인트를 통해 숨겨진 계정도 검색 가능함.
- 다른 계정의 페르소나를 자신의 계정으로 이동시켜 계정 데이터를 제어할 수 있음.

#### 세 번째 시도

- Xbox/PSN 토큰을 사용하여 2FA를 우회하고 계정에 로그인할 수 있음을 발견함.
- Xbox에서 게임에 로그인하여 피해자 계정에 접근할 수 있었음.

#### 영향

- 공격자는 페르소나 데이터를 이동시켜 사용자 이름과 게임 데이터를 훔칠 수 있음.
- Xbox를 통해 계정에 로그인하여 피해자 계정에 접근할 수 있음.
- 페르소나를 금지하거나 사용자 이름을 변경할 수 있음.

#### 몇 가지 생각

- EA가 문제를 해결하는 데 시간이 걸렸으며, 버그 바운티 프로그램이 없다는 점이 아쉬움.
- EA와의 협력은 긍정적이었음.

#### 타임라인

- 2024년 6월 16일 - EA에 취약점 보고
- 2024년 7월 8일 - 패치 1 배포 (페르소나 소유권 확인)
- 2024년 9월 10일 - 패치 4 배포 (문서 제거)

## Comments



### Comment 30806

- Author: neo
- Created: 2024-11-06T09:37:06+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=42052143) 
- EA는 모든 게임에 공통 시스템을 사용하는 것을 좋아함. Madden에서 blaze라는 공통 백엔드를 발견했으며, 웹과 TCP 엔드포인트를 가짐. 엔드포인트 호출 도구를 만들었으나 서버를 하나씩 다운시킴. 이후 API를 구축하여 탐색을 막으려 함

- Xbox를 통해 Battlefield 2042를 설치하고 성공적으로 접속함. 해커들을 좋아함

- 공격을 수행하는 데 얼마나 많은 시간과 노력이 필요한지 보여주는 노트가 흥미로울 것임

- 이 글을 즐긴 사람들은 HackerOne의 "Hacktivity" 같은 버그 바운티 플랫폼에서 더 많은 내용을 읽을 수 있음

- 이 글 덕분에 개발 및 운영 API 서버를 점검하여 OpenAPI UI/JSON 디스크립터 경로가 노출되지 않았는지 확인함

- EA 게임은 작동 여부가 불확실함. 큰 클라우드에서도 비슷한 상황이 발생할 수 있음. 인프라 세계에서는 불가능한 시나리오지만 EA 소비자 세계에서는 일상적임

- EA는 Xbox 계정을 새 계정으로 변경하는 것이 "기술적으로 불가능"하다고 주장했으나, 실제로는 가능함. 오래된 Xbox 계정을 연결할 수 없어 EA 게임을 Xbox에서 플레이할 수 없음

- 모든 계정을 차단하고 데이터베이스 백업이 없기를 바라는 것이 재미있을 것임

- 대기업에서 엔지니어로 일하는 것이 어떤 기분일지 궁금함. 여러 팀이 각기 다른 부분을 소유하고 있어 취약점이 존재할 가능성이 큼

- EA가 아직 버그 바운티 프로그램을 시작하지 않은 것이 실망스러움. 보고할 인센티브가 없어 취약점을 숨기는 사람들도 있음. EA가 업계의 흐름을 따르길 바람. 보고에 대한 보상이 없었는지 궁금함
