Salesforce 인스턴스를 노린 대규모 데이터 도난: Salesloft Drift 공격 분석
Google Threat Intelligence Group
Mandiant
해당 블로그의 원문은 2025년 8월 27일 Google Cloud 블로그(영문)에 게재되었습니다.
작성자: Austin Larsen, Matt Lin, Tyler McLellan, Omar ElAhdan
업데이트 (8월 28일)
GTIG가 식별한 새로운 정보에 따르면, 이번 침해의 범위는 Salesloft Drift와 Salesforce의 통합에만 국한되지 않으며 다른 통합에도 영향을 미칩니다. 이제 모든 Salesloft Drift 고객은 Drift 플랫폼에 저장되었거나 연결된 모든 인증 토큰을 잠재적으로 손상된 것으로 간주할 것을 권고합니다.
2025년 8월 28일, Google의 조사 결과 공격자는 "Drift Email" 통합에 사용되는 OAuth 토큰 또한 침해한 것으로 확인되었습니다. 2025년 8월 9일, 위협 행위자는 이 토큰을 사용하여 극소수의 Google Workspace 계정에 저장된 이메일에 접근했습니다. 잠재적으로 접근되었을 수 있는 유일한 계정은 Salesloft Drift와 통합되도록 특별히 구성된 계정이었으며, 공격자는 고객의 Workspace 도메인 내 다른 어떤 계정에도 접근할 수 없었습니다.
이러한 조사 결과에 따라 Google은 고객을 보호하기 위해 영향을 받은 사용자를 식별하고, Drift Email 애플리케이션에 부여된 특정 OAuth 토큰을 철회했으며, 추가 조사가 진행되는 동안 Google Workspace와 Salesloft Drift 간의 통합 기능을 비활성화했습니다. Google은 영향을 받은 모든 Google Workspace 관리자에게 통지하고 있습니다. 분명히 말씀드리지만, Google Workspace 또는 Alphabet 자체는 침해되지 않았습니다.
조직은 즉시 Drift 인스턴스에 연결된 모든 타사 통합을 검토하고, 해당 애플리케이션의 사용자 인증 정보를 철회 및 교체하며, 모든 연결된 시스템에서 무단 접근 징후를 조사할 것을 권장합니다.
Salesloft는 현재 Mandiant와 협력하여 조사 지원을 받고 있습니다. 자세한 내용은 Salesloft의 업데이트된 권고사항을 참조하세요.
서문
Google Threat Intelligence Group(GTIG)은 UNC6395로 추적되는 행위자가 수행한 광범위한 데이터 절도 캠페인에 대해 조직에 경고하는 권고를 발표합니다. 이 행위자는 2025년 8월 8일부터 늦어도 2025년 8월 18일까지 Salesloft Drift 타사 애플리케이션과 관련된 손상된 OAuth 토큰을 통해 Salesforce 고객 인스턴스를 표적으로 삼았습니다.
이 행위자는 수많은 기업 Salesforce 인스턴스에서 대량의 데이터를 체계적으로 내보냈습니다. GTIG는 이 위협 행위자의 주요 의도가 사용자 인증 정보를 수확하는 것이라고 판단합니다. 데이터가 유출된 후, 행위자는 피해자 환경을 손상시키는 데 잠재적으로 사용될 수 있는 비밀(secrets)을 찾기 위해 데이터를 검색했습니다. GTIG는 UNC6395가 Amazon Web Services(AWS) 액세스 키(AKIA), 비밀번호, Snowflake 관련 액세스 토큰과 같은 민감한 인증 정보를 노리는 것을 관찰했습니다. UNC6395는 쿼리 작업을 삭제하여 운영 보안 인식을 보여주었지만, 로그는 영향을 받지 않았으므로 조직은 데이터 노출 증거에 대해 관련 로그를 검토해야 합니다.
당시 사용 가능한 데이터에 따르면, Salesloft는 Salesforce와 통합하지 않는 고객은 이 캠페인으로 인해 영향을 받지 않았다고 밝혔습니다.
2025년 8월 20일, Salesloft는 Salesforce와 협력하여 Drift 애플리케이션의 모든 활성 액세스 및 새로 고침 토큰을 취소했습니다. 또한 Salesforce는 추가 조사가 있을 때까지 Salesforce AppExchange에서 Drift 애플리케이션을 제거했습니다. 이 문제는 Salesforce 플랫폼 자체의 취약점으로 인한 것이 아닙니다.
GTIG, Salesforce 및 Salesloft는 영향을 받은 조직에 통지했습니다.
위협 세부 정보
위협 행위자는 Case, Account, User, Opportunity와 같은 Salesforce 개체와 관련된 정보를 검색하기 위해 쿼리를 실행했습니다. 예를 들어, 위협 행위자는 각 관련 Salesforce 개체에서 고유한 개수를 얻기 위해 다음과 같은 일련의 쿼리를 실행했습니다.
SELECT COUNT() FROM Account;
SELECT COUNT() FROM Opportunity;
SELECT COUNT() FROM User;
SELECT COUNT() FROM Case;
사용자 정보 조회
SELECT Id, Username, Email, FirstName, LastName, Name, Title, CompanyName,
Department, Division, Phone, MobilePhone, IsActive, LastLoginDate,
CreatedDate, LastModifiedDate, TimeZoneSidKey, LocaleSidKey,
LanguageLocaleKey, EmailEncodingKey
FROM User
WHERE IsActive = true
ORDER BY LastLoginDate DESC NULLS LAST
LIMIT 20
케이스 데이터 조회
SELECT Id, IsDeleted, MasterRecordId, CaseNumber <snip>
FROM Case
LIMIT 10000
권장 사항
권장 사항 GTIG의 데이터 무단 반출 관련 관찰 결과에 따라, Salesloft Drift를 사용하여 써드파티 플랫폼(Salesforce 등)과 연동하는 조직은 데이터가 유출되었을 가능성을 고려하고 즉각적인 복구 조치를 취해야 합니다.
영향을 받은 조직은 연동된 플랫폼 내에 포함된 민감한 정보 및 보안 비밀(secrets)을 검색하고, API 키 취소, 자격 증명 교체 등 적절한 조치를 취하며, 위협 행위자에 의해 해당 보안 비밀이 오용되었는지 여부를 추가로 조사해야 합니다.
침해 여부 조사 및 노출된 보안 기밀 사항 검색
-
조직의 Drift 인스턴스와 관련된 모든 써드파티 연동을 검토합니다(Drift 관리자 설정 페이지에서 접근 가능).
-
각 연동된 써드파티 애플리케이션 내에서 아래 IOC(침해 지표) 섹션에 제공된 IP 주소와 User-Agent 문자열을 검색합니다. 이 목록에는 현재까지 관찰된 Tor 네트워크의 IP가 포함되어 있지만, Mandiant는 Tor 이그레스 노드에서 비롯된 모든 활동에 대해 더 광범위하게 검색할 것을 권장합니다.
-
Drift 연결 사용자와 관련된 비정상적인 활동이 있는지 Salesforce Event Monitoring 로그를 검토합니다.
-
Drift Connected App의 인증 활동을 검토합니다.
-
실행된 SOQL 쿼리를 기록하는 UniqueQuery 이벤트를 검토합니다.
-
위협 행위자가 사용한 특정 쿼리를 얻기 위해 Salesforce 지원 케이스를 엽니다.
-
Salesforce 객체에서 다음과 같은 잠재적 보안 비밀을 검색합니다.
-
장기 AWS 액세스 키 식별자를 위한
AKIA
-
Snowflake 자격 증명을 위한
Snowflake
또는snowflakecomputing.com
-
자격 증명 자료에 대한 잠재적 참조를 찾기 위한
password
,secret,key
-
VPN 또는 SSO 로그인 페이지와 같이 조직별 로그인 URL과 관련된 문자열
-
Trufflehog 같은 도구를 실행하여 보안 비밀 및 하드코딩된 자격 증명을 찾습니다
자격 증명 취소 및 교체
-
Drift 인스턴스와의 써드파티 애플리케이션 연동과 관련된 API 키, 자격 증명 및 인증 토큰을 각 연동된 써드파티 애플리케이션 내에서 취소하고 교체합니다.
-
발견된 키 또는 보안 비밀을 즉시 취소하고 교체합니다.
-
관련 사용자 계정의 비밀번호를 재설정합니다.
-
Salesforce 연동의 경우, 세션 설정(Session Settings)에서 세션 시간 초과 값을 구성하여 침해된 세션의 수명을 제한합니다.
접근 제어 강화
-
Connected App 범위 검토 및 제한: 애플리케이션이 최소한의 필수 권한을 갖도록 하고, 전체 접근(
full
access)과 같은 지나치게 관대한 범위를 피하도록 보장합니다 -
Connected App에 대한 IP 제한 강제: 앱 설정에서 "IP Relaxation" 정책을 "IP 제한 강제(Enforce IP restrictions)"로 설정합니다.
-
로그인 IP 범위 정의: 사용자 프로필에서 신뢰할 수 있는 네트워크에서만 접근을 허용하도록 IP 범위를 정의합니다.
-
"API Enabled" 권한 제거: 프로필에서 "API Enabled" 권한을 제거하고, 권한 세트(Permission Set)를 통해 승인된 사용자에게만 부여합니다.
추가 지침 및 업데이트는 Salesloft Trust Center 및 Salesforce 자문에서 확인할 수 있습니다.
감사의 말씀
이 위협에 대응하는 데 협력하고 지원해 주신 Salesforce, Salesloft 및 기타 신뢰할 수 있는 파트너들에게 감사드립니다.
IOCs(침해 지표)
다음 침해 지표는 등록된 사용자를 위해 Google Threat Intelligence(GTI) 컬렉션에서 확인할 수 있습니다.