Parâmetros de segurança do Kernel
O Kernel Linux permite a customização de diversos parâmetros em tempo de execução. Isso possibilita a ativação de recursos de segurança para efetivamente mitigar ataques e reforçar a proteção do sistema.
A configuração de parâmetros do Kernel em tempo de execução pode ser feita por meio do comando sysctl
ou inserindo tais parâmetros no arquivo /etc/sysctl.conf
. As subseções a seguir exploram alguns dos principais parâmetros.
Bloqueio de ICMP
A prática de bloquear tráfego ICMP direcionado a um host é útil para minimizar a exposição de informações e evitar ataques DoS:
icmp_echo_ignore_all: faz o Kernel ignorar completamente pacotes ICMP Echo Request recebidos. Isso ajuda a proteger o sistema contra ataques de negação de serviço.
icmp_echo_ignore_broadcasts: ignora pacotes ICMP Echo Request direcionados a endereços de broadcast.
Alteração do TTL padrão
O valor do TTL (Time to Live) padrão pode ser utilizado para identificar o tipo de sistema operacional em uso (sendo 64 o valor para sistemas Linux e 128 para sistemas Windows). Logo, outra prática interessante é alterar esse valor para confundir o atacante:
ip_default_ttl: define por quantos roteadores o pacote poderá passar antes de ser eliminado.
Address Space Layout Randomization (ASLR)
Address Space Layout Randomization (ASLR) é uma técnica de segurança utilizada para proteger sistemas operacionais contra ataques que exploram vulnerabilidades de memória. Seu principal objetivo é tornar mais difícil para os atacantes prever a localização de funções, dados e estruturas na memória do sistema, dificultando assim a execução bem-sucedida de ataques baseados em endereços fixos.
randomize_va_space: ativa o ASLR. Logo, as áreas de memória para os processos são alocadas de forma aleatória no espaço de endereçamento virtual.
Proteção contra IP spoofing
A proteção contra IP spoofing é uma medida de segurança implementada para prevenir ataques de spoofing, que é uma prática em que um atacante falsifica o endereço IP de origem em um pacote de rede para mascarar sua identidade ou enganar sistemas de segurança e filtragem.
rp_filter: utilizado para proteção contra ataques de IP spoofing.
log_martians: permite que o Kernel registre pacotes com endereços IP inválidos ou suspeitos nos logs do sistema.
accept_source_route: controla se o Kernel aceita pacotes com rotas de origem diferentes das rotas padrão do sistema.
Proteção contra SYN Flood
O SYN Flood é um tipo de ataque de DoS que visa sobrecarregar um servidor ao enviar um grande número de solicitações de conexão TCP (SYN) falsas. O uso de cookies consiste em responder a pacotes SYN com um número gerado aleatoriamente em vez de iniciar uma conexão completa. O servidor usa esses cookies para rastrear as conexões pendentes e, quando um pacote ACK é recebido, a conexão é recriada usando as informações do cookie.
tcp_syncookies: utilizado para proteger o sistema contra ataques de TCP SYN Flood. Quando ativado, o Kernel utiliza cookies SYN para lidar com conexões TCP.
Conclusão
Neste capítulo foram abordados parâmetros de segurança do Kernel Linux. A utilização do sysctl
permite a aplicação de tais parâmetros em tempo de execução, tornando a configuração do Kernel bastante flexível.
Last updated