본문으로 건너뛰기

도구·서비스

클라우드플레어, AI 답변 155건에 타 고객 데이터 섞였다

3줄 요약

  1. Workers AI의 GLM-5.3 장문 응답에서 요청 간 데이터 노출 확인
  2. 영향 기간은 8월 27일~9월 9일, 수정·복구 뒤 10월 26일 공개
  3. 허용 입력보다 작은 캐시와 추론 엔진의 거절 처리 결함이 겹쳐
실무개발자
청록색과 호박색 블록이 일부 섞여 있는 서버 메모리 모형
AI 생성 개념 이미지: 공유 AI 메모리에서 고객별 데이터가 섞이는 문제를 서버 모형으로 표현한 장면 · AI Ping

클라우드플레어가 10월 26일자 보고서에서 Workers AI의 GLM-5.3 응답 155건에 다른 고객의 요청 데이터가 섞였다고 밝혔다. 회사가 집계한 영향 응답은 모두 68만1280토큰보다 긴 입력에 대한 것이었다. 여러 고객이 공유하는 AI 처리 환경에서 요청 간 데이터 분리가 깨진 사고다.

영향 기간은 8월 27일부터 9월 9일까지이며, 회사는 9월 9일 수정 후 모델을 다시 공개했다. 당시 이 모델로 긴 문서나 코드를 처리한 고객에게 영향 범위와 복구 내용을 판단할 자료가 새로 공개됐다. 회사는 다른 Workers AI 모델은 영향을 받지 않았다고 밝혔다. 고의적인 악용의 증거도 찾지 못했다는 것이 회사 조사 결과다.

공개 상태 공지는 이 사고 당시를 GLM 5.3 이용 시 오류가 늘어난 장애로 기록했다. 9월 9일 14시25분에 조사, 15시02분에 원인 확인, 20시09분에 해결됐다는 갱신이 남아 있다. 모두 UTC 기준이다. 당시 상태 공지가 알린 서비스 오류와 10월 보고서에서 공개한 고객 간 데이터 노출의 범위를 함께 읽을 수 있다.

허용 입력보다 작았던 처리용 메모리

사고 당시 설정한 입력 한도는 104만8576토큰이었지만, 입력을 먼저 처리하는 GPU의 KV 캐시에는 68만1280토큰만 들어갔다. KV 캐시는 모델이 입력을 처리하며 만든 중간 정보를 보관하는 메모리다. 사용자가 설정상 허용된 길이로 요청해도 실제 처리용 메모리에는 담기지 않는 구간이 생겼다. 회사는 출시 전 용량 차이를 알았지만, 긴 입력 시험의 정상 HTTP 응답을 근거로 문제가 없다고 판단했다고 밝혔다.

금속 메모리 홀더보다 길게 놓인 호박색 타일과 옆의 회로판
AI 생성 개념 이미지: 입력 길이와 실제 처리용 메모리 용량의 차이를 교구로 표현한 장면 · AI Ping

여기에 추론 엔진 SGLang의 거절 처리 결함이 겹쳤다. 입력을 거절한다는 상태가 기록돼도 대기열은 요청이 아직 살아 있다고 판단했다. 원래 긴 입력 대신 토큰 하나짜리 임시 입력이 처리되고, 이전 요청이 남긴 메모리를 답변 생성 쪽에서 읽을 수 있었다. 입력 처리와 답변 생성을 서로 다른 장비에 나눈 경로에서 발생한 문제였다.

클라우드플레어와 개발팀이 대조한 수정 이력에는 처리 중단과 접수 거절을 어느 단계에서 끝내는지가 드러난다. 9월 6일 병합된 수정은 중단된 입력 처리 결과가 돌아왔을 때 해당 요청을 정리한다. 전송 대기 상태를 비우고 메모리와 관련 버퍼의 소유권을 돌려주며, 뒤늦게 도착한 결과를 다시 처리하지 않도록 했다.

이 초기 수정의 검증 기록은 마지막·중간 처리 조각, 지연된 결과, 전송 실패 등을 다뤘다. 작성자는 H200 환경에서 고른 시험 39개가 통과했다고 적었다. 남아 있는 메모리 관리 오류를 감추는 대신, 그 오류 검사에 도달하기 전에 요청이 가진 자원을 정리하는 방식이었다. 이는 변경 작성자가 공개한 시험 범위다.

9월 16일 병합된 후속 수정은 거절된 요청을 장비 간 전달 전에 종료시켰다. 따라서 임시 입력 계산과 전송 준비 자체를 건너뛴다. 두 작업 장비가 모두 입력을 거절한 비교 시험에서는 답변 쪽의 300초 시간 초과가 즉시 오류 응답으로 바뀌었다. 검증은 H200 두 장과 Qwen3-0.6B 모델에서 캐시 용량을 입력 한도보다 작게 설정해 진행했다. 개발자는 이를 이미 적용된 정보 격리 수정 위에서 계산 낭비와 대기를 줄이는 변경으로 설명했다. 한쪽만 거절한 비대칭 구성의 빠른 종료는 이 변경의 범위에 포함되지 않았다.

붉은 데이터 타일과 녹색 메모리 슬롯 사이를 막은 붉은 차단 장치 모형
AI 생성 개념 이미지: 거절된 요청이 메모리 전달 단계에 들어가기 전에 멈추는 과정을 모형으로 표현한 장면 · AI Ping

개발팀은 중단된 요청의 메모리 재사용 문제도 함께 다뤘다. 이미 전송에 들어간 데이터는 요청을 취소해도 뒤늦게 도착할 수 있다. 그 사이 메모리를 새 요청에 배정하면 오래된 쓰기가 새 데이터를 덮는다. 관련 수정은 전송이 끝났다는 확인이나 정해진 대기 시간이 지난 뒤에 메모리를 반환하도록 했다. 이번 장문 입력 거절 사고와 별도로 보강한 경로다. 초기 대기 기능은 기본값이 꺼진 선택 기능으로 시작했으며, 후속 공개문은 기본 보호가 포함된 버전을 따로 제시했다.

SGLang의 10월 26일 공개문은 장비를 나눈 구성의 운영자에게 버전별 보호 범위를 설명했다. 기본 보호는 Mooncake·NIXL 전송 구성의 0.5.21부터, MORI 구성과 세대 정보가 붙은 완료 확인은 0.5.22부터 포함됐다고 밝혔다. 앞선 릴리스 계열로의 소급 적용은 하지 않았으며, 실패한 전송을 완료로 잘못 알리는 추가 수정은 0.5.23에 포함된다고 적었다.

출처