Como auditar a segurança do seu sistema Linux com o Lynis
Publicados: 2022-01-29Se você realizar uma auditoria de segurança em seu computador Linux com o Lynis, isso garantirá que sua máquina esteja tão protegida quanto possível. Segurança é tudo para dispositivos conectados à Internet, então veja como garantir que o seu esteja bloqueado com segurança.
Quão seguro é o seu computador Linux?
O Lynis executa um conjunto de testes automatizados que inspecionam minuciosamente muitos componentes do sistema e configurações do seu sistema operacional Linux. Ele apresenta suas descobertas em um relatório ASCII codificado por cores como uma lista de advertências graduadas, sugestões e ações que devem ser tomadas.
A cibersegurança é um ato de equilíbrio. A paranóia total não é útil para ninguém, então quão preocupado você deveria estar? Se você visitar apenas sites respeitáveis, não abrir anexos ou seguir links em e-mails não solicitados e usar senhas diferentes e robustas para todos os sistemas em que fizer login, que perigo permanece? Especialmente quando você está usando Linux?
Vamos abordar aqueles em sentido inverso. O Linux não é imune a malware. Na verdade, o primeiro worm de computador foi projetado para atingir computadores Unix em 1988. Os rootkits receberam o nome do superusuário Unix (root) e da coleção de software (kits) com os quais eles se instalam para evitar a detecção. Isso dá ao superusuário acesso ao agente da ameaça (ou seja, o bandido).
Por que eles são nomeados após a raiz? Porque o primeiro rootkit foi lançado em 1990 e visava a Sun Microsystems executando o SunOS Unix.
Assim, o malware começou no Unix. Ele pulou a cerca quando o Windows decolou e monopolizou os holofotes. Mas agora que o Linux comanda o mundo, está de volta. Sistemas operacionais Linux e do tipo Unix, como o macOS, estão recebendo toda a atenção dos agentes de ameaças.
Que perigo resta se você for cuidadoso, sensato e atento ao usar o computador? A resposta é longa e detalhada. Para condensar um pouco, os ataques cibernéticos são muitos e variados. Eles são capazes de fazer coisas que, há pouco tempo, eram consideradas impossíveis.
Os rootkits, como o Ryuk, podem infectar computadores quando estão desligados, comprometendo as funções de monitoramento wake-on-LAN. O código de prova de conceito também foi desenvolvido. Um “ataque” bem-sucedido foi demonstrado por pesquisadores da Universidade Ben-Gurion do Negev, que permitiria que os agentes de ameaças exfiltrassem dados de um computador com gap de ar.
É impossível prever do que as ameaças cibernéticas serão capazes no futuro. No entanto, entendemos quais pontos nas defesas de um computador são vulneráveis. Independentemente da natureza dos ataques presentes ou futuros, só faz sentido preencher essas lacunas antecipadamente.
Do número total de ataques cibernéticos, apenas uma pequena porcentagem é conscientemente direcionada a organizações ou indivíduos específicos. A maioria das ameaças é indiscriminada porque o malware não se importa com quem você é. A varredura automatizada de portas e outras técnicas apenas procuram sistemas vulneráveis e os atacam. Você se nomeia como vítima por ser vulnerável.
E é aí que entra Lynis.
Instalando o Lynis
Para instalar o Lynis no Ubuntu, execute o seguinte comando:
sudo apt-get install lynis
No Fedora, digite:
sudo dnf instalar lynis
No Manjaro, você usa o pacman
:
sudo pacman -Sy lynis
Conduzindo uma Auditoria
Lynis é baseado em terminal, então não há GUI. Para iniciar uma auditoria, abra uma janela de terminal. Clique e arraste-o para a borda do monitor para que ele se encaixe na altura total ou estique-o o mais alto possível. Há muita saída do Lynis, portanto, quanto mais alta for a janela do terminal, mais fácil será a revisão.
Também é mais conveniente se você abrir uma janela de terminal especificamente para o Lynis. Você estará rolando muito para cima e para baixo, portanto, não ter que lidar com a confusão de comandos anteriores facilitará a navegação na saída do Lynis.
Para iniciar a auditoria, digite este comando simples:
sistema de auditoria sudo lynis
Os nomes das categorias, os títulos dos testes e os resultados rolarão na janela do terminal à medida que cada categoria de testes for concluída. Uma auditoria leva apenas alguns minutos no máximo. Quando terminar, você retornará ao prompt de comando. Para revisar as descobertas, basta rolar a janela do terminal.
A primeira seção da auditoria detecta a versão do Linux, a versão do kernel e outros detalhes do sistema.
As áreas que precisam ser observadas são destacadas em âmbar (sugestões) e em vermelho (avisos que devem ser abordados).
Abaixo está um exemplo de um aviso. Lynis analisou a configuração do servidor de correio postfix
e sinalizou algo relacionado ao banner. Podemos obter mais detalhes sobre exatamente o que ele encontrou e por que pode ser um problema mais tarde.
Abaixo, Lynis nos avisa que o firewall não está configurado na máquina virtual Ubuntu que estamos usando.
Percorra seus resultados para ver o que o Lynis sinalizou. Na parte inferior do relatório de auditoria, você verá uma tela de resumo.
O “Índice de Endurecimento” é a sua pontuação no exame. Conseguimos 56 de 100, o que não é ótimo. Foram realizados 222 testes e um plugin do Lynis está habilitado. Se você for para a página de download do plug-in Lynis Community Edition e assinar o boletim informativo, receberá links para mais plug-ins.
Existem muitos plugins, incluindo alguns para auditoria em relação aos padrões, como GDPR, ISO27001 e PCI-DSS.
Um V verde representa uma marca de verificação. Você também pode ver pontos de interrogação âmbar e Xs vermelhos.
Temos marcas de verificação verdes porque temos um firewall e um scanner de malware. Para fins de teste, também instalamos o rkhunter, um detector de rootkits, para ver se o Lynis o descobriria. Como você pode ver acima, ele fez; temos uma marca de seleção verde ao lado de “Malware Scanner”.
O status de conformidade é desconhecido porque a auditoria não usou um plug-in de conformidade. Os módulos de segurança e vulnerabilidade foram usados neste teste.
Dois arquivos são gerados: um arquivo de log e de dados. O arquivo de dados, localizado em “/var/log/lynis-report.dat,” é o que nos interessa. Ele conterá uma cópia dos resultados (sem a cor destacada) que podemos ver na janela do terminal . Eles são úteis para ver como seu índice de endurecimento melhora com o tempo.
Se você rolar para trás na janela do terminal, verá uma lista de sugestões e outra de avisos. Os avisos são os itens “big ticket”, então vamos dar uma olhada neles.
Estes são os cinco avisos:
- “A versão do Lynis é muito antiga e deve ser atualizada”: Esta é na verdade a versão mais recente do Lynis nos repositórios do Ubuntu. Apesar de ter apenas 4 meses, Lynis considera isso muito antigo. As versões dos pacotes Manjaro e Fedora eram mais recentes. As atualizações nos gerenciadores de pacotes sempre estão um pouco atrasadas. Se você realmente deseja a versão mais recente, pode clonar o projeto do GitHub e mantê-lo sincronizado.
- “Nenhuma senha definida para o modo único”: Único é um modo de recuperação e manutenção no qual apenas o usuário root está operacional. Nenhuma senha é definida para este modo por padrão.
- “Não foi possível encontrar 2 servidores de nomes responsivos”: Lynis tentou se comunicar com dois servidores DNS, mas não teve sucesso. Este é um aviso de que, se o servidor DNS atual falhar, não haverá rollover automático para outro.
- “Encontrou alguma divulgação de informações no banner SMTP”: a divulgação de informações acontece quando aplicativos ou equipamentos de rede fornecem seus números de marca e modelo (ou outras informações) em respostas padrão. Isso pode fornecer aos agentes de ameaças ou aos malwares automatizados informações sobre os tipos de vulnerabilidade a serem verificados. Depois que eles identificarem o software ou dispositivo ao qual se conectaram, uma simples pesquisa encontrará as vulnerabilidades que eles podem tentar explorar.
- “módulo(s) iptables carregados, mas sem regras ativas”: O firewall do Linux está funcionando, mas não há regras definidas para ele.
Limpando avisos
Cada aviso tem um link para uma página da Web que descreve o problema e o que você pode fazer para solucioná-lo. Basta passar o ponteiro do mouse sobre um dos links, pressionar Ctrl e clicar nele. Seu navegador padrão será aberto na página da Web para essa mensagem ou aviso.
A página abaixo foi aberta para nós quando Ctrl+clicou no link para o quarto aviso que abordamos na seção anterior.
Você pode revisar cada um deles e decidir quais avisos abordar.
A página da web acima explica que o trecho de informação padrão (o “banner”) enviado para um sistema remoto quando ele se conecta ao servidor de correio postfix configurado em nosso computador Ubuntu é muito detalhado. Não há nenhum benefício em oferecer muita informação – na verdade, isso é frequentemente usado contra você.
A página da web também nos diz que o banner reside em “/etc/postfix/main.cf.” Ele nos aconselha que ele deve ser cortado para mostrar apenas “$myhostname ESMTP”.
Digitamos o seguinte para editar o arquivo como Lynis recomenda:
sudo gedit /etc/postfix/main.cf
Localizamos a linha no arquivo que define o banner.
Nós o editamos para mostrar apenas o texto recomendado por Lynis.
Salvamos nossas alterações e fechamos o gedit
. Agora precisamos reiniciar o servidor de correio postfix
para que as alterações tenham efeito:
sudo systemctl reiniciar postfix
Agora, vamos executar o Lynis mais uma vez e ver se nossas alterações tiveram efeito.
A seção "Avisos" agora mostra apenas quatro. O que se refere ao postfix
se foi.
Um para baixo, e apenas mais quatro avisos e 50 sugestões para ir!
Quão longe você deve ir?
Se você nunca fez nenhum sistema de proteção em seu computador, provavelmente terá aproximadamente o mesmo número de avisos e sugestões. Você deve revisá-los todos e, guiado pelas páginas da Web do Lynis para cada um, fazer um julgamento sobre se deve abordá-lo.
O método do livro didático, é claro, seria tentar limpá-los todos. Isso pode ser mais fácil dizer do que fazer, no entanto. Além disso, algumas das sugestões podem ser um exagero para o computador doméstico médio.
Colocar na lista negra os drivers do kernel USB para desabilitar o acesso USB quando você não estiver usando? Para um computador de missão crítica que fornece um serviço comercial confidencial, isso pode ser necessário. Mas para um PC doméstico Ubuntu? Provavelmente não.