Azure Sentinel–Log Search & Restore Preview

Um dos programas que a Microsoft disponibiliza a MVPs e parceiros é participar de previews privados para funcionalidades de Cloud Security.

Um destes recursos liberados para Public Preview recentemente foi o Log Search and Restore onde pode-se estender o tempo de log do Analytics alem de utilizar o próprio Sentinel para ler os dados destes logs armazenados.

Limitação Atual

Na versão GA o Sentinel guarda os logs por até 2 anos, sendo que pela interface visual é possivel configurar 90 dias e via PowerShell para até 755 dias.

Alem disso, ao configurar para 2 anos o log acaba gerando um custo mais alto por estar vinculado ao preço de armazenamento do Log Analytics que é por Giga.

Novos Limites e Custo

Neste Preview o log agora poderá ser guardado por 7 anos (2520 dias) alem de ter um custo menor que será divulgado no GA, porem muito menor que o atual.

Assim como no GA atual, a alteração pode ser feita via PowerShell para os 7 anos.

Mas para ajudar, vc pode usar o aplicativo disponibilizado no GitHub onde poderá escolher as tabelas e o tempo de arquivo para operação. Ou seja você pode colocar a tabela de alertas por 5 anos e a tabela de incidentes por 2 anos.

Link para o aplicativo de configuração: Azure-Sentinel/Tools/Archive-Log-Tool/ArchiveLogsTool-PowerShell at master · Azure/Azure-Sentinel · GitHub

Usando o Recurso

Vou demonstrar com prints abaixo do meu Preview como fiz o processo de Restore, Search e o resultado final.

Executando um Restore com o nome da tabela que desejo, a data inicial e final:

image

Na sequencia executei uma consulta abordando o tempo que configurei do Restore da tabela SecurityEvents com o nome do meu servidor:

image

Por fim, o resultado é uma nova Custom Table no Log Analytics com o nome indicado acima e os mais de 3 anos de eventos restaurados!!!

image

Anuncio do Preview: What's New: Search, Basic Ingestion, Archive, and Data Restoration are Now in Public Preview - Microsoft Tech Community

Utilizando o Azure Application Insigths na Analise de Vulnerabilidades

Uma das ferramentas que são criadas costumeiramente nas aplicações Web hospedadas, o Azure Application Insigths, é subutilizado pelos time de desenvolvimento, operações e segurança.

O que é possivel com o App Insights?

O App Inisgths captura log e executa tarefas para avaliar performance, estabilidade e estatísticas de uso de um web app.

Quando comparado a outras ferramentas comuns com o Google Analytics é importante lembrar que o App Insigths tambem funciona como um APM (App Performance Monitoring) detalhando funções e linhas de código como chamadas a banco de dados, que estão gerando lentidão.

Particularmente gostou muito de algumas funções Smart detection settings que são regras comuns para detecção de tendências ou problema, além de métricas e as Live Metrics como abaixo. Alias, veja que a página de contato já demonstra um ataque simulado na chamada da página de contato:

Performance

Metricas-1

Outra função interessante que utilizo com frequencia em projetos é Avaliabiliy onde podemos criar regras de teste com páginas especificas em diversas localidades do Azure para funcionar como o antigo Global Monitoring Service.

image

O foco neste post não é detalhar as funções de APM, mas sim o uso pelo time de segurança.

Como o App Insights é útil para Segurança?

Primeiro temos o Application Map de onde iniciamos as analises. Basicamente ele é um modelo simples de dependencias e comunicação de dentro e de fora, incluindo as analises de disponibilidade que mostramos anterioremente.

Application Map

Mas ao retirar o WAF para gerar os logs e demonstrar nesse post, o resultado foi muito rápido como pode ser visto no diagrama abaixo.

Veja que os dois endereços na parte inferior são fontes desconhecidas e poderiam ser ataques, enquanto também se vê claramente os rastreadores e robôs do Google e outro site, mas estes não seriam o problema.

Ataque-1

Ao pedir acima os detalhes de pacotes e comunicação trocada com o meu blog com este endereço é possivel ver o que eles tentaram e quantas vezes.

Ataque-2

O passo seguinte é clicarmos em Samples ou na lista do lado direito para analisar as queries que foram recebidas.

Como pode ser visto abaixo, é possivel identificar de onde e como o acesso foi realizado por esse dominio que estava analisando os detalhes.

Ataque-3

Mas vamos deixar rodando por mais tempo com o WAF desativado e veremos com um histórico detalhadas.

Validando ataques reais

Agora com mas tempo exposto (como gostamos de correr risco Smile) o meu blog pôde ter mais dados para serem demonstrados.

Vamos abrindo em detalhes os itens no mapa onde demonstraram as estatisticas de falhas ocoridas.

Na primeira tela de detalhes vemos que só de falhas nas ultimas 24 horas eu recebi mais de 11 mil chamadas!!!

Failures-1

Mas a alegria se transforma em tristeza, ou melhor preocupação, essas 11290 chamadas na verdade fazem parte de um ataque orquestrado por força bruta…

Failures-2

Agora vamos começar a entender melhor o que estão tentando fazer no meu blog. Para isso vamos fazer uma “caminhada” pelos dados do App Insigths.

Do lado esquerdo já podemos ver que os ataques se deram por tentar enviar parametros e listas diretamente nas páginas do blog.

Failures-3

Abrindo mais detalhes consigo descobrir que a fonte do ataque são PCs na China usando um SDK especifico. Em alguns casos é possivel ver tambem o IP e com isso criar uma lista de bloqueio ou potenciais atacantes.

Failures-4

Segue um outro exemplo mais recente que teve quase a mesma origem (outra cidade chinesa), mas com detalhes de sofisticação onde foi utilizado um script e não apenas um SQL Injection:

Failures-4a

Continuando a caminhada posso ver a sequencia que o “usuário” utilizou no meu site, vejam que a lista de tentativas foi grande, e muitas vezes na mesma página:

Failures-5

O ataque na tela acima é um SQL Injection muito comum de ser utilizado em sites web por atacantes. Veja detalhes em CAPEC - CAPEC-66: SQL Injection (Version 3.5) (mitre.org)

O que fazer ao detectar um ataque ao site site ou aplicação?

Em geral os Web Application Firewall seguram boa parte dos ataques que vimos acontecer no meu blog em 24 horas, tanto que eu não fazia ideia antes que poderiam chegar a quase 12 mil em apenas 24 horas.

Mas mesmo que tenha um WAF é importante que monitore constantemente o numero de falhas em páginas para identificar se é um problema de aplicação ou um ataque que está tentando encontrar as vulnerabilidades, como os exemplos acima do meu site.

Outra importante ação é ajudar os desenvolvedores e não aceitar comandos diretamente do POST e muito menos concatenar cadeias de caracteres  dentro de parâmetros e comandos internos.

Utilize tambem uma biblioteca de desenvolvimento robusta, por exemplo no meu teste de exposição não tive o blog invadido pois o próprio .NET já possui filtros para evitar comandos enviados diretamente no POST ou URL.

Como um recurso mais sofisticado para ataques direcionados, veja a opção Create Work Items onde poderá criar automações, por exemplo barrar um determinado serviço ou até derrubar um servidor quando detectar uma anomalia muito grande!

Relembrando que o App Insights se integra ao Log Analytics para consultas e ao Sentinel para segurança inteligente de Threats!!!!

Conclusão

Se não conhece, não tem habilitado ou não utiliza o App Insights comece agora!

Não o limite a analises de performance e sessões, aprenda a ler também os indícios de falhas de segurança antes que uma invasão ocorra.

Azure Arc–Gerenciamento integrado Multi-cloud

O Azure Arc é um produto em preview que tem a função de padronizar e permitir utilizar recursos do Azure para gerenciamento de VMs e Clusters Kubernets hospedados em ambientes on-premisse ou outras clouds integrado.

https://azure.microsoft.com/en-us/services/azure-arc/

Computadores

Habilitando o Serviço por Registrar os Componentes

O primeiro passo é acessar as subscrições onde irá hospedar os serviços do Arc.

Uma vez escolhida a subscrição, deve-se registrar os recursos de Hybrid como abaixo.

Em geral o recurso ADHybridHS já estará habilitado e tem a ver especificamente com a sincronização de AD, mas os recursos de Compute, Data e Network precisam ser habilitados antes de incluir recursos:

Registro Provedores

Registrando Computadores e Recursos

Ao criar o recurso do Arc, escolha uma subscrição e um Resource Group para servir de base e que futuramente após o Preview irá ter o débito (se existir) dos serviços.

Logo após habilitar clique no botão Adicionar do primeiro print deste artigo e baixe o script para executar nos servidores. Caso queira abrir o script ele é bem simples e basicamente faz o download de um msi e o executa com os dados da subscrição.

Onboarding

A primeira execução do script mostra a obrigatoriedade de ativar os recursos, que foi o primeiro tópico desse artigo, e será um erro recorrente já que ao habilitar o Arc esse processo deveria ser automático.

Note que na execução do script ele gera um código que deverá ser confirmado no site indicado https://microsoft.com/devicelogin

Registro Servidor

Utilizando Politicas e Iniciativas

Assim que vinculados, já podem ser criadas e habilitadas as diferentes Politicas e iniciativas que serviriam para criar alertas e definir padronização de recursos no que geralmente chamamos de Compliance.

Politicas-1

Por default as politicas acima são configuradas, mas é possivel criar novas para gerar reports de compliance. Para isso utilize as regras pré-existentes que irão facilitar diversos tipos diferentes de alertas como backup, antivirus, ASR, etc.

Politicas-2

Já para as Iniciativas não estamos apenas verificando, mas implementando alguns tipos de padrões como o nivel de auditoria ou requisitos legais/padrões regulatórios:

Iniciativas

Habilitando o Log Analytics

Para que os recursos funcionem corretamente é importante o auxilio do Log Analytics que irá capturar os dados do servidor para gerar alertas e mapas de relacionamento.

Para isso acesse os servidores e clique no aviso na tarja que é exibida e com isso poderá habilitar os recursos para cada servidor ou em Insights. Uma caracteristica interessante é que cada servidor pode utilizar subscrições diferentes ou até workspaces diferentes de Log Analytics.

Habilitar Log Insigths

A partir da integração que irá demorar de 5 a 10 minutos, já é possivel usar os monitores, alertas e até o mapa de relacionamento:

Alertas

Monitor-1

Monitor-2

Mapa

CONCLUSÃO

Em comporações com servidores fisicos, servidores virtuais e maquinas em clous ter a facilidade de integrar as funções de gerenciamento do Azure irá ajudar muito.

Grande parte do trabalho já é possivel no Log Analytics mas de forma passiva. Com a integração simples com as politicas, iniciativas e interface o uso do Azure Arc irá ser uma ferramenta excelente para profissionais de TI com ambientes multiplos de hospedagem.