과도하게 프로비저닝된 SAS 토큰이 GitHub에서 거의 3년 동안 38TB에 달하는 방대한 프라이빗 데이터를 노출했다는 이야기입니다.
위즈 리서치 팀은 최근 과도하게 프로비저닝된 SAS 토큰이 거의 3년 동안 깃허브(GitHub)에 노출되어 있었다는 것을 발견했습니다. 이 토큰은 38테라바이트의 방대한 개인 데이터 저장고에 액세스할 수 있게 해주었습니다. 이 애저 저장소에는 마이크로소프트(MS) 직원 두 명의 디스크 백업 파일 안에 숨겨진 개인 SSH 키와 같은 추가 비밀이 들어 있었습니다. 이 정보는 강력한 데이터 보안 조치의 중요성을 강조합니다.
요약
위즈리서치는 최근 2023년 6월 23일 마이크로소프트의 AI 깃허브 저장소에서 발견된 데이터 노출 사건을 공개했습니다.
GitHub를 관리하는 연구원들은 오픈 소스 AI 훈련 데이터의 버킷에 액세스하기 위해 SAS 토큰을 통한 Azure Storage 공유 기능을 사용했습니다.
이 토큰은 잘못 구성되어 의도된 버킷이 아닌 계정의 전체 클라우드 스토리지에 액세스할 수 있습니다.
이 스토리지는 비밀, 개인 키, 비밀번호 및 30,000개 이상의 내부 마이크로소프트 팀 메시지가 포함된 두 직원의 워크스테이션 디스크 백업을 포함하여 38TB의 데이터로 구성되었습니다.
SAS(Shared Access Signatures)는 Azure Storage 리소스를 공유하기 위해 서명된 URL입니다. 이 URL은 클라이언트가 데이터에 액세스하는 방법, 즉 노출되는 리소스(전체 계정, 컨테이너 또는 파일 선택), 권한 및 기간에 대한 세부적인 제어 기능으로 구성되어 있습니다. Azure Storage 설명서를 참조하십시오.
사건을 마이크로소프트에 공개한 후, SAS 토큰은 무효화되었습니다. 깃허브에 대한 첫 약속(2020년 7월 20일)부터 취소되기까지 거의 3년이 걸렸습니다. 위즈 리서치 팀이 제시한 타임라인을 참조하십시오:
하지만 WIZ Research팀에서 강조한 것처럼 공유 액세스 시그니처(SAS)와 잘못된 구성이 있었습니다.
데이터 노출
이 토큰을 사용하면 누구나 추가로 38TB의 데이터에 액세스할 수 있습니다. 여기에는 비밀 키, 개인 암호 및 수백 명의 마이크로소프트 직원이 보낸 30,000개 이상의 내부 마이크로소프트 팀 메시지와 같은 중요한 데이터가 포함됩니다.
연구원들이 강조한 바와 같이, 이를 통해 공격자는 스토리지 블롭에 악성 코드를 주입할 수 있었고, 스토리지 블롭은 마이크로소프트의 평판을 신뢰하는 사용자(아마도 AI 연구원)에 의해 다운로드될 때마다 자동으로 실행되어 공급망 공격으로 이어질 수 있었습니다.
보안 위험
연구원들에 따르면 연구에 제시된 것과 같은 계정 SAS 토큰은 높은 보안 위험을 나타냅니다. 이러한 토큰은 관리자의 모니터링 범위를 벗어나는 매우 허용적이고 오래 지속되는 토큰이기 때문입니다.
사용자가 새로운 토큰을 생성할 때 브라우저에 의해 서명되고 Azure 이벤트를 트리거하지 않습니다. 토큰을 취소하려면 관리자가 서명 계정 키를 돌려야 하므로 다른 모든 토큰을 한 번에 취소해야 합니다.
아이러니하게도 마이크로소프트 제품 기능(Azure SAS 토큰)의 보안 위험으로 인해 마이크로소프트 연구팀이 문제를 일으켰는데, 이 위험은 최근 스토리지 서비스를 위해 마이크로소프트 위협 매트릭스의 두 번째 버전에서 언급되었습니다:
시크릿 스프롤
이 예는 고급 보안 조치를 가진 조직 내에 널리 퍼져 있는 비밀의 문제를 완벽하게 강조합니다. 흥미롭게도, 그것은 어떻게 인공지능 연구팀 또는 모든 데이터 팀이 조직을 위험에 빠뜨릴 수 있는 토큰을 독립적으로 만들 수 있는지를 강조합니다. 이러한 토큰은 환경을 보호하기 위해 설계된 보안 보호 장치를 영리하게 피할 수 있습니다.
마이그레이션 전략
Azure 스토리지 사용자의 경우:
1 - 계정 SAS 토큰 회피
모니터링 기능이 부족하기 때문에 보안에 구멍이 뚫립니다. 외부에서 데이터를 공유하는 더 나은 방법은 저장된 액세스 정책이 있는 서비스 SAS를 사용하는 것입니다. 이 기능은 SAS 토큰을 정책에 바인딩하여 토큰 정책을 중앙에서 관리할 수 있습니다.
하지만 이 Azure Storage 공유 기능을 사용할 필요가 없다면 소유하고 있는 각 계정에 대해 SAS 액세스를 사용하지 않도록 설정하는 것이 좋습니다.
2 - Azure 스토리지 Analytics 활성화
스토리지 계정별로 스토리지 Analytics 로그를 통해 활성 SAS 토큰 사용량을 모니터링할 수 있습니다. Azure Metrics를 통해 SAS 인증 요청을 모니터링하고 SAS 토큰을 통해 액세스된 스토리지 계정을 최대 93일 동안 식별할 수 있습니다.
모두를 위해:
1 - 중요한 자격 증명을 위해 Github 주변을 감사합니다
Fortune 100대 기업의 90%를 포함하여 약 9천만 개의 개발자 계정, 3억 개의 호스팅된 저장소 및 400만 개의 활동 조직을 보유하고 있는 GitHub는 눈에 보이는 것보다 훨씬 더 큰 공격 표면을 보유하고 있습니다.
지난해 깃과디언은 공공 저장소에서 유출된 비밀 1천만 건을 적발했는데, 이는 전년 대비 67% 증가한 수치입니다.
깃허브는 어느 조직에서나 보안 경계의 일환으로 적극적으로 감시되어야 합니다. 플랫폼에서 유출된 자격 증명과 관련된 사건들은 대기업들에게 엄청난 침해를 계속 야기하고 있으며, 마이크로소프트의 보안 보호 장치에 이처럼 구멍이 뚫린 것도 1년 전 도요타의 데이터 유출 사건을 상기시키지 않을 수 없었습니다.
2022년 10월 7일, 일본에 본사를 둔 자동차 제조업체인 토요타는 거의 5년 동안 실수로 공공 깃허브 보고서에 고객 데이터에 접근할 수 있는 자격 증명을 노출시켰다고 밝혔습니다. 그 코드는 2017년 12월부터 2022년 9월까지 공개되었습니다.
회사에 개발팀이 있는 경우 회사의 비밀 중 일부(API 키, 토큰, 암호)가 공용 GitHub에 저장됩니다. 따라서 공격 표면 관리 프로그램의 일부로 GitHub 공격 표면을 감사하는 것이 좋습니다.
파이널 워즈
규모에 상관없이 모든 조직은 새롭게 등장하는 광범위한 위험에 대처할 준비가 되어 있어야 합니다. 이러한 위험은 종종 오늘날의 기업에서 광범위한 소프트웨어 작업을 충분히 모니터링하지 못했기 때문에 발생합니다. 이 경우 인공지능 연구팀이 실수로 보안 가드레일을 우회하여 잘못 구성된 클라우드 스토리지 공유 링크를 생성하고 노출시켰습니다. 그러나 지원, 영업, 운영 또는 마케팅과 같은 몇 개의 다른 부서가 비슷한 상황에 처할 수 있을까요? 소프트웨어, 데이터 및 디지털 서비스에 대한 의존도가 높아짐에 따라 전 세계적으로 사이버 위험이 증폭되고 있습니다.
기밀 정보의 확산과 이와 관련된 위험을 방지하려면 보안 팀의 감독 및 거버넌스 능력을 재평가해야 합니다.
'SW > 인공지능' 카테고리의 다른 글
하이퍼 드라이브 개발을 위한 코드 생성을 위한 5가지 ChatGPT 대안 (0) | 2023.12.31 |
---|---|
위상 분류 : 의존성 관리를 위한 기초 알고리즘 (0) | 2023.12.30 |
인공지능과 기계학습을 위한 ReactJS: 강력한 결합 (0) | 2023.12.28 |
소프트웨어 개발자 : ChatGPT 바드 AI 유용하게 사용 방법 (0) | 2023.12.24 |
소프트웨어 개발에 있어서 AI의 미래: 동향과 혁신 (0) | 2023.12.23 |