당신은 나를 감사(Audit)할 수 없습니다!' Microsoft 365를 타깃으로 한 공격을 이어가고 있는 'APT29'

Douglas Bienstock
Aug 18, 2022
5 min read
|   Last updated: Aug 24, 2022

맨디언트는 러시아 대외 정보국(SVR, Foreign Intelligence Service)이 배후에 있는 것으로 보이는 러시아 스파이 그룹인 APT29를 2014년부터 추적하고 있습니다. 최근 APT29가 미국과 NATO 회원국을 목표로 위협 행위를 하는 정황을 포착하였습니다. APT29는 여러 위협 행위가 공개되었음에도 위협 활동을 멈추지 않고 있습니다. 최근 관찰한 APT29의 활동은 NATO 회원국의 외교 정책에 영향을 끼칠 수 있는 조직에 초점을 맞추고 있습니다. 목표로 삼은 조직 중에는 과거에 APT29에 의해 침해 사고를 당한 곳도 포함됩니다. 이처럼 지속적이고 공격적인 성향을 보이는 이유는 러시아 정부가 내준 과제인 중요 정보 탈취를 위함이라 볼 수 있습니다.

맨디언트는 Microsoft 365를 대상으로 탁월한 운영 보안(Operational Security)과 고급 전술 역량을 보이는 APT29의 활동을 관찰하였습니다. 맨디언트는 APT29의 최근 활동에서 몇 가지 새로운 TTP(기술, 전술, 절차)에 주목하고 있습니다.

감사 기능 비활성화

Microsoft 365는 개인 사용자부터 조직까지 적합한 플랜(Plan)을 선택할 수 있도록 다양한 구독 조건을 제공합니다. 조직에서 일반적으로 선택하는 플랜으로는 E1, E3, E5가 있으며 각 플랜에 따라 이용 가능한 기능이 다릅니다.

위협 행위자의 시각으로 볼 때 Microsoft 365의 가장 골치 아픈 기능은 Purview Audit입니다. 이 기능은 예전에 Advanced Audit으로 불리기도 했습니다. 참고로 Purview Audit 기능은 Office 365 E5, A5, G5 및 Mirosoft 365 Enterprise E5, A5, G5 플랜을 구독할 경우 이용할 수 있습니다. 이 기능이 공격자를 골치 아프게 하는 이유는 간단합니다. 조직원들의 Microsoft 365 이용 관련 감사 활동에 대한 가시성을 제공하며 감사 로그를 통해 포렌식 및 규정 준수 조사를 수행할 수 있기 때문입니다.

Purview Audit 기능을 활성화하면 이용자가 이메일에 접근할 때마다 사용자 에이전트 문자열, 타임스탬프, IP 주소 및 사용자 로그가 기록됩니다. Graph API, 아웃룩, 브라우저 등 어떤 경로로 접근하건 이메일에 대한 액세스 로그가 남습니다. 이 기록은 위협 행위자가 특정 이메일에 접근하고 있는지 확인하고, 노출 범위를 파악하는 데 있어 중요한 원천 정보입니다. 또한, 위협 행위자가 애플리케이션 가장(Application Impersonation) 또는 Graph API 같은 기술을 사용해 어떤 이메일 사서함에 접근했는지 알아내기 위한 유일한 방법이기도 합니다.

맨디언트는 APT29가 손상된 테넌트의 대상 계정에서 Purview Audit을 비활성화하는 것을 관찰하였습니다. 이 기능을 비활성화한 후 위협 행위자는 특정 사서함을 타깃으로 삼아 침해 활동을 시작합니다. 이 시점부터 로그가 남지 않아 어떤 타깃을 대상으로 삼는지 확인할 수 없습니다. APT29가 목표로 삼는 대상 그리고 그들이 사용하는 TTP를 고려할 때 Purview Audit 비활성화 후 본격적인 이메일 수집 활동이 시작되었을 가능성이 높습니다. 이에 대한 상세 내용 및 침해 방지를 위한 조언은 맨디언트의 Microsoft 365 관련 백서를 참조 바랍니다. 더불어 맨디언트는 감사 기능이 비활성화된 사용자가 있을 경우 이를 리포팅하는 새 모듈을 추가하여 Azure AD Investigator를 업데이트하였습니다. 자세한 내용은 깃허브 페이지를 참조 바랍니다.

휴면 계정의 MFA 남용 

다양한 인증 수단을 적용하는 MFA(Multi-Factor Authentication)는 위협 행위자의 계정 탈취를 막는 중요한 도구입니다. 비밀번호를 넘어 OTP, 생체 인식 등 다양한 인증 수단을 적용하면 계정 손산 위험을 크게 줄일 수 있습니다. 그렇다고 MFA가 모든 것을 해결하는 만병통치약은 아닙니다. 맨디언트는 이전에 위협 행위자가 푸시 기반 MFA를 남용하는 것의 위험성을 언급한 적이 있습니다. 이 문제 해결을 위해 마이크로소프트는 MFA 알림을 받을 경우 사용자가 Authenticator 앱 알림을 통해 일치하는 숫자를 선택하는 인증 방식의 프리뷰를 공개하였습니다.

맨디언트는 APT29를 비롯한 여러 위협 행위자가 Azure Active Directory 및 기타 플랫폼에서 MFA에 대한 자체 등록 프로세스를 이용하는 것을 관찰하였습니다. 조직에서 처음 MFA를 시행할 때 대부분의 플랫폼은 사용자가 다음 로그인을 할 때 MFA 장치를 등록하게 하는 것을 기본 설정값으로 합니다. Azure Active Directory 및 기타 플랫폼의 기본 구성에는 MFA 등록 프로세스를 강화할 다른 방안은 없습니다. 따라서 사용자 이름과 암호를 알고 있을 경우 가장 먼저 MFA를 등록할 수 있습니다.

한 예에서 APT29는 알 수 없는 수단을 통해 얻은 사서함 목록을 대상으로 암호 추측 공격을 수행하였습니다. 위협 행위자는 사용한 적이 없는 계정의 비밀번호를 성공적으로 추측하였습니다. 계정은 휴면 상태였기 때문에 Azure Active Directory는 APT29에게 MFA 등록을 하라는 메시지를 전달하였습니다. 일단 등록이 되면 APT29는 계정을 사용해 인증 및 MFA 기반으로 Azure Active Directory를 사용하는 조직의 VPN 인프라에 접근할 수 있었습니다.  

맨디언트는 MFA 등록 프로세스에 대한 추가 확인 기능 제공을 MFA 플랫폼 업체에 권장하고 있습니다. Azure Active Directory의 경우 마이크로소프트는 최근 조직에서 MFA 장치 등록 같은 특정 작업을 제어할 수 있는 'Conditional Access' 기능을 출시하였습니다. 이를 이용하면 내부 네트워크 또는 신뢰할 수 있는 장치와 신뢰할 수 있는 위치에서만 MFA 장치를 등록할 수 있도록 강제할 수 있습니다. 또한, MFA 등록을 위해 MFA를 요구할 수도 있습니다. 이는 '닭이 먼저냐 달걀이 먼저냐'의 상황을 만들 수 있습니다. 따라서 이런 상황이 일어나지 않도록 하려면 조직원이 처음 합류하거나 MFA 장치를 분실했을 경우 헬프데스크에서 임시 액세스 패스를 발급하면 됩니다. 이 패스를 이용하면 제한된 시간 동안 로그인, MFA 우회, 새 MFA 장치 등록을 할 수 있습니다.  

운영 보안에 중점

APT29는 탁월한 운영 보안과 회피 전술을 보여주고 있습니다. 맨디언트는 APT29가 프록시를 사용해 피해자 환경에 대한 라스트 마일 액세스를 난독화하는 것과 Azure Virtual Machines로 전환하는 것을 관찰하였습니다. APT29에서 사용한 가상 머신은 피해 조직이 아닌 다른 Azure 구독을 통해 운영하는 것이었습니다. 맨디언트는 이 Azure 구독이 APT29가 직접 비용을 낸 것인지 아니면 다른 조직의 구독이 손상된 것인지 모릅니다. 참고로 신뢰할 수 있는 마이크로소프트 IP 주소에서 라스트 마일 액세스를 하면 탐지 가능성을 줄일 수 있습니다. Microsoft 365는 Azure에서 실행됩니다. 따라서 Azure Active Directory 로그인 및 통합 감사 로그에 이미 많은 마이크로소프트 IP가 포함되어 있습니다. 이런 이유로 IP 주소가 악성 가상 머신에 속한 것인지 Microsoft 365의 백엔드 서비스에 속한 것인지 빠르게 식별하기 어렵습니다.

맨디언트는 APT29가 악의적인 작업과 무해한 관리 작업을 섞는 것도 관찰하였습니다. 예를 들어 최근 조사한 바에 따르면 APT29는 Azure Active Directory의 전역 관리자 계정에 대한 액세스 권한을 얻었습니다. APT29는 이 계정을 사용해 애플리케이션 가장(Applciation Impersonation) 권한이 있는 서비스에 백도어를 심고 테넌트의 대상 사서함에서 이메일을 수집하기 시작하였습니다. 이를 위해 APT29는 새 인증서 또는 키 자격 증명을 추가하였습니다. 또한 악의적인 작업과 일반 작업을 섞기 위해 APT29는 백도어를 심은 서비스의 표시 이름과 일치하는 이름(Common Name)으로 인증서를 만들었습니다. 이 외에도 서비스 주체에 새 애플리케이션 주소 URL도 추가하였습니다. APT29가 추가한 주소는 악의적인 활동을 위한 것이 아닌 완전히 무해한 주소였으며 애플리케이션의 기능 관련 문서 페이지와 관련이 있었습니다. 소개한 일련의 행동은 APT29가 매우 높은 수준으로 공격을 준비하고, 악의적인 행동을 합법적인 것으로 가장하기 위한 그들의 바람을 잘 보여 줍니다.

전망

APT29는 계속해서 기술과 운영 보안을 발전시키고 있습니다. 맨디언트는 APT29가 새롭고 은밀한 방식으로 Microsoft 365에 접근하기 위한 기술과 전술을 개선하는 것에 발맞춰 나아갈 것입니다.