Exercício – monitorizar a sua base de dados

Concluído

Imagine que recebe um alerta do administrador de segurança da sua empresa. Foi detetada uma potencial violação de segurança na sua rede. Uma pessoa não autorizada pode ter acedido à sua base de dados através de atividade maliciosa. Como controlaria esta situação?

Você sabe que precisa monitorar ativamente seu banco de dados em busca de atividades suspeitas. O que você pode fazer não apenas para obter visibilidade do que está acontecendo em seu banco de dados, mas também para evitar que atividades maliciosas ocorram?

O Banco de Dados SQL do Azure tem recursos internos que podem ajudá-lo a acompanhar o que está acontecendo em seu banco de dados. Ele pode monitorar e alertá-lo se identificar atividades maliciosas.

Auditoria da Base de Dados SQL

Ao ativar a auditoria, as operações que ocorrem nas bases de dados são armazenadas para posterior inspeção ou para as analisar com ferramentas automáticas. A auditoria também serve para gerir a conformidade ou para saber como é que as bases de dados são utilizadas. Também precisa da auditoria se quiser utilizar a deteção de ameaças do Azure nas suas bases de dados SQL do Azure.

Pode utilizar a auditoria da base de dados SQL para:

  • Manter um registo de auditoria dos eventos selecionados. Pode definir categorias de ações de bases de dados para serem auditadas.
  • Criar um relatório da atividade da base de dados. Pode utilizar relatórios pré-configurados e um dashboard para começar rapidamente a utilizar relatórios de eventos e de atividade.
  • Analisar relatórios. Pode encontrar eventos suspeitos, atividades invulgares e tendências.

Os logs de auditoria são gravados em Acrescentar Blobs em uma conta de Armazenamento de Blobs do Azure que você designar. As políticas de auditoria podem ser aplicadas ao nível do servidor ou da base de dados. Uma vez habilitado, você pode usar o portal do Azure para exibir os logs ou enviá-los para o Log Analytics ou Hubs de Eventos para processamento e análise adicionais.

Auditoria na prática

Como melhor prática, evite ativar a auditoria de blobs de servidor e a auditoria de blobs de base de dados em conjunto, salvo se:

  • Quiser utilizar uma conta de armazenamento ou período de retenção diferente para uma base de dados específica.
  • Quiser auditar tipos ou categorias de eventos para uma base de dados específica que seja diferente das restantes bases de dados no servidor. Por exemplo, pode ter inserções de tabela que precisem de ser auditadas, mas apenas para uma base de dados específica.

Caso contrário, recomendamos que você habilite apenas a auditoria de blob no nível do servidor e deixe a auditoria no nível do banco de dados desabilitada para todos os bancos de dados.

Siga estas etapas para configurar a auditoria em seu sistema.

  1. Inicie sessão no portal do Azure com a mesma conta que utilizou para ativar o sandbox.

  2. Na barra de pesquisa na parte superior do portal, procure por serverNNNNN e, em seguida, selecione o servidor no portal. Substitua NNNNN pelo número do nome do servidor.

  3. No painel de menu esquerdo, em Segurança, selecione Auditoria.

  4. A auditoria está desativada por predefinição. Para habilitá-lo em seu servidor de banco de dados, alterne Habilitar Auditoria AQL do Azure para ON.

  5. Depois que o botão ATIVADO estiver selecionado, marque a caixa de seleção Armazenamento.

  6. Selecione a sua subscrição.

  7. Você pode selecionar uma conta de armazenamento existente ou criar uma nova conta de armazenamento para armazenar suas auditorias. A conta de armazenamento tem de ser configurada para utilizar a mesma região do servidor.

    Nesse caso, defina uma nova conta de armazenamento. Em Conta de armazenamento, selecione Criar novo. O painel Criar conta de armazenamento é exibido. Nomeie o servidor da conta de armazenamentoNNNNNauditing, substituindo o NNNNN pelo número do nome do servidor lógico.

  8. Deixe o restante das opções em seus padrões e selecione OK. De volta ao painel Configurações de armazenamento, deixe os padrões e selecione OK.

  9. Selecione Salvar para salvar as alterações e habilitar a auditoria no servidor de banco de dados.

Agora gere alguns registros de auditoria e dê uma olhada no que você pode esperar.

  1. Entre novamente no banco de dados como o usuário ApplicationUser .

    sqlcmd -S tcp:serverNNNNN.database.windows.net,1433 -d marketplaceDb -U 'ApplicationUser' -P '[password]' -N -l 30
    
  2. Execute a seguinte consulta.

    SELECT FirstName, LastName, EmailAddress, Phone FROM SalesLT.Customer;
    GO
    
  3. De volta ao portal do Azure, em seu servidor SQL, selecione bancos de dados SQL no painel de menu esquerdo e selecione o banco de dados do marketplace .

  4. No painel de menu esquerdo do banco de dados do marketplace, em Segurança, selecione Auditoria.

  5. Como você habilitou a auditoria no nível do servidor, verá que ela está habilitada aqui. Selecione Visualizar registos de auditoria na barra do menu superior para ver os registos.

  6. Deverá ver um ou mais registos de auditoria com NOME PRINCIPAL de ApplicationUser e TIPO DE EVENTO de LOTE COMPLETO. Um deles deve conter os detalhes da consulta que você executou. Também poderá ver outros eventos, tais como falhas e sucessos de autenticação. Selecione um registo para ver os detalhes completos do evento.

Screenshot shows an example event in the audit log.

Estas ações configuram as auditorias ao nível do servidor de bases de dados. As auditorias aplicam-se a todas as bases de dados no servidor. Também pode configurá-las ao nível da base de dados.

Dê uma olhada em outro recurso que usa esses logs para aumentar a segurança do seu banco de dados.

Advanced Data Security para a Base de Dados SQL do Azure

O Advanced Data Security (ADS) oferece um conjunto de funcionalidades de segurança de SQL avançadas, incluindo a deteção e classificação de dados, a avaliação de vulnerabilidades e o Advanced Threat Protection.

  • A descoberta de dados e a classificação (atualmente em visualização) fornecem recursos incorporados ao Banco de Dados SQL do Azure para descobrir, classificar, rotular e proteger os dados confidenciais em seus bancos de dados. Pode ser utilizada para fornecer visibilidade sobre o estado de classificação da base de dados e para controlar o acesso a dados confidenciais na base de dados e além dos respetivos limites.
  • A Avaliação de Vulnerabilidade é um serviço fácil de configurar que pode detetar, controlar e ajudar a corrigir potenciais vulnerabilidades da base de dados. Fornece visibilidade sobre o seu estado de segurança e inclui passos acionáveis para resolver problemas de segurança e melhorar as defesas da sua base de dados.
  • A Advanced Threat Protection deteta atividades anómalas indicadoras de tentativas potencialmente perigosas e invulgares de acesso ou exploração da sua base de dados. Monitoriza continuamente a sua base de dados em busca de atividades suspeitas e apresenta alertas de segurança imediatos em casos de potenciais vulnerabilidades, ataques de injeção SQL e padrões anómalos de acesso a bases de dados. Os alertas do Advanced Threat Protection fornecem detalhes sobre a atividade suspeita e recomendam ações de investigação e mitigação da ameaça.

Instalação e configuração

Habilite o ADS em seu banco de dados. O ADS é uma configuração no nível do servidor, então comece por aí.

  1. De volta ao portal do Azure, vá para o seu servidor SQL. Na barra de pesquisa na parte superior da página, procure serverNNNNN e, em seguida, selecione o servidor.

  2. No painel de menu esquerdo, em Segurança, selecione Microsoft Defender for Cloud.

  3. Selecione Ativar Microsoft Defender para SQL.

  4. Selecione Configurar ao lado da mensagem Habilitado no nível da assinatura. O painel Configurações do servidor é exibido.

  5. As verificações periódicas recorrentes estão ativadas por padrão. Quando uma verificação semanal é acionada, um resumo dos resultados da verificação é enviado para o endereço de e-mail fornecido. Neste caso, desligue esta opção. A opção Enviar também notificação por e-mail aos administradores e proprietários de subscrições está ativada por predefinição, de modo a enviar as ameaças aos administradores de serviços. Selecione Salvar na parte superior para salvar suas configurações.

  6. Em Configurações avançadas de proteção contra ameaças, selecione Adicionar seus detalhes de contato... para abrir o painel de notificações por e-mail do Defender for Cloud. Aqui, você pode, opcionalmente, definir onde os e-mails de notificação são entregues para a avaliação de vulnerabilidade e a Proteção Avançada contra Ameaças como uma lista de endereços de e-mail separados por ponto-e-vírgula. A opção Enviar também notificação por e-mail aos administradores e proprietários de subscrições está ativada por predefinição, de modo a enviar as ameaças aos administradores de serviços.

  7. Você também pode selecionar Habilitar Auditoria.... para ativar a Auditoria SQL do Azure.

  8. Selecione Guardar para aplicar as alterações.

Você recebe notificações por e-mail à medida que vulnerabilidades são detetadas. O e-mail descreve o que ocorreu e as ações a tomar.

Screenshot shows an example notification warning from Microsoft Defender for Cloud.

Deteção e classificação de dados

  1. Aceda à sua base de dados do marketplace. Na barra de pesquisa na parte superior do portal do Azure, pesquise marketplace e selecione o banco de dados.

  2. No painel de menu esquerdo, em Segurança, selecione Descoberta de Dados & Classificação.

A guia Classificação mostra colunas dentro de suas tabelas que precisam ser protegidas. Algumas das colunas podem ter informações confidenciais ou podem ser consideradas classificadas em diferentes países ou regiões.

Screenshot that shows the Classification tab in the Data Discovery and Classification pane.

Uma mensagem será exibida se alguma coluna precisar de proteção configurada. Esta mensagem está formatada como 15 colunas com recomendações de classificação. Você pode selecionar o texto para visualizar as recomendações.

Selecione as colunas que deseja classificar selecionando a marca de seleção ao lado da coluna ou marque a caixa de seleção à esquerda do cabeçalho do esquema. Selecione o botão Aceitar recomendações selecionadas para aplicar as recomendações de classificação.

Em seguida, edite as colunas e, em seguida, defina o tipo de informação e o rótulo de sensibilidade para o banco de dados. Selecione Guardar para guardar as alterações.

Nenhuma recomendação ativa deve ser listada depois que você gerencia as recomendações com êxito.

Vulnerabilidades de segurança

No painel de menu esquerdo, em Segurança, selecione Microsoft Defender for Cloud.

A seção Recomendações lista os problemas de configuração em seu banco de dados e o risco associado.

Selecione uma recomendação. No painel de recomendação, você vê os detalhes, como o nível de risco, a qual banco de dados ele se aplica, uma descrição da vulnerabilidade e a correção recomendada para corrigir o problema. Aplique a solução para corrigir o problema ou os problemas. Confirme que corrige todas as vulnerabilidades.

Incidentes e alertas de segurança

Esta seção exibe uma lista de ameaças detetadas.

Siga as recomendações para resolver qualquer problema. Para problemas como os avisos de injeção de SQL, você pode examinar a consulta e trabalhar para trás até onde a consulta está sendo executada no código. Uma vez encontrado, você deve reescrever o código para que ele não tenha mais o problema.