프루프포인트(Proofpoint) 연구진에 따르면 클라우드에 호스팅되는 문서가 랜섬웨어 공격자의 손이 닿지 않는 곳에 있고(랜섬웨어 공격은 전통적으로 엔드포인트 또는 네트워크 드라이브의 데이터를 타깃으로 삼았다), 아울러 클라우드 서비스의 자동 백업 기능으로 (랜섬웨어 공격자의) 암호화가 통하지 않을 수 있지만 그렇다 하더라도 기업들을 난관에 봉착하게 만드는 방법은 여전히 존재한다.
연구진은 오피스 365와 마이크로소프트 365 클라우드에서 마이크로소프트 원드라이브 및 셰어포인트 온라인 서비스의 문서 버전 설정을 악용하는 개념증명 공격 시나리오를 발견했다고 밝혔다. 이런 서비스는 API를 통해 대부분의 기능에 액세스할 수 있기 때문에 명령줄 인터페이스와 파워셸 스크립트를 사용하여 이 잠재적인 공격을 자동화할 수도 있다고 회사 측은 덧붙였다.
문서 버전 수 줄이기
프루프포인트에 의하면 공격 체인은 해커가 1개 이상의 셰어포인트 온라인 또는 원드라이브 계정을 손상시키는 것으로 시작된다. 이는 피싱이나, 사용자 컴퓨터에 맬웨어를 감염시킨 다음 인증된 세션을 하이재킹하거나, 오쓰(OAuth)를 통해 서드파티 애플리케이션에 계정 액세스 권한을 부여하도록 사용자를 속이는 등 다양한 방법으로 이뤄질 수 있다. 이를 통해 공격자는 계정이 손상된 사용자의 모든 문서에 액세스할 수 있게 된다. 셰어포인트에서 이를 문서 라이브러리라고 하며, 기본적으로 여러 문서와 해당되는 메타데이터를 저장할 수 있는 목록이다. 원드라이브와 셰어포인트의 한 가지 문서 기능은 편집할 때마다 자동 저장 기능에서 사용되는 파일 버전 관리다. 기본적으로 문서에는 최대 500개의 버전이 있을 수 있지만 이 설정은 하나의 버전으로만 구성할 수 있다.
연구진은 “셰어포인트 온라인 및 원드라이브의 모든 문서 라이브러리에는 저장된 버전 수에 관해 사용자가 구성할 수 있는 설정이 있으며, 사이트 소유자는 역할과 관계없이 이를 변경할 수 있다”라면서, “관리자 역할이나 관련 권한이 필요하지 않다. 버전 관리 설정은 각 문서 라이브러리의 목록 설정 아래에 있다”라고 설명했다.
이는 2가지 공격 방법을 가능하게 한다. 첫째, 공격자가 문서 라이브러리의 파일을 501번 편집하고 매번 변경할 때마다 파일을 암호화하는 것이다. 이렇게 하면 이전에 저장된 500개 버전이 모두 해당 문서의 암호화된 버전으로 덮어쓰게 된다. 문제는 암호화 작업을 여러 번 반복해야 하기 때문에 시간이 오래 걸리고 리소스를 많이 사용한다는 점이다.
더 빠른 두 번째 공격 방법은 버전 관리 설정을 1로 수정한 다음 2번 편집하고 각 변경 후에 파일을 암호화하는 것이다. 이렇게 하면 이전에 저장된 모든 버전이 삭제된다. 최소한 사용자 또는 사용자가 속한 조직에서 직접 액세스할 수 있는 버전은 사라진다.
공격 한계
물론 이 공격에는 한계가 있다. 바로 사용자의 엔드포인트와 클라우드에 저장되고 동기화되는 문서다. 공격자가 엔드포인트 액세스 권한이 없는 경우 사용자의 로컬 복사본에서 파일을 복원할 수 있다. 또 다른 잠재적인 한계는 마이크로소프트 지원을 통한 복구다. 프루프포인트가 이 시나리오를 보고하기 앞서 마이크로소프트와 연락한 결과, 이 회사는 고객 지원 담당자가 14일 전의 파일 버전을 복원할 수 있다고 밝혔다. 이는 사용자나 조직이 직접 액세스할 수 없는 서비스의 자동화된 백업 시스템을 활용하는 것으로 보인다.
하지만 프루프포인트 연구진은 마이크로소프트 지원을 통해 이전 버전의 문서를 복원하려고 시도했으나 성공하지 못했다면서, 오피스 365 계정의 파일 구성 변경 사항을 모니터링하라고 권고했다. 버전 설정 수정은 비정상적이며 의심스러운 행위로 간주해야 한다. 아울러 강력한 암호 정책 및 MFA 구축, 계정의 오쓰 액세스 권한이 있는 서드파티 애플리케이션 검토, 클라우드 파일을 처리하는 외부 백업 정책도 중요하다고 연구진은 덧붙였다.
ciokr@idg.co.kr