Conformidade do nó

As imagens de nó local do GKE On-Prem vêm pré-configuradas com as definições PCI DSS, NIST Baseline High e DoD Cloud Computing SRG Impact Level 2.

As seções a seguir descrevem as configurações de conformidade que foram alteradas.

Pacotes instalados

Os pacotes a seguir estão incluídos nas imagens do SO do nó:

Auditoria

As regras de auditoria adicionadas ao sistema operacional atendem aos requisitos de geração de registros de alterações nas propriedades e permissões do arquivo, exclusão de arquivos, carregamento ou exclusão do módulo do kernel, uso de comandos privilegiados e comandos de administração do sistema.

Os eventos a seguir são registrados por auditoria no SO do nó:

  • Modificações de controle de acesso discricionário (DAC, na sigla em inglês):

    • chmod: alterar modos do arquivo ou listas de controle de acesso
    • chown: alterar proprietário e grupo do arquivo
    • fchmod: alterar o modo do arquivo
    • fchmodat: alterar o modo do arquivo
    • fchown: alterar o proprietário e o grupo de um arquivo
    • fchownat: alterar o proprietário e o grupo de um arquivo
    • fremovexattr: remover um valor de atributo estendido
    • fsetxattr: definir um valor de atributo estendido
    • lchown: alterar o proprietário e o grupo de um arquivo
    • lremovexattr: remover um valor de atributo estendido
    • lsetxattr: definir um valor de atributo estendido
    • removexattr: remover um valor de atributo estendido
    • setxattr: definir um valor de atributo estendido
  • Exclusão de arquivos

    • ename: alterar o nome de um arquivo
    • renameat: alterar o nome de um arquivo
    • rmdir: remover diretórios
    • unlink: remover entradas do diretório
    • unlinkat: remover entrada de diretório
  • Carregamento do módulo de kernel

    • deleted: remover um módulo de kernel carregável não usado
    • finit: carregar o módulo de kernel do descritor de arquivo
    • init: carregar uma imagem ELF no espaço do kernel
  • Eventos de login

    • faillock: bloquear a conta de usuário após tentativas repetidas de login
    • lastlog: registrar logins
    • tallylog: registrar tentativas de login bem-sucedidas e malsucedidas
  • Exportação de mídia: comandos mount -F para ativar sistemas de arquivos remotos

  • Comandos privilegiados

    • chage: adicionar ou alterar informações do banco de dados do usuário
    • chsh: adicionar ou alterar informações do banco de dados do usuário
    • crontab: manter arquivos crontab para usuários individuais
    • gpasswd: definir ou alterar a senha da associação ao grupo
    • newgrp: alterar para um novo grupo
    • passwd: modificar a senha de um usuário
    • postdrop: utilitário de postagem de e-mail do Postfix
    • postqueue: controle de fila do Postfix
    • ssh_keysign: gerenciar chaves de host para o Daemon SSH
    • su: substituir identidade do usuário
    • sudo: executar um comando como outro usuário
    • unix_chkpwd: verificar a senha do usuário atual
  • Ações do Sysadmin: modificações dos sudoers

  • Desativação do sistema: encerramento e reinicialização do SO

  • Falha na modificação do arquivo

    • creat: criar um novo arquivo
    • ftruncate: truncar ou estender um arquivo para um comprimento especificado
    • open: abrir arquivos e diretórios
    • open_by_handle_at: abrir ou criar um arquivo para leitura ou gravação
    • openat: abrir ou criar um arquivo para leitura ou gravação
    • truncate: truncar ou estender um arquivo para um comprimento especificado
  • Modificação do usuário/grupo

    • group: associação a grupos locais
    • gshadow: banco de dados de senhas de grupos
    • opasswd: banco de dados de reutilização de senhas
    • passwd: informações de login do usuário local
    • shadow: banco de dados de senhas de usuários locais com hash

Requisitos de senha do perfil do usuário

Os requisitos de complexidade da senha do usuário são necessários para conformidade. Esses requisitos de complexidade são implementados em /etc/security/pwquality.conf da seguinte maneira:

minlen = 15
lcredit = -1
maxrepeat = 3
difok = 8
maxclassrepeat = 4
ocredit = -1
dcredit = -1
ucredit = -1
minclass = 4

Servidor SSH

As configurações a seguir foram implementadas na configuração do servidor sshd.

Banner do sistema

A mensagem de aviso reforça o reconhecimento da política durante o processo de login e facilita possíveis ações legais contra invasores. Como alternativa, os sistemas com propriedade que não podem ser óbvios precisam garantir um uso de um banner que não forneça atribuição fácil.

Protocolo SSH 2

O protocolo SSH 1 é menos seguro e precisa ser desativado para evitar que os clientes negociem acidentalmente um parâmetro de conexão vulnerável.

Desativar por SSH o login raiz

O SSH não pode permitir o login direto como usuário raiz, porque isso oculta a rastreabilidade das ações administrativas.

Proibir por SSH o PermitUserEnvironment

O PermitUserEnvironment pode burlar a configuração no servidor. Isso garante que configurações não seguras não sejam importadas durante a instauração da sessão.

Banner de aviso SSH

A mensagem de aviso reforça o reconhecimento da política durante o processo de login e facilita possíveis ações legais contra invasores. Essa configuração garante que o daemon SSH apresente o conteúdo do banner configurado do sistema.

Tempo limite de inatividade do SSH

Com o SSH, os administradores podem definir um intervalo de tempo limite de inatividade. Depois que esse intervalo é transmitido sem atividade, o usuário é desconectado automaticamente.

sinal de atividade SSH

Isso garante que um login de usuário seja encerrado assim que o tempo limite de inatividade do SSH for atingido.

Criptografias SSH aprovadas

Mecanismos não aprovados usados para autenticação no módulo criptográfico não são verificados e, portanto, não podem ser considerados para fornecer confidencialidade ou integridade. Além disso, os dados do sistema podem ser comprometidos. Sistemas operacionais que utilizam criptografia são necessários para usar mecanismos compatíveis com o FIPS para autenticação em módulos de criptografia. O FIPS 140-2 é o padrão atual para validar que os mecanismos usados para acessar módulos criptográficos utilizem autenticação que atende aos requisitos do setor e do governo.

MACs aprovados por SSH

Limite os MACs aos algoritmos de hash aprovados pelo FIPS.

UsePrivilegeSeparation de SSH

A separação de privilégios do daemon de SSH faz com que o processo de SSH descarte privilégios raiz quando não forem necessários. Isso diminui o impacto das vulnerabilidades de software na seção sem privilégios.

Exibir tentativas de login por SSH

Se a autenticação for concluída, exiba as tentativas de login anteriores. Isso serve para informar o usuário sobre logins inesperados.

Verificação da integridade de arquivos

As seguintes verificações de integridade do AIDE estão configuradas:

Verificação periódica do AIDE

O AIDE deve ser configurado para executar pelo menos uma verificação semanal. No máximo, o AIDE deve ser executado diariamente. Por padrão, o Ubuntu configura o AIDE para ser executado diariamente.

Notificação de IADE

O AIDE deve notificar a equipe apropriada sobre os detalhes da verificação depois que ela é executada. A configuração padrão do AIDE no Ubuntu envia automaticamente relatórios por e-mail em /etc/cron.daily/aide.

AIDE: usar hashes criptográficos aprovados do FIPS

As ferramentas de integridade de arquivos usam hashes criptográficos para verificar se o conteúdo e os diretórios do arquivo não foram alterados. Esses hashes precisam ser hashes criptográficos aprovados do FIPS 140-2.

AIDE: verificar ACLs

As ACLs podem conceder permissões além das permitidas pelo modo de arquivo e precisam ser verificadas pelas ferramentas de integridade de arquivos.

AIDE: verificar atributos EXT

Os atributos estendidos nos sistemas de arquivos são usados para conter dados arbitrários e metadados de arquivos com implicações de segurança.

Configurações do kernel

As modificações a seguir foram feitas nas configurações do kernel em /etc/sysctl.

Desativar a tecla Ctrl-Alt-Del

Um usuário conectado localmente que pressiona Ctrl-Alt-Del, no console, pode reiniciar o sistema. Se for pressionado acidentalmente, o que pode ocorrer no caso de um ambiente misto de sistema operacional, poderá resultar em perda de curto prazo na disponibilidade de sistemas devido a reinicialização não intencional.

Módulo de kernel do DCCP desativado

O Datagram Congestion Control Protocol (DCCP) é um protocolo de camada de transporte relativamente novo, projetado para ser compatível com streaming de mídia e telefonia. A desativação do DCCP protege o sistema contra a exploração de quaisquer falhas na implementação.

Módulo de kernel de armazenamento USB desativado

Dispositivos de armazenamento USB, como pen drives, podem ser usados para introduzir software malicioso. Para evitar o uso de dispositivos de armazenamento USB, configure o sistema de carregamento do módulo do kernel para impedir o carregamento automático do driver de armazenamento USB.

Colocar espaço de endereço virtual de modo aleatório

A ordem aleatória do layout do espaço de endereço (ASLR, na sigla em inglês) dificulta a previsão do local do código de ataque introduzido no espaço de endereço de um processo durante uma tentativa de exploração. Além disso, a ASLR torna mais difícil para um invasor saber a localização do código existente para reutilizá-lo usando técnicas de programação orientada a retorno (ROP, na sigla em inglês).

Desativar redirecionamentos IPv4

As mensagens de redirecionamento ICMP são usadas pelos roteadores para informar aos hosts que existe uma rota mais direta para um destino específico. Essas mensagens modificam a tabela de rota do host e não são autenticadas. Uma mensagem de redirecionamento ICMP não processada pode resultar em um ataque "man-in-the-middle". Esse recurso do protocolo IPv4 tem alguns usos legítimos. Ele deve ser desativado, a menos que seja absolutamente necessário.

Desativar pacotes IPv4 roteados de origem

Os pacotes roteados pela origem permitem que a origem do pacote sugira que os roteadores encaminhem o pacote para um caminho diferente do configurado no roteador, o que pode ser usado para ignorar medidas de segurança da rede. Esse requisito se aplica apenas ao encaminhamento do tráfego roteado pela origem, como quando o encaminhamento IPv4 está ativado e o sistema está funcionando como um roteador. A aceitação de pacotes com roteamento de origem no protocolo IPv4 tem alguns usos legítimos. Ela precisa ser desativada, a menos que seja absolutamente necessária.

Desativar o envio de redirecionamentos IPv4

As mensagens de redirecionamento ICMP são usadas pelos roteadores para informar aos hosts que existe uma rota mais direta para um destino específico. Essas mensagens contêm informações da tabela de rotas do sistema que podem revelar partes da topologia de rede. A capacidade de enviar redirecionamentos ICMP é apropriada apenas para sistemas que funcionam como roteadores.

Desativar a aceitação de redirecionamentos IPv4

As mensagens de redirecionamento ICMP são usadas pelos roteadores para informar aos hosts que existe uma rota mais direta para um destino específico. Essas mensagens modificam a tabela de rota do host e não são autenticadas. Uma mensagem de redirecionamento ICMP não processada pode resultar em um ataque "man-in-the-middle". Esse recurso do protocolo IPv4 tem alguns usos legítimos. Ele deve ser desativado, a menos que seja absolutamente necessário.

Desativar a aceitação de pacotes encaminhados de origem IPv4

Os pacotes roteados pela origem permitem que a origem do pacote sugira que os roteadores encaminhem o pacote para um caminho diferente do configurado no roteador, o que pode ser usado para ignorar medidas de segurança da rede. A aceitação de pacotes roteados de origem no protocolo IPv4 tem alguns usos legítimos. Ela precisa ser desativada, a menos que seja absolutamente necessária, como quando o encaminhamento de IPv4 está ativado e o sistema está funcionando de maneira legítima como um roteador.

Desativar o envio de pacotes de redirecionamento IPv4

As mensagens de redirecionamento ICMP são usadas pelos roteadores para informar aos hosts que existe uma rota mais direta para um destino específico. Essas mensagens contêm informações da tabela de rotas do sistema que podem revelar partes da topologia de rede. A capacidade de enviar redirecionamentos ICMP é apropriada apenas para sistemas que funcionam como roteadores.

Desativar a resposta a pacotes de transmissão IPv4

Responder aos ecos de transmissão (ICMP) facilita o mapeamento de rede e fornece um vetor para ataques de amplificação. Ignorar as solicitações de ecos do ICMP (pings) enviados para endereços de transmissão ou multicast torna o sistema um pouco mais difícil de enumerar na rede.

Desativar a aceitação de pacotes roteados de origem IPv6

Os pacotes roteados pela origem permitem que a origem do pacote sugira que os roteadores encaminhem o pacote para um caminho diferente do configurado no roteador, o que pode ser usado para ignorar medidas de segurança da rede. Esse requisito se aplica apenas ao encaminhamento do tráfego roteado pela origem, como quando o encaminhamento IPv6 está ativado e o sistema está funcionando como um roteador. A aceitação de pacotes roteados de origem no protocolo IPv6 tem poucos usos legítimos. Ela precisa ser desativada, a menos que seja absolutamente necessária.

Serviços

As seguintes alterações nas configurações do serviço foram implementadas.

Geração de registros remota de jobs programados

A geração de registros de cron pode ser usada para rastrear a execução bem-sucedida ou malsucedida dos cron jobs. Ela também pode ser usada para identificar intrusões no uso da instalação cron por usuários não autorizados e mal-intencionados.

Desativar o AutoFS

O daemon autofs monta e desconecta sistemas de arquivos, como diretórios iniciais do usuário compartilhados via NFS, sob demanda. Além disso, autofs pode ser usado para gerenciar mídia removível, e a configuração padrão fornece o dispositivo cdrom como /misc/cd. A ativação automática dos sistemas de arquivos permite a introdução de dispositivos desconhecidos, facilitando a atividade maliciosa.