
Ferramenta em C# para interagir com MS Exchange baseada na documentação da MS
Esta é uma POC de linha de comando que mostra como o C# pode ser usado para interagir com o Microsoft Exchange (EWS). Mostrando que pode ser feito com outras ferramentas além do Powershell. Sim, esta é uma POC simples para mostrar como isso poderia ser feito. Não é 100%. Se você quer mostrar suas habilidades l33t de programador C# ou de red teamer, abra um pull request plz :) Isso é apenas para fins educacionais. Não use para coisas malignas ou ilegais.
Entradas Obrigatórias (Devem estar em ordem):
ReadEmailExchange.exe WEBDomain DomainName Password InternalDomainName DUMPItem
Exemplo WEBDomain: webmail.domain.com
Exemplo DomainName: User1
Exemplo Password: SecretPassword
Exemplo InternalDomainName: domain
Opções para DUMPItem:
Inbox
Sent
Drafts
Deleted
Skype
Attachments (Baixará os Anexos das pastas Inbox, DeletedItems e Sent Items)
SendEmail ToEmailAddress~Subject~Body(Body pode ser um caminho de arquivo)~AttachmentLocalFilePath(opcional)
All (All == tentará despejar todos os itens acima)(Eu usaria este por padrão se não tiver certeza)
Entradas Opcionais:
ReadEmailExchange.exe WEBDomain DomainName Password InternalDomainName DUMPItem NumberOfSearchResultsToReturn
Exemplo NumberOfSearchResultsToReturn (retornará no máximo o número informado, padrão 10): 10
Nota: NumberOfSearchResultsToReturn deve ser um número int/inteiro
Entradas Opcionais:
ReadEmailExchange.exe WEBDomain DomainName Password InternalDomainName DUMPItem NumberOfSearchResultsToReturn OutputFileNameOrPath
Exemplo OutputFileNameOrPath: C:\file.csv
Nota: O programa precisa de permissão para escrever no local
Microsoft.Exchange.WebServices
É C#, então o AMSI provavelmente está em ação em sistemas modernos onde está habilitado
Pode escrever arquivo de texto em disco
Usa a string de user agent padrão do .NET (Por exemplo: ... .NET CLR ...)
Quando executado, o .exe do .NET pode criar o arquivo temporário na estrutura de pastas da conta do usuário com seu nome.
GUID do aplicativo
Muitas outras oportunidades existem se o código for revisado