Usando malware no Azure para obter acesso aos inquilinos do Microsoft 365



O phishing continua sendo uma das maneiras mais bem-sucedidas de se infiltrar em uma organização. Vimos um grande número de infecções por malware decorrentes de usuários abrindo anexos infectados ou clicando em links para sites maliciosos que tentavam comprometer navegadores ou plugins vulneráveis.

Agora que as organizações estão migrando para o Microsoft 365 em um ritmo tão rápido, estamos vendo um novo vetor de ataque - aplicativos do Azure .

Como você verá abaixo, os cibercriminosos podem criar, mascarar e implantar aplicativos maliciosos do Azure para uso em suas campanhas de phishing. Os aplicativos do Azure não exigem aprovação da Microsoft e, mais importante, não exigem execução de código no computador do usuário, o que facilita ignorar as ferramentas de detecção e programas antivírus nas estações de trabalho.

Depois que o invasor convencer a vítima a instalar o aplicativo malicioso do Azure, ele poderá descobrir a qual organização pertence, acessar os arquivos da vítima, ler seus e-mails, enviar e-mails em nome da vítima (ótimo para um ataque de phishing interno) e em geral muito mais.

O que são aplicativos do Azure?


A Microsoft criou o Serviço de Aplicativo do Azure para permitir que os usuários criem seus próprios aplicativos baseados em nuvem que podem chamar e usar APIs e recursos do Azure. Isso facilita a criação de programas personalizados poderosos que se integram ao ecossistema do Microsoft 365.

Uma das APIs mais comuns no Azure é a API do MS Graph . Essa API permite que os aplicativos interajam com o ambiente do usuário, a saber: usuários, grupos, documentos do OneDrive, caixas de correio e bate-papos do Exchange Online.



Assim como seu telefone iOS perguntará se o aplicativo pode ter acesso aos seus contatos ou local, o Azure solicitará que você conceda ao aplicativo acesso aos recursos necessários. Obviamente, um invasor pode usar essa oportunidade para conceder de maneira fraudulenta a um aplicativo um ou mais recursos confidenciais da nuvem.

Como é o ataque


Para executar esse ataque, o invasor deve ter o próprio aplicativo Web e o inquilino do Azure para hospedá-lo. Após configurar a loja, podemos iniciar uma campanha de phishing usando o link para instalar o aplicativo Azure: O



link no email direciona o usuário para um site controlado por atacantes (por exemplo, myapp.malicious.com ), que, por sua vez, redireciona a vítima para a página de logon da Microsoft . O processo de autenticação é totalmente tratado pela Microsoft, portanto, o uso da autenticação multifator não é uma solução.

Assim que o usuário entrar na instância do O365, um token será criado para o aplicativo mal-intencionado, e será solicitado que o usuário efetue login e forneça ao aplicativo as permissões necessárias. Aqui está a aparência para o usuário final (e deve parecer muito familiar se o usuário instalou o aplicativo anteriormente no SharePoint ou no Teams):



Aqui estão as permissões da API do MS Graph solicitadas pelo invasor no código do aplicativo:



Como você pode ver, o invasor controla o nome do aplicativo ("MicrosoftOffice" ) e atalho (usamos o atalho do OneNote). O URL é um URL válido da Microsoft, o certificado também é válido.

No entanto, o nome do inquilino do atacante e uma mensagem de aviso são indicados sob o nome do aplicativo e nem um nem o outro podem ser ocultados. A esperança do invasor é que o usuário tenha pressa, veja um atalho familiar e pule essas informações de maneira tão rápida e inconsciente quanto as notificações dos termos de uso.

Ao clicar em "Aceitar", a vítima concede permissões ao nosso aplicativo em nome de sua conta, ou seja, o aplicativo poderá ler os e-mails da vítima e obter acesso a todos os arquivos aos quais a vítima tem acesso.

Esta etapa é a única que requer o consentimento da vítima, a partir de agora o atacante tem controle total sobre a conta e os recursos do usuário .

Após dar o consentimento ao pedido, a vítima será redirecionada para o site de nossa escolha. Comparar o acesso de usuários recentes a arquivos e redirecioná-los para um dos documentos internos do SharePoint abertos recentemente pode ser um bom truque para despertar um mínimo de suspeita.

Oportunidades recebidas


Esse ataque é ideal para as seguintes atividades:

  • Inteligência (obtendo uma lista de contas, grupos, objetos no inquilino do usuário);
  • Phishing interno
  • Roubo de dados de recursos de arquivos e email.

Para ilustrar o poder de nosso aplicativo Azure, criamos um console engraçado para exibir recursos que acessamos como parte de nosso teste de PoC (prova de conceito): a



seção "Eu" mostra os detalhes da vítima: a



seção "Usuários" mostra os metadados acima para cada Um usuário individual em uma organização, incluindo um endereço de e-mail, número de telefone celular, cargo e muito mais, dependendo dos atributos do Active Directory da organização. Somente essa chamada de API pode causar uma violação maciça das políticas de proteção de dados pessoais, especialmente dentro da estrutura do GDPR e do CCPA.



Seção Calendáriomostra-nos os eventos do calendário da vítima. Também podemos agendar compromissos em nome dela, visualizar reuniões existentes e até excluir reuniões futuras.

Talvez a seção mais importante em nosso aplicativo de console seja a seção RecentFiles , que permite ver qualquer arquivo acessado pelo usuário no OneDrive ou no SharePoint. Também podemos fazer upload ou modificar arquivos (incluindo arquivos com macros maliciosas para desenvolver um ataque).



IMPORTANTE: quando acessamos o arquivo por meio dessa API, o Azure cria um link exclusivo. Esse link é acessível a qualquer pessoa de qualquer lugar, mesmo que a organização não permita a troca anônima de links para usuários comuns do 365.
Os links da API são especiais. Francamente, não sabemos por que eles não estão bloqueados pela política da organização para troca de links; talvez a Microsoft não queira interromper os aplicativos de usuário existentes se a política mudar. O aplicativo pode solicitar um link para download ou um link para modificar o arquivo - em nosso PoC, solicitamos ambos.

A seção "Outlook" nos dá acesso total ao e-mail da vítima. Podemos ver os destinatários de qualquer mensagem, filtrá-los por prioridade, enviar e-mails (phishing interno) e muito mais.



Ao ler os e-mails da vítima, podemos identificar o círculo de suas comunicações e os contatos mais vulneráveis ​​desse círculo, enviar e-mails de phishing internos em nome da vítima e, assim, desenvolver um ataque dentro da organização. Também podemos usar os endereços de e-mail e contatos da vítima de seu círculo para filtrar os dados que encontramos no 365.

Além disso, a Microsoft possui uma API que fornece informações sobre o atual círculo de comunicação da vítima:



Como mencionamos acima, podemos modificar os arquivos do usuário sujeito a direitos relevantes. Mas e se usarmos a API para modificar arquivos?



Uma opção é transformar nosso aplicativo malicioso do Azure em um programa de ransomware que criptografa remotamente arquivos que a vítima tem acesso para modificar no SharePoint e OneDrive:



No entanto, esse método de criptografia de arquivos não é confiável (já que alguns arquivos podem ser restaurados usando configurações de backup mais estritas), mas os inquilinos com configurações padrão correm o risco de perder dados permanentemente. Por outro lado, sempre podemos trazer dados confidenciais e ameaçar publicá-los, a menos que tenhamos um resgate.

Outras fontes:

  • Kevin Mitnik introduziu um método de criptografia baseado em nuvem semelhante que se aplica a caixas de correio;
  • Krebs On Security também escreveu um bom post sobre esse ataque em seu blog.

Urgência do problema


Hoje, o conhecimento dessa técnica de phishing é relativamente baixo. Muitos especialistas não entendem o nível potencial de dano que um invasor pode causar devido a apenas um funcionário da organização que forneceu acesso ao aplicativo malicioso do Azure. Dar consentimento a um aplicativo do Azure não é muito diferente de executar um arquivo .exe malicioso ou permitir que macros sejam ativadas em um documento de um remetente desconhecido. Mas, como esse é um vetor mais recente que não exige que o código seja executado na máquina do usuário, é mais difícil detectar e bloquear.

Que tal desativar todos os aplicativos de terceiros?


A Microsoft não recomenda a proibição de usuários para conceder permissões a aplicativos:
“Você pode desativar aplicativos integrados para seu inquilino. Essa é uma etapa radical que priva globalmente os usuários finais da capacidade de fornecer consentimento no nível do inquilino. Isso impede que seus usuários concedam inadvertidamente acesso a um aplicativo mal-intencionado. Esta não é uma recomendação forte, pois prejudica seriamente a capacidade de seus usuários trabalharem com aplicativos de terceiros. ”

Como posso detectar abuso de aplicativos do Azure?


A maneira mais fácil de detectar permissões ilegais é rastrear eventos de acesso no Azure AD e revisar regularmente seus Aplicativos Corporativos no portal do Azure.

Sempre faça a si mesmo perguntas:

  • Eu conheço este aplicativo?
  • Pertence a uma organização que eu conheço?

Para clientes da Varonis : o módulo DatAlert possui modelos de ameaças que detectam permissões maliciosas. Também é possível criar suas próprias regras de notificação de compartilhamento de aplicativo do Azure.

Como remover aplicativos maliciosos?


No portal do Azure, vá para a seção "Aplicativos Corporativos" da guia "Azure Active Directory" e desinstale os aplicativos. Um usuário comum pode excluir as permissões concedidas anteriormente acessando myapps.microsoft.com , verificando os aplicativos listados lá e revogando as permissões conforme necessário.

Consulte as diretrizes oficiais da Microsoft para obter instruções detalhadas .

All Articles