Tutorial de Hacking em Linux: Ubuntu Comandos e ferramentas
⚡ Resumo Inteligente
O hacking de Linux é a prática de encontrar e explorar vulnerabilidades em sistemas Linux, e esta página explica as vulnerabilidades que os atacantes visam, as ferramentas de auditoria envolvidas e os controles que mantêm um servidor protegido.

O Linux é o sistema operacional de servidor mais utilizado, especialmente para servidores web. É de código aberto, o que significa que qualquer pessoa pode ler o código-fonte. Essa transparência tem dois lados: os mantenedores o utilizam para encontrar e corrigir falhas rapidamente, enquanto os atacantes estudam o mesmo código em busca de vulnerabilidades para explorar. O hacking de Linux é a prática de explorar essas vulnerabilidades para obter acesso não autorizado a um sistema.
As seções abaixo abordam o que é o Linux, as vulnerabilidades de segurança que o afetam e uma visão prática de hacking com Linux. Ubuntue as contramedidas que você pode implementar.
Nota rápida sobre Linux
O Linux é um sistema operacional de código aberto. Muitas distribuições são baseadas nele, incluindo Red Hat Enterprise Linux, Fedora, Debian e UbuntuComo o código-fonte é público, pesquisadores, fornecedores e atacantes podem inspecioná-lo. Os atacantes usam esse acesso para procurar falhas exploráveis, enquanto a mesma visibilidade permite que os mantenedores lancem correções mais rapidamente do que as plataformas fechadas costumam conseguir. O Linux funciona como um sistema operacional para servidores, desktops, tablets ou dispositivos móveis.
Os programas Linux podem ser executados por meio de uma interface gráfica ou pela linha de comando. O trabalho pela linha de comando é mais rápido e preciso do que clicar em uma interface gráfica, razão pela qual os testadores de segurança que trabalham em distribuições como o Linux preferem essa abordagem. Kali Linux Eles passam quase todo o tempo em um terminal. Conhecer os comandos básicos é, portanto, um pré-requisito prático.
Consulte isso Tutorial Linux para os fundamentos, e para o Kali Linux tutorial para a distribuição com foco em segurança construída sobre eles.
Vulnerabilidades de segurança e vetores de ataque comuns no Linux
Os ataques ao Linux raramente dependem de exploits exóticos. Dados de telemetria publicados ao longo de 2025 e 2026 mostram que a maioria das invasões trace voltamos a um pequeno conjunto de fraquezas recorrentes, e conhecê-las indica onde concentrar primeiro os esforços defensivos.
- Credenciais SSH fracas ou reutilizadas — Tentativas de força bruta e de preenchimento de credenciais contra SSH exposto à internet representam a grande maioria da atividade hostil observada em endpoints Linux.
- Falhas não corrigidas no kernel e nos pacotes — A equipe do kernel Linux tornou-se uma Autoridade de Numeração CVE em 2024, e o número de CVEs relatados no kernel aumentou de aproximadamente 290 em 2023 para mais de 3,500 no ano seguinte, fazendo com que o acúmulo de patches aumente rapidamente.
- Configuração incorreta — contas padrão, daemons desnecessários, arquivos com permissão de escrita para todos e regras permissivas do sudo concedem privilégios que não exigiam exploração de vulnerabilidades para serem obtidos.
- Aplicações web vulneráveis — falhas como injeção SQL E os ataques de cross-site scripting permitem que um invasor acesse o servidor por meio do aplicativo, em vez do sistema operacional. Web shells são o artefato malicioso mais comum encontrado em servidores Linux comprometidos.
- Bugs de escalonamento de privilégios — falhas locais que transformam uma conta limitada em root. Algumas sobreviveram sem serem detectadas no kernel por mais de uma década antes de serem divulgadas.
- Risco de dependência e da cadeia de suprimentos — Pacotes de terceiros, bibliotecas de linguagem e imagens de contêineres incluem código que ninguém da equipe operacional revisou.
Nenhuma dessas técnicas exige que o atacante comprometa o próprio Linux. Análises de 2025 intrusões revelaram que aproximadamente quatro em cada cinco não envolveram nenhum malware, dependendo, em vez disso, de configurações incorretas e credenciais roubadas.
Ferramentas de hackers para Linux
Os analistas de segurança e administradores de sistemas utilizam os mesmos scanners: um para encontrar vulnerabilidades antes que um invasor o faça, o outro para confirmar se as correções são eficazes. As ferramentas abaixo são as mais utilizadas para auditar um host Linux.
| ferramenta | Formato | Licença | Uso típico no Linux |
| Nessus | Scanner de vulnerabilidade | Comercial | Analisa configurações, patches ausentes e serviços de rede em ambientes mistos. |
| Nmap | Scanner de rede e portas | Código aberto | Identifica os hosts em execução em um servidor, os serviços que eles expõem e quais portas estão abertas. |
| Lynis | Auditoria e reforço de segurança do host | Código aberto | Realiza auditorias em um sistema em funcionamento, comparando-o com padrões de segurança rigorosos, e relata etapas específicas de correção. |
| OpenVAS | Scanner de vulnerabilidade | Código aberto | Análise de vulnerabilidades de rede, mantida pela Greenbone como parte de sua Edição Comunitária. |
A lista não é exaustiva; ela dá uma ideia das ferramentas disponíveis para auditoria. Ubuntu e outros sistemas Linux. Guias mais antigos ainda recomendam o SARA, o Assistente de Pesquisa do Auditor de Segurança, mas sua versão final é de 2009 e o site do projeto está offline, então Lynis e OpenVAS são as alternativas mantidas.
Atividade de hacking: hackear um Ubuntu Sistema Linux usando PHP
Neste cenário prático, veremos como um host Linux pode ser acessado por meio de uma aplicação web, usando PHP como exemplo. Nenhum computador real será alvo do ataque. Se você quiser experimentar, instale o LAMPP, a versão Linux do XAMPP, em sua própria máquina.
PHP O pacote inclui duas funções que podem ser usadas para executar comandos do sistema operacional: `exec()` e `shell_exec()`. A função `exec()` retorna a última linha da saída do comando, enquanto `shell_exec()` retorna o resultado completo do comando como uma string.
Para fins de demonstração, suponha que um atacante consiga enviar o seguinte arquivo para um servidor web.
<?php $cmd = isset($_GET['cmd']) ? $_GET['cmd'] : 'ls -l'; echo "executing shell command:-> $cmd</br>"; $output = shell_exec($cmd); echo "<pre>$output</pre>"; ?>
AQUI,
O script acima recebe o comando da variável GET chamada cmd. O comando é executado usando shell_exec() e o resultado é retornado no navegador.
O código acima pode ser explorado usando o seguinte: URL
http://localhost/cp/konsole.php?cmd=ls%20-l
AQUI,
- “…konsole.php?cmd=ls%20-l” atribui o valor ls –l à variável cmd.
O comando sobre o Ubuntu O servidor é, portanto, executado como
shell_exec('ls -l') ;
Executar o código acima em um servidor web produz um resultado semelhante ao seguinte.
A saída simplesmente exibe os arquivos no diretório atual e suas permissões.
Agora, suponha que o atacante envie o seguinte comando.
rm -rf /
AQUI,
- O comando “rm” remove arquivos.
- O parâmetro “rf” faz com que o comando rm seja executado em modo recursivo, excluindo todas as pastas e arquivos.
- A barra "/" instrui o comando a iniciar a exclusão a partir do diretório raiz.
O ataque URL ficaria mais ou menos assim
http://localhost/cp/konsole.php?cmd=rm%20-rf%20/
Um único parâmetro não validado é, portanto, suficiente para conceder a um atacante todos os privilégios da conta do servidor web. As duas seções seguintes existem para impedir que isso aconteça e para detectar a falha quando a prevenção falhar.
Como prevenir ataques de hackers no Linux
A invasão de sistemas Linux explora vulnerabilidades no sistema operacional e nos softwares que nele são executados. Uma organização pode adotar os seguintes controles, aplicados em conjunto, para eliminar a maioria das brechas descritas acima.
- Gerenciamento de patches — As correções resolvem as falhas que os atacantes exploram para comprometer um sistema. Uma política definida garante que as atualizações relevantes sejam aplicadas prontamente, em vez de apenas quando alguém se lembra.
- Configuração adequada do sistema operacional — Desative contas de usuário inativas e serviços desnecessários. Altere as configurações padrão, incluindo nomes de usuário padrão, senhas de aplicativos compartilhados e números de porta padrão.
- Reforço de segurança SSH — Desativar o login de root e a autenticação por senha, permitir apenas usuários ou grupos nomeados e limitar as tentativas de autenticação. Isso fecha o ponto de entrada mais vulnerável a ataques no Linux.
- Ultimo privilégio — Conceda às contas e aos serviços apenas os direitos de que precisam e restrinja o sudo a comandos específicos, em vez de conceder acesso administrativo irrestrito.
- Controle de acesso obrigatório — mantenha o SELinux (família Red Hat) ou o AppArmor (Debian e Ubuntu) em modo de imposição, de forma que um serviço comprometido não consiga alcançar o restante do sistema.
- Validação de entrada — A demonstração acima só funciona porque os dados da requisição chegam a uma função do shell. Nunca passe a entrada do usuário para exec() ou shell_exec().
- Firewalls e segmentação — exponha apenas as portas que um serviço realmente precisa, usando um firewall e segmentação de rede para limitar o que um host comprometido pode alcançar.
- Sistemas de detecção de intrusão — essas ferramentas podem ser usadas para detectar acessos não autorizados ao sistema, e algumas podem até bloquear a tentativa.
- Cópias de segurança testadas — Backups offline e restauráveis transformam um comando destrutivo como o acima em uma interrupção, em vez de uma perda permanente.
Como detectar um sistema Linux comprometido
A prevenção acaba falhando, então a segunda questão é com que rapidez você perceberia o problema. A detecção no Linux depende da coleta das evidências corretas antes de um incidente, não depois.
- Registro de auditoria — o framework de auditoria do kernel, auditd, registra o uso de privilégios, o acesso a arquivos e as chamadas de sistema de uma forma que um processo comprometido não possa reescrever silenciosamente. Encaminhe esses logs do host para um coletor central.
- Registros de autenticação — Uma sequência de falhas seguida por um único sucesso em /var/log/auth.log ou /var/log/secure é a assinatura clássica de força bruta.
- Processos e conexões inesperados — Um serviço de escuta ou uma conexão de saída cuja origem é desconhecida merece investigação imediata.
- Monitoramento de integridade de arquivo — ferramentas que geram hashes de binários do sistema e arquivos de configuração sinalizam alterações em arquivos que nunca deveriam ser alterados.
- Tarefas agendadas e itens de inicialização — A persistência geralmente é implementada em tarefas cron, unidades systemd ou scripts de perfil do shell.
- Contas novas ou modificadas — procure por usuários desconhecidos, qualquer segunda conta com UID 0 e chaves SSH que ninguém adicionou.
- Diretórios de servidores web — porque os web shells são os arquivos maliciosos mais comuns encontrados em servidores Linux, arquivos de script inesperados na raiz de um servidor web merecem atenção especial.
- Auditorias programadas — execute uma ferramenta de auditoria de host, como o Lynis, de forma programada e trate cada relatório como uma lista de tarefas, em vez de um exercício isolado.
Caso encontre indícios de comprometimento, isole o host, preserve os logs e uma imagem do disco antes de alterar qualquer coisa e reconstrua a partir de uma mídia comprovadamente íntegra, em vez de tentar limpar um sistema em execução. O tratamento das evidências é abordado em [referência omitida]. forense digital.
Limites legais e éticos do hacking em Linux
Todas as técnicas desta página são legais para serem praticadas em sistemas que você possui ou para os quais tem permissão por escrito para testá-los, e ilegais em quase todos os outros lugares. O exercício acima é realizado deliberadamente em uma instalação local exatamente por esse motivo.
- Autorização por escrito — Um escopo assinado, um período de teste acordado e um contato nomeado são o que diferenciam um teste de penetração de um crime. Aprovação verbal não é suficiente.
- Permaneça dentro do escopo — Hosts, intervalos de endereços e técnicas que não estejam listados não são permitidos, mesmo quando estiverem acessíveis.
- Manipule os dados com cuidado. — As evidências coletadas durante um teste ainda contêm dados pessoais reais e devem ser armazenadas com segurança e destruídas posteriormente.
- Denuncie de forma responsável. — divulgar as descobertas ao proprietário e dar tempo para que o problema seja corrigido antes de publicar qualquer coisa.
A exposição legal é real: o acesso não autorizado a um sistema de computador é um crime, de acordo com leis como a Lei de Fraude e Abuso de Computadores dos EUA e a Lei de Uso Indevido de Computadores do Reino Unido. Se você deseja construir uma carreira com base nessas habilidades, siga um caminho reconhecido — um certificação de segurança Além disso, você terá um laboratório próprio, em vez de um servidor de terceiros.

